<SEC-DOCUMENT>0000851205-24-000051.txt : 20240502
<SEC-HEADER>0000851205-24-000051.hdr.sgml : 20240502
<ACCEPTANCE-DATETIME>20240502062204
ACCESSION NUMBER:		0000851205-24-000051
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		104
CONFORMED PERIOD OF REPORT:	20240331
FILED AS OF DATE:		20240502
DATE AS OF CHANGE:		20240502

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			COGNEX CORP
		CENTRAL INDEX KEY:			0000851205
		STANDARD INDUSTRIAL CLASSIFICATION:	INDUSTRIAL INSTRUMENTS FOR MEASUREMENT, DISPLAY, AND CONTROL [3823]
		ORGANIZATION NAME:           	08 Industrial Applications and Services
		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:		24905078

	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
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>cgnx-20240331.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2024 Workiva-->
<!--r:dfad6519-e7c9-43ce-99d4-1de89517fce0,g:98c12c7f-ecb7-4934-b1a1-7d9003090dce,d:0d145b20bee04e9d835eeadbe3048af4-->
<html xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:currency="http://xbrl.sec.gov/currency/2023" xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:cgnx="http://www.cognex.com/20240331" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns="http://www.w3.org/1999/xhtml" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:ecd="http://xbrl.sec.gov/ecd/2023" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>cgnx-20240331</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="c-1" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="f-24">March 31, 2024</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:EntityCentralIndexKey" id="f-25">0000851205</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:CurrentFiscalYearEndDate" id="f-26">--12-31</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentFiscalYearFocus" id="f-27">2024</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentFiscalPeriodFocus" id="f-28">Q1</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:AmendmentFlag" format="ixt:fixed-false" id="f-29">false</ix:nonNumeric><ix:nonNumeric contextRef="c-136" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="f-738">P4Y</ix:nonNumeric><ix:nonNumeric contextRef="c-139" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="f-741">P3Y</ix:nonNumeric><ix:nonNumeric contextRef="c-139" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="f-743">P3Y</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="cgnx-20240331.xsd"/></ix:references><ix:resources><xbrli:context id="c-1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="c-3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="usdPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:context id="c-4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-04-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-10"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-11"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-12"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-13"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-14"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-16"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-18"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-19"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-20"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-21"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-22"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-23"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-24"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-25"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-26"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-27"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-28"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-29"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-02</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-32"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-33"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-34"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-35"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-36"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-37"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-38"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-40"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-41"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-42"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-43"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-45"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-46"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-48"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-49"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-50"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-51"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-52"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-53"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-54"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-55"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-56"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-58"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-59"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-60"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-61"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-62"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-63"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-64"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-65"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-66"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-67"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-68"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-69"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-70"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-71"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-72"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-73"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-74"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-75"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-76"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-77"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-78"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-79"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-80"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-81"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-82"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-83"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="lease_component"><xbrli:measure>cgnx:lease_component</xbrli:measure></xbrli:unit><xbrli:context id="c-84"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A88000SquareFootPremisesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="sqft"><xbrli:measure>utr:sqft</xbrli:measure></xbrli:unit><xbrli:context id="c-85"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A27000SquareFootPremisesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-86"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A27000SquareFootPremisesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-87"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A27000SquareFootPremisesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="c-88"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:CustomerContractsAndRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-89"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-90"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-91"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-92"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:CustomerContractsAndRelationshipsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-93"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-94"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-95"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-96"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-97"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-98"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SGD</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="sgd"><xbrli:measure>iso4217:SGD</xbrli:measure></xbrli:unit><xbrli:context id="c-99"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SGD</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-100"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="eur"><xbrli:measure>iso4217:EUR</xbrli:measure></xbrli:unit><xbrli:context id="c-101"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-102"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:MXN</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="mxn"><xbrli:measure>iso4217:MXN</xbrli:measure></xbrli:unit><xbrli:context id="c-103"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:MXN</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-104"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="cny"><xbrli:measure>iso4217:CNY</xbrli:measure></xbrli:unit><xbrli:context id="c-105"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-106"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:HUF</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="huf"><xbrli:measure>iso4217:HUF</xbrli:measure></xbrli:unit><xbrli:context id="c-107"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:HUF</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-108"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:GBP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="gbp"><xbrli:measure>iso4217:GBP</xbrli:measure></xbrli:unit><xbrli:context id="c-109"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:GBP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-110"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:JPY</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="jpy"><xbrli:measure>iso4217:JPY</xbrli:measure></xbrli:unit><xbrli:context id="c-111"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:JPY</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-112"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CHF</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="chf"><xbrli:measure>iso4217:CHF</xbrli:measure></xbrli:unit><xbrli:context id="c-113"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CHF</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-114"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="cad"><xbrli:measure>iso4217:CAD</xbrli:measure></xbrli:unit><xbrli:context id="c-115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-117"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-118"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-119"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-120"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-121"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-122"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-123"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-125"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-126"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-127"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-128"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-129"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-130"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-05-03</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-132"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2021And2007StockOptionAndIncentivePlansMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-05-03</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-133"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-04</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-134"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-135"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-136"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:GeneralStockOptionPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-137"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:GeneralStockOptionPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-138"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-139"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-140"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-141"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-142"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-143"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-144"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-145"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-146"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-147"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-148"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="group"><xbrli:measure>cgnx:group</xbrli:measure></xbrli:unit><xbrli:context id="c-149"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-150"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-151"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-152"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-153"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-154"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-155"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-03-03</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-156"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-157"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-158"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-159"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:RevenueCommissionersIrelandMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-160"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:StateAdministrationOfTaxationChinaMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-161"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">country:JP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-162"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">country:KP</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-163"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-164"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-165"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-166"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-167"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-168"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-04-02</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-169"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-170"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:MoritexCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-10-18</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-171"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:MoritexCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-10-18</xbrli:startDate><xbrli:endDate>2023-10-18</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-172"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:MoritexCorporationMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-173"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-05-02</xbrli:startDate><xbrli:endDate>2024-05-02</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i0d145b20bee04e9d835eeadbe3048af4_1"></div><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:4pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.222%"><tr><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/></tr><tr style="height:3pt"><td colspan="15" style="border-bottom:3pt double #000000;padding:0 1pt"/></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">WASHINGTON, D.C. 20549</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:22pt;font-weight:700;line-height:120%">FORM <ix:nonNumeric contextRef="c-1" name="dei:DocumentType" id="f-1">10-Q</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:22pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(Mark One)</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 style="width:8.124%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.676%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:DocumentQuarterlyReport" format="ixt-sec:boolballotbox" id="f-2">&#9746;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Quarterly Report pursuant to Section&#160;13 or 15(d) of the Securities Exchange Act of 1934 for the quarterly period ended March&#160;31, 2024 or</span></div></td></tr></table></div><div><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 style="width:8.124%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:89.676%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" id="f-3">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transition Report pursuant to Section&#160;13 or 15(d) of the Securities Exchange Act of 1934 for the transition period from __________ to __________</span></td></tr></table></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9.5pt;font-weight:700;line-height:120%">Commission File Number <ix:nonNumeric contextRef="c-1" name="dei:EntityFileNumber" id="f-4">001-34218</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:17pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityRegistrantName" id="f-5">COGNEX CORP</ix:nonNumeric>ORATION</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:323.25pt"><tr><td style="width:1.0pt"/><td style="width:321.25pt"/><td style="width:1.0pt"/></tr><tr style="height:11pt"><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:400;line-height:100%">(Exact name of registrant as specified in its charter)</span></td></tr></table></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:63.304%"><tr><td style="width:1.0%"/><td style="width:47.629%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.340%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:47.631%"/><td style="width:0.1%"/></tr><tr><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%"><ix:nonNumeric contextRef="c-1" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="f-6">Massachusetts</ix:nonNumeric></span></td><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:400;line-height:100%">&#160;</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:9pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityTaxIdentificationNumber" id="f-7">04-2713778</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-top:0.5pt 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:400;line-height:100%">(State or other jurisdiction of<br/>incorporation or organization)</span></td><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:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:0.5pt 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:400;line-height:100%">(I.R.S. Employer<br/>Identification No.)</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressAddressLine1" id="f-8">One Vision Drive</ix:nonNumeric> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressCityOrTown" id="f-9">Natick</ix:nonNumeric>, <ix:nonNumeric contextRef="c-1" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" id="f-10">Massachusetts</ix:nonNumeric> <ix:nonNumeric contextRef="c-1" name="dei:EntityAddressPostalZipCode" id="f-11">01760</ix:nonNumeric>-2059</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(<ix:nonNumeric contextRef="c-1" name="dei:CityAreaCode" id="f-12">508</ix:nonNumeric>) <ix:nonNumeric contextRef="c-1" name="dei:LocalPhoneNumber" id="f-13">650-3000</ix:nonNumeric> </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:462.75pt"><tr><td style="width:1.0pt"/><td style="width:460.75pt"/><td style="width:1.0pt"/></tr><tr style="height:14pt"><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:8pt;font-weight:400;line-height:100%">(Address, including zip code, and telephone number, including area code, of principal executive offices)</span></td></tr></table></div><div style="padding-left:13.5pt;text-indent:9pt"><span><br/></span></div><div style="padding-left:13.5pt;text-indent:9pt"><span><br/></span></div><div style="padding-left:13.5pt;text-indent:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Securities registered pursuant to Section 12(b) of the Act:</span></div><div style="margin-top:5pt;padding-left:13.5pt;text-indent:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.736%"><tr><td style="width:1.0%"/><td style="width:37.017%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:19.424%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:40.259%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Title of each class</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:8pt;font-weight:400;line-height:100%">Trading Symbol(s)</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:8pt;font-weight:400;line-height:100%">Name of each exchange on which registered</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:Security12bTitle" id="f-14">Common Stock, par value $.002 per share</ix:nonNumeric></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:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:TradingSymbol" id="f-15">CGNX</ix:nonNumeric></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:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="f-16">The NASDAQ Stock Market LLC</ix:nonNumeric></span></td></tr></table></div><div style="text-indent:24.75pt"><span><br/></span></div><div style="text-indent:24.75pt"><span><br/></span></div><div style="text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1)&#160;has filed all reports required to be filed by Section&#160;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)&#160;has been subject to such filing requirements for the past 90 days.&#160;&#160;</span></div><div style="margin-top:5pt;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:497.25pt"><tr><td style="width:1.0pt"/><td style="width:111.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:30.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:33.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:55.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:21.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:33.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.75pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:9.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:85.00pt"/><td style="width:1.0pt"/></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><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%"><ix:nonNumeric contextRef="c-1" name="dei:EntityCurrentReportingStatus" id="f-17">Yes</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9746;</span></td><td colspan="3" style="padding:0 1pt"/><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%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><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%">No</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:0 1pt"/><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%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/></tr></table></div><div style="text-indent:24.75pt"><span><br/></span></div><div style="text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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 (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</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:482.25pt"><tr><td style="width:1.0pt"/><td style="width:96.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:30.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:33.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:55.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:21.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:33.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.75pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:9.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:85.00pt"/><td style="width:1.0pt"/></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><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%"><ix:nonNumeric contextRef="c-1" name="dei:EntityInteractiveDataCurrent" id="f-18">Yes</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9746;</span></td><td colspan="3" style="padding:0 1pt"/><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%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><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%">No</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:0 1pt"/><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%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/></tr></table></div><div style="text-indent:24.75pt"><span><br/></span></div><div style="text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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 &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and "emerging growth company" in Rule 12b-2 of the Exchange Act (Check one):</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:442.50pt"><tr><td style="width:1.0pt"/><td style="width:121.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:12.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:12.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:12.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:6.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:199.75pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.75pt"/><td style="width:1.0pt"/></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="f-19">Large accelerated filer</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9746;</span></td><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%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accelerated&#160;filer</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-accelerated filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td><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%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Smaller&#160;reporting&#160;company</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntitySmallBusiness" format="ixt:fixed-false" id="f-20">&#9744;</ix:nonNumeric></span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Emerging growth company</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityEmergingGrowthCompany" format="ixt:fixed-false" id="f-21">&#9744;</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-indent:22.5pt"><span><br/></span></div><div style="text-indent:22.5pt"><span><br/></span></div><div style="text-indent:22.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:112%">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.</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:112%"> </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:112%">&#9744;</span></div><div style="margin-top:6pt;text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).&#160;&#160;&#160;&#160; </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:482.25pt"><tr><td style="width:1.0pt"/><td style="width:96.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:30.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:33.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:55.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:10.00pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:21.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:33.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:31.75pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:9.25pt"/><td style="width:1.0pt"/><td style="width:1.0pt"/><td style="width:85.00pt"/><td style="width:1.0pt"/></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Yes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityShellCompany" format="ixt-sec:boolballotbox" id="f-22">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">No</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9746;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;&#160;</span></td><td colspan="3" style="padding:0 1pt"/></tr></table></div><div style="margin-top:1pt;text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">As of March&#160;31, 2024, there were <ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-23">171,662,056</ix:nonFraction> shares of Common Stock, $.002 par value per share, of the registrant outstanding.</span></div><div style="margin-top:11pt;text-align:center;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.222%"><tr><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.900%"/><td style="width:0.1%"/></tr><tr style="height:3pt"><td colspan="15" style="border-bottom:3pt double #000000;padding:0 1pt"/></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_7"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">INDEX</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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 style="width:8.416%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:83.673%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:4.611%"/><td style="width:0.1%"/></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%">PART&#160;I</span></td><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%">FINANCIAL INFORMATION</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_10">3</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_10">Item&#160;1.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_10">Financial Statements (interim periods unaudited)</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_10">3</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13">Consolidated Statements of Operations for the </a>three-month periods ended<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> </a>March&#160;31, 2024<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> and </a>April&#160;2, 2023</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13">3</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_16">Consolidated Statements of Comprehensive Income</a><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_16"> (Loss)</a><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_16"> </a>for the three-month periods ended<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> </a>March&#160;31, 2024<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> and </a>April&#160;2, 2023</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_16">4</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_22">Consolidated Balance Sheets as of</a><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_22"> </a>March&#160;31, 2024<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_22"> and </a>December&#160;31, 2023</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_22">5</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_28">Consolidated Statements of Cash Flows for the </a>three-month periods ended<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_28"> </a>March&#160;31, 2024<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> and </a>April&#160;2, 2023</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_28">6</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_31">Consolidated Statements of Shareholders&#8217; Equity </a>for the three-month periods ended<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> </a>March&#160;31, 2024<a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_13"> and </a>April&#160;2, 2023</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_31">7</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_37">Notes to Consolidated Financial Statements</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_37">8</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_100">Item&#160;2.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_100">Management's Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_100">24</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_103">Item&#160;3.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_103">Quantitative and Qualitative Disclosures About Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_103">29</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_106">Item&#160;4.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_106">Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_106">29</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_109">PART&#160;II</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_109">OTHER INFORMATION</a></span></div></td><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_112">Item&#160;1.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_112">Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_112">30</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_115">Item&#160;1A.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_115">Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_115">30</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_118">Item&#160;2.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_118">Unregistered Sales of Equity Securities and Use of Proceeds</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_118">30</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_121">Item&#160;3.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_121">Defaults Upon Senior Securities</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_121">30</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_124">Item&#160;4.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_124">Mine Safety Disclosures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_124">30</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_127">Item&#160;5.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_127">Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_127">30</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_130">Item&#160;6.</a></span></div></td><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_130">Exhibits</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_130">31</a></span></div></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_133">Signatures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i0d145b20bee04e9d835eeadbe3048af4_133">32</a></span></div></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_10"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART I: FINANCIAL INFORMATION</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM 1: FINANCIAL STATEMENTS</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_13"></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF OPERATIONS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands, except per share amounts)</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><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 style="width:70.181%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.891%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.892%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:400;line-height:100%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</span></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:8pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-30">210,797</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span 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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-31">201,124</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of revenue</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-32">68,860</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-33">57,384</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-34">141,937</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-35">143,740</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research, development, and engineering expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-36">37,105</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ResearchAndDevelopmentExpense" format="ixt:num-dot-decimal" scale="3" id="f-37">38,542</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general, and administrative expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-38">90,628</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-39">83,037</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Operating income</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-40">14,204</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-41">22,161</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><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="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-42">46</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ForeignCurrencyTransactionGainLossBeforeTax" scale="3" id="f-43">394</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Investment income</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InvestmentIncomeNonoperating" format="ixt:num-dot-decimal" scale="3" id="f-44">3,120</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:InvestmentIncomeNonoperating" format="ixt:num-dot-decimal" scale="3" id="f-45">3,587</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other income (expense)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="f-46">196</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="f-47">73</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income tax expense</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-48">17,566</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-49">26,215</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="f-50">5,544</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-51">600</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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 #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-52">12,022</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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 #000000;padding:2px 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-53">25,615</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" 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%">Net income per weighted-average common and common-equivalent share:</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-54">0.07</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-3" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-55">0.15</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-56">0.07</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span 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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-3" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-57">0.15</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="12" 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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-58">171,692</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-3" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-59">172,624</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-60">172,594</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-3" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-61">173,903</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash dividends per common share</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><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:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="INF" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" id="f-62">0.075</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:middle"><span 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 0;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-3" decimals="INF" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" id="f-63">0.070</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">3</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_16"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME (LOSS)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands)</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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 style="width:70.391%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.791%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:400;line-height:100%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</span></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:8pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 income</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: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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-64">12,022</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-65">25,615</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 comprehensive income (loss), net of tax:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Available-for-sale investments:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net unrealized gain (loss), net of tax of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="3" id="f-66">117</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" format="ixt:num-dot-decimal" scale="3" id="f-67">1,858</ix:nonFraction> in the three-month periods, respectively</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="3" id="f-68">359</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-69">5,426</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations</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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" scale="3" id="f-70">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" format="ixt:fixed-zero" scale="3" id="f-71">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 change related to available-for-sale investments</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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-72">357</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-73">5,426</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 currency translation adjustments:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Foreign currency translation adjustments</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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-74">16,156</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3" id="f-75">359</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 change related to foreign currency translation adjustments</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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-76">16,156</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-77">359</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Other comprehensive income (loss), net of tax</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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-78">15,799</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" format="ixt:num-dot-decimal" scale="3" id="f-79">5,067</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Total comprehensive income (loss)</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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-80">3,777</ix:nonFraction>)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-81">30,682</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:7pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="margin-top:12pt;text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">4</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_22"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONSOLIDATED BALANCE SHEETS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(In thousands)</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</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 style="width:62.496%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.882%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.592%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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, 2023</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:9pt;font-weight:400;line-height:100%">&#160;</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%">(unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;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%">&#160;</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:9pt;font-weight:700;line-height:100%">ASSETS</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Current assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Cash and cash equivalents</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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-82">138,859</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-83">202,655</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current investments, amortized cost of $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent" format="ixt:num-dot-decimal" scale="3" id="f-84">141,876</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent" format="ixt:num-dot-decimal" scale="3" id="f-85">132,799</ix:nonFraction> in 2024 and 2023, respectively, allowance for credit losses of $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" scale="3" id="f-86"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" scale="3" id="f-87">0</ix:nonFraction></ix:nonFraction> in 2024 and 2023</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-88">139,334</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-89">129,392</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable, allowance for credit losses of $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-90">1,339</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="f-91">583</ix:nonFraction> in 2024 and 2023, respectively</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-92">138,556</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-93">114,164</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Unbilled revenue</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:UnbilledReceivablesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-94">2,737</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:UnbilledReceivablesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-95">2,402</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Inventories</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-96">170,871</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-97">162,285</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-98">71,173</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-99">68,099</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current assets</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-100">661,530</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-101">678,997</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Non-current investments, amortized cost of $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-102">285,376</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-103">250,790</ix:nonFraction> in 2024 and 2023, respectively, allowance for credit losses of $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" scale="3" id="f-104"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" scale="3" id="f-105">0</ix:nonFraction></ix:nonFraction> in 2024 and 2023</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-106">278,426</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-107">244,230</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Property, plant, and equipment, net</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-108">104,111</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-109">105,849</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Operating lease assets</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="f-110">74,113</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="f-111">75,115</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Goodwill</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="f-112">386,157</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="f-113">393,181</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Intangible assets, net</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-114">105,054</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-115">112,952</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Deferred income taxes</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-116">397,563</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-117">400,400</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Other assets</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-118">6,279</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-119">7,088</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-120">2,013,233</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-121">2,017,812</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></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:9pt;font-weight:700;line-height:100%">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Accounts payable</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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-122">27,459</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-123">21,454</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Accrued expenses</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-124">70,429</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-125">72,374</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Accrued income taxes</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-126">40,433</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AccruedIncomeTaxesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-127">16,907</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Deferred revenue and customer deposits</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-128">39,983</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ContractWithCustomerLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-129">31,525</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Operating lease liabilities</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-130">9,798</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-131">9,624</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-132">188,102</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-133">151,884</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Non-current operating lease liabilities</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-134">67,367</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-135">68,977</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Deferred income taxes</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="f-136">239,538</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="f-137">246,877</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Reserve for income taxes</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilityForUncertainTaxPositionsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-138">28,144</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:LiabilityForUncertainTaxPositionsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-139">26,685</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Non-current accrued income taxes</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AccruedIncomeTaxes" format="ixt:fixed-zero" scale="3" id="f-140">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AccruedIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="f-141">18,338</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Other liabilities</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" scale="3" id="f-142">893</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" scale="3" id="f-143">299</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="f-144">524,044</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:Liabilities" format="ixt:num-dot-decimal" scale="3" id="f-145">513,060</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Commitments and contingencies (Note 10)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="c-2" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="f-146"/></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="c-4" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="f-147"/></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:9pt;font-weight:400;line-height:100%">Shareholders&#8217; equity:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Preferred stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="f-148"><ix:nonFraction unitRef="usdPerShare" contextRef="c-2" decimals="2" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="f-149">.01</ix:nonFraction></ix:nonFraction> par value &#8211; Authorized: <ix:nonFraction unitRef="shares" contextRef="c-4" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" scale="3" id="f-150"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" scale="3" id="f-151">400</ix:nonFraction></ix:nonFraction> shares in 2024 and 2023, respectively; <ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:fixed-zero" scale="3" id="f-152"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:fixed-zero" scale="3" id="f-153"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="3" id="f-154"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="3" id="f-155">no</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> shares issued and outstanding</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PreferredStockValueOutstanding" format="ixt:fixed-zero" scale="3" id="f-156">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:PreferredStockValueOutstanding" format="ixt:fixed-zero" scale="3" id="f-157">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Common stock, $<ix:nonFraction unitRef="usdPerShare" contextRef="c-2" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="f-158"><ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="f-159">.002</ix:nonFraction></ix:nonFraction> par value &#8211; Authorized: <ix:nonFraction unitRef="shares" contextRef="c-4" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="3" id="f-160"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="3" id="f-161">300,000</ix:nonFraction></ix:nonFraction> shares in 2024 and 2023, respectively; issued and outstanding: <ix:nonFraction unitRef="shares" contextRef="c-2" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-162"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="f-163">171,662</ix:nonFraction></ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-4" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="f-164"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="-3" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-165">171,599</ix:nonFraction></ix:nonFraction> shares in 2024 and 2023, respectively</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CommonStockValueOutstanding" scale="3" id="f-166">343</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CommonStockValueOutstanding" scale="3" id="f-167">343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Additional paid-in capital</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-168">1,047,643</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AdditionalPaidInCapitalCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-169">1,037,202</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Retained earnings</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="f-170">502,338</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="f-171">512,543</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss, net of tax</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-172">61,135</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-173">45,336</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total shareholders&#8217; equity</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-174">1,489,189</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-175">1,504,752</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities and shareholders' equity</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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-176">2,013,233</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-177">2,017,812</ix:nonFraction>&#160;</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"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">5</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_28"></div><hr style="page-break-after:always"/><div style="min-height:45pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF CASH FLOWS</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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:100.000%"><tr><td style="width:1.0%"/><td style="width:66.882%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.543%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.545%"/><td style="width:0.1%"/></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:400;line-height:100%">&#160;</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%">Three-months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" 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:9pt;font-weight:400;line-height:100%">April 2, 2023</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:9pt;font-weight:400;line-height:100%">&#160;</span></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:9pt;font-weight:700;line-height:100%">(unaudited)</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:9pt;font-weight:400;line-height:100%">Cash flows from operating activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Net income</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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-178">12,022</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-179">25,615</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Adjustments to reconcile net income to net cash provided by (used in) operating activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:StockOptionPlanExpense" format="ixt:num-dot-decimal" scale="3" id="f-180">13,302</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:StockOptionPlanExpense" format="ixt:num-dot-decimal" scale="3" id="f-181">16,579</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation of property, plant, and equipment</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="f-182">5,279</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:Depreciation" format="ixt:num-dot-decimal" scale="3" id="f-183">3,986</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of intangible assets</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" format="ixt:num-dot-decimal" scale="3" id="f-184">2,813</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AmortizationOfIntangibleAssets" scale="3" id="f-185">942</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Excess and obsolete inventory charges</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:ExcessAndObsoleteInventoryCharges" scale="3" id="f-186">471</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="cgnx:ExcessAndObsoleteInventoryCharges" scale="3" id="f-187">788</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Fair value adjustment on acquired inventories (Note 17)</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:FairValueAdjustmentOnAcquiredInventories" format="ixt:num-dot-decimal" scale="3" id="f-188">1,224</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="cgnx:FairValueAdjustmentOnAcquiredInventories" format="ixt:fixed-zero" scale="3" id="f-189">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of discounts or premiums on investments</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments" scale="3" id="f-190">306</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments" scale="3" id="f-191">700</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Realized (gain) loss on sale of investments</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GainLossOnSaleOfInvestments" scale="3" id="f-192">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:GainLossOnSaleOfInvestments" format="ixt:fixed-zero" scale="3" id="f-193">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Change in deferred income taxes</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="f-194">3,333</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" format="ixt:num-dot-decimal" scale="3" id="f-195">10,656</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Change in operating assets and liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-196">25,669</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-197">18,455</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Unbilled revenue</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="3" id="f-198">347</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInContractWithCustomerLiability" scale="3" id="f-199">173</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-200">10,938</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-201">5,338</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" format="ixt:num-dot-decimal" scale="3" id="f-202">3,395</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="f-203">231</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayable" format="ixt:num-dot-decimal" scale="3" id="f-204">7,398</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayable" scale="3" id="f-205">192</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued expenses</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" scale="3" id="f-206">470</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-207">9,942</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued income taxes</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInAccruedTaxesPayable" format="ixt:num-dot-decimal" scale="3" id="f-208">5,258</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncreaseDecreaseInAccruedTaxesPayable" format="ixt:num-dot-decimal" scale="3" id="f-209">4,721</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred revenue and customer deposits</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInDeferredRevenue" format="ixt:num-dot-decimal" scale="3" id="f-210">8,737</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncreaseDecreaseInDeferredRevenue" format="ixt:num-dot-decimal" scale="3" id="f-211">17,003</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 48.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" scale="3" id="f-212">987</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" format="ixt:num-dot-decimal" scale="3" id="f-213">1,744</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net cash provided by (used in) operating activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="f-214">13,643</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="f-215">27,553</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Cash flows from investing activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Purchases of investments</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquireInvestments" format="ixt:num-dot-decimal" scale="3" id="f-216">233,726</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PaymentsToAcquireInvestments" format="ixt:num-dot-decimal" scale="3" id="f-217">46,480</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Maturities and sales of investments</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:num-dot-decimal" scale="3" id="f-218">189,758</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:num-dot-decimal" scale="3" id="f-219">46,199</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Purchases of property, plant, and equipment</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-220">4,061</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-221">5,507</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net payments related to business acquisitions (Note 17)</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" scale="3" id="f-222">994</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired" format="ixt:fixed-zero" scale="3" id="f-223">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Net cash provided by (used in) investing activities</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="f-224">49,023</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="f-225">5,788</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Cash flows from financing activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Net payments from issuance of common stock under stock plans</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="cgnx:ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" format="ixt:num-dot-decimal" scale="3" id="f-226">2,861</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="cgnx:ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" format="ixt:num-dot-decimal" scale="3" id="f-227">3,055</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Repurchase of common stock</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-228">9,339</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PaymentsForRepurchaseOfCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-229">24,178</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Payment of dividends</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-230">12,888</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:PaymentsOfDividendsCommonStock" format="ixt:num-dot-decimal" scale="3" id="f-231">12,091</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Net cash provided by (used in) financing activities</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="f-232">25,088</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="f-233">39,324</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Effect of foreign exchange rate changes on cash and cash equivalents</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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-234">3,328</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="f-235">356</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net change in 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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-236">63,796</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-237">17,203</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Cash and cash equivalents at beginning of 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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-238">202,655</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-239">181,374</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Cash and cash equivalents at end of period</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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-240">138,859</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-241">164,171</ix:nonFraction>&#160;</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"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these consolidated financial statements.</span></div><div style="height:40.5pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">6</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_31"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CONSOLIDATED STATEMENTS OF SHAREHOLDERS&#8217; EQUITY</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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 style="width:28.944%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.883%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.178%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.767%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.472%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.480%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.896%"/><td style="width:0.1%"/></tr><tr style="height:20pt"><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:400;line-height:100%">&#160;</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%">Common Stock</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Additional<br/>Paid-in Capital</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Retained Earnings</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>Loss</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Total<br/>Shareholders&#8217;<br/>Equity</span></td></tr><tr style="height:20pt"><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:400;line-height:100%">&#160;</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%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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%">Par&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Balance as of December&#160;31, 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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-7" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="f-242">171,599</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-7" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="f-243">343</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-8" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-244">1,037,202</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-245">512,543</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-246">45,336</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-247">1,504,752</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net issuance of common stock under stock plans</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-11" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" scale="3" id="f-248">294</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:fixed-zero" scale="3" id="f-249">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-12" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="f-250">2,861</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="f-251">2,861</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Repurchase of common stock</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="c-11" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodShares" scale="3" id="f-252">231</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:fixed-zero" scale="3" id="f-253">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-13" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:num-dot-decimal" scale="3" id="f-254">9,339</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:num-dot-decimal" scale="3" id="f-255">9,339</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-12" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-256">13,302</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-257">13,302</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Payment of dividends ($<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="3" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" id="f-258">0.075</ix:nonFraction> per common share)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-13" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="f-259">12,888</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="f-260">12,888</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net income</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-13" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-261">12,022</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-262">12,022</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net unrealized gain (loss) on available-for-sale investments, net of tax of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" scale="3" id="f-263">117</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-14" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="3" id="f-264">359</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" scale="3" id="f-265">359</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-14" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" scale="3" id="f-266">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" scale="3" id="f-267">2</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-14" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-268">16,156</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-269">16,156</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Balance as of March&#160;31, 2024 (unaudited)</span></div></td><td colspan="2" style="background-color:#ffffff;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-15" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="f-270">171,662</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-15" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="f-271">343</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-16" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-272">1,047,643</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-17" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-273">502,338</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-18" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-274">61,135</ix:nonFraction>)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-275">1,489,189</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div><div style="margin-top:5pt;text-align:center"><span><br/></span></div><div style="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 style="width:29.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.818%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.110%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.402%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.373%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.797%"/><td style="width:0.1%"/></tr><tr style="height:27pt"><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:400;line-height:100%">&#160;</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%">Common Stock</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Additional<br/>Paid-in Capital</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Retained Earnings</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Accumulated<br/>Other<br/>Comprehensive<br/>Loss</span></td><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">Total<br/>Shareholders&#8217;<br/>Equity</span></td></tr><tr style="height:12pt"><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:400;line-height:100%">&#160;</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%">Shares</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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%">Par&#160;Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></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:9pt;font-weight:400;line-height:100%">Balance as of December&#160;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-19" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="f-276">172,631</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-19" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="f-277">345</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-20" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-278">979,167</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-21" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-279">528,179</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-280">69,297</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-281">1,438,394</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net issuance of common stock under stock plans</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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-23" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" scale="3" id="f-282">449</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-23" decimals="-3" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" scale="3" id="f-283">1</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-24" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="f-284">3,056</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised" format="ixt:num-dot-decimal" scale="3" id="f-285">3,055</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Repurchase of common stock</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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="shares" contextRef="c-23" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodShares" scale="3" id="f-286">479</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-23" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" scale="3" id="f-287">1</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-25" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:num-dot-decimal" scale="3" id="f-288">24,177</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:StockRepurchasedDuringPeriodValue" format="ixt:num-dot-decimal" scale="3" id="f-289">24,178</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Stock-based compensation expense</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-24" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-290">16,579</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-291">16,579</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Payment of dividends ($<ix:nonFraction unitRef="usdPerShare" contextRef="c-3" decimals="3" name="us-gaap:CommonStockDividendsPerShareCashPaid" scale="0" id="f-292">0.070</ix:nonFraction> per common share)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-25" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="f-293">12,091</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:DividendsCash" format="ixt:num-dot-decimal" scale="3" id="f-294">12,091</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Net income</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-25" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-295">25,615</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-296">25,615</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:11.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net unrealized gain (loss) on available-for-sale investments, net of tax of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" format="ixt:num-dot-decimal" scale="3" id="f-297">1,858</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-26" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-298">5,426</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-299">5,426</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Foreign currency translation adjustment</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:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-26" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3" id="f-300">359</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" scale="3" id="f-301">359</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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:9pt;font-weight:400;line-height:100%">Balance as of April&#160;2, 2023 (unaudited)</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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-27" decimals="-3" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="3" id="f-302">172,601</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-27" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="f-303">345</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-28" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-304">992,690</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-29" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-305">517,526</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-30" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-306">64,230</ix:nonFraction>)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-307">1,446,331</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying notes are an integral part of these consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">7</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_37"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div style="text-align:center"><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_40"></div><div style="margin-top:6pt;text-align:justify"><span><br/></span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 1: <ix:nonNumeric contextRef="c-1" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="f-308" continuedAt="f-308-1" escape="true">Summary of Significant Accounting Policies</ix:nonNumeric></span></div><ix:continuation id="f-308-1"><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&#8217;s Annual Report on Form 10-K for the year ended December&#160;31, 2023 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, and financial statement reclassifications necessary to present fairly the Company&#8217;s financial position as of March&#160;31, 2024, and the results of its operations for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, and changes in shareholders&#8217; 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 periods ended March&#160;31, 2024 are not necessarily indicative of the results to be expected for the full year.</span></div></ix:continuation><div id="i0d145b20bee04e9d835eeadbe3048af4_43"></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 2: <ix:nonNumeric contextRef="c-1" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="f-310" continuedAt="f-310-1" escape="true"><ix:nonNumeric contextRef="c-1" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="f-309" continuedAt="f-309-1" escape="true">New Pronouncements</ix:nonNumeric></ix:nonNumeric></span></div><ix:continuation id="f-310-1"><ix:continuation id="f-309-1"><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) 2023-09, "Income Taxes (Topic 740): Improvements to Income Tax Disclosures"</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 amendments in this ASU apply to all entities that are subject to Topic 740, Income Taxes. The amendments require public business entities to disclose specific categories in their rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. They also require all entities to disclose income taxes paid, net of refunds received, disaggregated by federal, state, and foreign taxes and by individual jurisdictions in which income taxes paid, net of refunds received, is equal to or greater than five percent of total income taxes paid. For public business entities, the amendments in this ASU are effective for annual periods beginning after December 15, 2024. The amendments in this ASU should be applied on a prospective basis. Management does not expect ASU 2023-09 to have a material impact on the Company's financial statements and disclosures.</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%;text-decoration:underline">Accounting Standards Update (ASU) 2023-07, "Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures"</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 amendments in this ASU apply to all public entities, including public entities with a single reportable segment, that are required to report segment information in accordance with Topic 280, Segment Reporting. The amendments require public business entities to provide in interim and annual periods one or more measures of segment profit or loss used by the chief operating decision maker to allocate resources and assess performance. Additionally, the amendments require disclosure of significant segment expenses and other segment items, as well as incremental qualitative disclosures. The amendments in this ASU are effective for fiscal years beginning after December 15, 2023 and interim periods with fiscal years beginning after December 15, 2024. The amendments in the ASU should be applied on a retrospective basis. We did not early adopt ASU 2023-07. Management does not expect ASU 2023-07 to have a material impact on the Company's financial statements and disclosures.</span></div></ix:continuation></ix:continuation><div style="margin-top:6pt;text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">8</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_46"></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 3: <ix:nonNumeric contextRef="c-1" name="us-gaap:FairValueDisclosuresTextBlock" id="f-311" continuedAt="f-311-1" escape="true">Fair Value Measurements</ix:nonNumeric></span></div><ix:continuation id="f-311-1"><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><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" id="f-312" escape="true"><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 March&#160;31, 2024 (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 style="width:49.998%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.714%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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&#160;Prices&#160;in<br/>Active Markets<br/>for Identical<br/>Assets (Level 1)</span></td><td colspan="3" style="padding:0 1pt"/><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 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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-31" decimals="-3" name="us-gaap:MoneyMarketFundsAtCarryingValue" scale="3" id="f-313">667</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-32" decimals="-3" name="us-gaap:MoneyMarketFundsAtCarryingValue" format="ixt:fixed-zero" scale="3" id="f-314">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-33" decimals="-3" name="us-gaap:MoneyMarketFundsAtCarryingValue" format="ixt:fixed-zero" scale="3" id="f-315">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-34" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-316">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-35" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-317">353,745</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-36" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-318">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-37" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-319">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-38" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-320">45,053</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-39" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-321">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-40" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-322">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-41" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-323">16,995</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-42" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-324">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Certificate of 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%"><ix:nonFraction unitRef="usd" contextRef="c-31" decimals="-3" name="cgnx:CertificateOfDepositFairValueDisclosure" format="ixt:fixed-zero" scale="0" id="f-325">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-32" decimals="-3" name="cgnx:CertificateOfDepositFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="f-326">6,429</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-33" decimals="-3" name="cgnx:CertificateOfDepositFairValueDisclosure" format="ixt:fixed-zero" scale="0" id="f-327">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Treasury bills</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%"><ix:nonFraction unitRef="usd" contextRef="c-43" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="f-328">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-44" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:num-dot-decimal" scale="3" id="f-329">3,499</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-45" decimals="-3" name="us-gaap:CashAndCashEquivalentsFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="f-330">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-46" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-331">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-47" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-332">1,967</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-48" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:fixed-zero" scale="3" id="f-333">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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%">Economic hedge forward contracts</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%"><ix:nonFraction unitRef="usd" contextRef="c-31" decimals="-3" name="us-gaap:ForeignCurrencyContractAssetFairValueDisclosure" format="ixt:fixed-zero" scale="0" id="f-334">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-32" decimals="-3" name="us-gaap:ForeignCurrencyContractAssetFairValueDisclosure" scale="3" id="f-335">22</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-33" decimals="-3" name="us-gaap:ForeignCurrencyContractAssetFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="f-336">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Economic hedge forward contracts</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%"><ix:nonFraction unitRef="usd" contextRef="c-31" decimals="-3" name="us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="f-337">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-32" decimals="-3" name="us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure" scale="3" id="f-338">221</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-33" decimals="-3" name="us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure" format="ixt:fixed-zero" scale="3" id="f-339">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><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&#8217;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&#8217;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 periods ended March&#160;31, 2024 or April&#160;2, 2023.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">9</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_49"></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 4: <ix:nonNumeric contextRef="c-1" name="us-gaap:CashAndCashEquivalentsDisclosureTextBlock" id="f-340" continuedAt="f-340-1" escape="true">Cash, Cash Equivalents, and Investments</ix:nonNumeric></span></div><ix:continuation id="f-340-1" continuedAt="f-340-2"><ix:nonNumeric contextRef="c-1" name="cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" id="f-341" escape="true"><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 style="width:61.911%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.028%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.031%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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, 2023</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-49" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-342">128,264</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-50" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-343">183,242</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Certificate of 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:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-344">6,429</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-52" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:fixed-zero" scale="3" id="f-345">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Treasury bills</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%"><ix:nonFraction unitRef="usd" contextRef="c-53" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-346">3,499</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-54" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:fixed-zero" scale="3" id="f-347">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-55" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="3" id="f-348">667</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-56" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-349">19,413</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 #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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-350">138,859</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-351">202,655</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-352">134,032</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-353">124,851</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-354">4,309</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-355">3,551</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-61" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="3" id="f-356">993</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-62" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" scale="3" id="f-357">990</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-358">139,334</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-359">129,392</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-360">219,713</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-361">183,965</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Treasury notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-362">45,053</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-363">43,523</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-364">12,686</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-365">15,763</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-61" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" scale="3" id="f-366">974</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-62" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" scale="3" id="f-367">979</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Non-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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-368">278,426</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:LongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-369">244,230</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:CashCashEquivalentsShortTermAndLongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-370">556,619</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:400;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:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="cgnx:CashCashEquivalentsShortTermAndLongTermInvestments" format="ixt:num-dot-decimal" scale="3" id="f-371">576,277</ix:nonFraction>&#160;</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"/></tr></table></div></ix:nonNumeric><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; sovereign bonds consist of direct debt issued by foreign governments; and treasury notes consist of debt securities issued by the U.S. government. All of the Company's securities as of March&#160;31, 2024 and December&#160;31, 2023 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 $<ix:nonFraction unitRef="usd" contextRef="c-65" decimals="-3" name="us-gaap:InterestReceivable" format="ixt:num-dot-decimal" scale="0" id="f-372">4,119,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-66" decimals="-3" name="us-gaap:InterestReceivable" format="ixt:num-dot-decimal" scale="0" id="f-373">3,169,000</ix:nonFraction> as of March&#160;31, 2024 and December&#160;31, 2023, respectively.</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" id="f-374" continuedAt="f-374-1" escape="true"><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&#8217;s available-for-sale investments as of March&#160;31, 2024 (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 style="width:42.741%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.536%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.243%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.389%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.392%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 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 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 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&#160;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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-67" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-375">136,479</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-67" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-376">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-67" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-377">2,447</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-67" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-378">134,032</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-68" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-379">4,391</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-68" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-380">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-68" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-381">82</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-68" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-382">4,309</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-69" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-383">1,006</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-69" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-384">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-69" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-385">13</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-69" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="3" id="f-386">993</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Non-current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-70" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-387">225,074</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-70" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="3" id="f-388">175</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-70" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-389">5,536</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-70" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-390">219,713</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Treasury notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-71" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-391">45,760</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-71" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-392">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-71" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-393">707</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-71" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-394">45,053</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-72" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-395">13,512</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-72" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-396">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-72" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-397">826</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-72" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-398">12,686</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-73" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-399">1,030</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-73" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-400">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-73" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-401">56</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-73" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="3" id="f-402">974</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-403">427,252</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="3" id="f-404">175</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-405">9,667</ix:nonFraction>)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-406">417,760</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-340-2" continuedAt="f-340-3"><ix:continuation id="f-374-1"><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&#8217;s available-for-sale investments as of December&#160;31, 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 style="width:42.741%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.536%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.243%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.389%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.392%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 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 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 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&#160;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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-74" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-407">128,150</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-74" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-408">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-74" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-409">3,299</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-74" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-410">124,851</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-75" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-411">3,637</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-75" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-412">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-75" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-413">86</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-75" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-414">3,551</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-76" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-415">1,012</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-76" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-416">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-76" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-417">22</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-76" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="3" id="f-418">990</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Non-current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-77" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-419">189,326</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-77" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="3" id="f-420">506</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-77" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-421">5,867</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-77" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-422">183,965</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Treasury notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-78" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-423">43,654</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-78" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="3" id="f-424">82</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-78" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-425">213</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-78" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-426">43,523</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-79" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-427">16,773</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-79" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-428">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-79" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-429">1,010</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-79" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-430">15,763</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-431">1,037</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" format="ixt:fixed-zero" scale="3" id="f-432">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" scale="3" id="f-433">58</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" scale="3" id="f-434">979</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis" format="ixt:num-dot-decimal" scale="3" id="f-435">383,589</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" scale="3" id="f-436">588</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" format="ixt:num-dot-decimal" scale="3" id="f-437">10,555</ix:nonFraction>)</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-438">373,622</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:continuation><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" id="f-439" escape="true"><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&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of March&#160;31, 2024 (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 style="width:30.711%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.654%"/><td style="width:0.1%"/></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%">&#160;</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 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%">&#160;</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%">&#160;</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 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 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%">&#160;</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&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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 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&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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 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&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-440">95,052</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-441">1,087</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-442">222,979</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-443">6,896</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-444">318,031</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-445">7,983</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-446">42,612</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" scale="3" id="f-447">647</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-448">2,441</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" scale="3" id="f-449">60</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-450">45,053</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" scale="3" id="f-451">707</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-452">14,742</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" scale="3" id="f-453">860</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-454">2,252</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" scale="3" id="f-455">48</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-456">16,994</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" scale="3" id="f-457">908</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:fixed-zero" scale="3" id="f-458">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" format="ixt:fixed-zero" scale="3" id="f-459">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-460">1,968</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" scale="3" id="f-461">69</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-462">1,968</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" scale="3" id="f-463">69</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-464">152,406</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-465">2,594</ix:nonFraction>)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-466">229,640</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-467">7,073</ix:nonFraction>)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-468">382,046</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-469">9,667</ix:nonFraction>)</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"/></tr></table></div></ix:nonNumeric><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&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of December&#160;31, 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 style="width:30.711%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.651%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.654%"/><td style="width:0.1%"/></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%">&#160;</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 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%">&#160;</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%">&#160;</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 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 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%">&#160;</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&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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 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&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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 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&#160;Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-470">30,770</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" scale="3" id="f-471">359</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-472">226,643</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-473">8,807</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-474">257,413</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-475">9,166</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-476">20,725</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" scale="3" id="f-477">153</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-478">2,441</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" scale="3" id="f-479">60</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-480">23,166</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" scale="3" id="f-481">213</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-482">17,062</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-483">1,049</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-484">2,252</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" scale="3" id="f-485">47</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-486">19,314</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-487">1,096</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-82" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:fixed-zero" scale="3" id="f-488">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-82" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" format="ixt:fixed-zero" scale="3" id="f-489">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-82" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-490">1,968</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-82" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" scale="3" id="f-491">80</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-82" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-492">1,968</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-82" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" scale="3" id="f-493">80</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" format="ixt:num-dot-decimal" scale="3" id="f-494">68,557</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-495">1,561</ix:nonFraction>)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" format="ixt:num-dot-decimal" scale="3" id="f-496">233,304</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-497">8,994</ix:nonFraction>)</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition" format="ixt:num-dot-decimal" scale="3" id="f-498">301,861</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" format="ixt:num-dot-decimal" scale="3" id="f-499">10,555</ix:nonFraction>)</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"/></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 style="width:79.341%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.459%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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, <ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" format="ixt-sec:numwordsen" scale="0" id="f-500"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" format="ixt-sec:numwordsen" scale="0" id="f-501">no</ix:nonFraction></ix:nonFraction> allowance for credit losses on debt securities was recorded as of March&#160;31, 2024 or December&#160;31, 2023. Management currently intends to hold these securities to full value recovery at maturity.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-340-3"><ix:nonNumeric contextRef="c-1" name="us-gaap:RealizedGainLossOnInvestmentsTableTextBlock" id="f-502" escape="true"><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 periods ended March&#160;31, 2024 and April&#160;2, 2023 (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:100.000%"><tr><td style="width:1.0%"/><td style="width:66.882%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.104%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.823%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.107%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleRealizedGain" scale="3" id="f-503">2</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleRealizedGain" format="ixt:fixed-zero" scale="3" id="f-504">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss" format="ixt:fixed-zero" scale="3" id="f-505">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss" format="ixt:fixed-zero" scale="3" id="f-506">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RealizedInvestmentGainsLosses" scale="3" id="f-507">2</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:RealizedInvestmentGainsLosses" format="ixt:fixed-zero" scale="3" id="f-508">&#8212;</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><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&#8217; equity as accumulated other comprehensive income (loss).</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock" id="f-509" escape="true"><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&#8217;s available-for-sale investments as of March&#160;31, 2024 (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 style="width:25.361%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.289%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 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 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 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 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 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 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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" format="ixt:num-dot-decimal" scale="3" id="f-510">134,032</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-511">57,463</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-512">59,120</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-513">58,225</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-514">44,905</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" format="ixt:fixed-zero" scale="3" id="f-515">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-516">353,745</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 notes</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%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" format="ixt:fixed-zero" scale="3" id="f-517">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-518">3,429</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-519">14,097</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-520">22,829</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-521">4,698</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" format="ixt:fixed-zero" scale="3" id="f-522">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-523">45,053</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" format="ixt:num-dot-decimal" scale="3" id="f-524">4,309</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-525">6,486</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" format="ixt:fixed-zero" scale="3" id="f-526">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" format="ixt:fixed-zero" scale="3" id="f-527">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" format="ixt:fixed-zero" scale="3" id="f-528">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" format="ixt:num-dot-decimal" scale="3" id="f-529">6,200</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-530">16,995</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" scale="3" id="f-531">993</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" scale="3" id="f-532">974</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" format="ixt:fixed-zero" scale="3" id="f-533">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" format="ixt:fixed-zero" scale="3" id="f-534">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" format="ixt:fixed-zero" scale="3" id="f-535">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" format="ixt:fixed-zero" scale="3" id="f-536">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-537">1,967</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" format="ixt:num-dot-decimal" scale="3" id="f-538">139,334</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-539">68,352</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-540">73,217</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-541">81,054</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" format="ixt:num-dot-decimal" scale="3" id="f-542">49,603</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" format="ixt:num-dot-decimal" scale="3" id="f-543">6,200</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AvailableForSaleSecuritiesDebtSecurities" format="ixt:num-dot-decimal" scale="3" id="f-544">417,760</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="margin-top:5pt"><span><br/></span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_52"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 5: <ix:nonNumeric contextRef="c-1" name="us-gaap:InventoryDisclosureTextBlock" id="f-545" continuedAt="f-545-1" escape="true">Inventories</ix:nonNumeric></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="f-546" escape="true"><ix:continuation id="f-545-1"><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 style="width:61.911%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.028%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.031%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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, 2023</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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="f-547">106,506</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="f-548">93,201</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="f-549">3,241</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="f-550">5,747</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="f-551">61,124</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="f-552">63,337</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-553">170,871</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-554">162,285</ix:nonFraction>&#160;</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"/></tr></table></div></ix:continuation></ix:nonNumeric><div id="i0d145b20bee04e9d835eeadbe3048af4_55"></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 6:&#160;<ix:nonNumeric contextRef="c-1" name="us-gaap:LesseeOperatingLeasesTextBlock" id="f-555" continuedAt="f-555-1" escape="true">Leases</ix:nonNumeric></span></div><ix:continuation id="f-555-1" continuedAt="f-555-2"><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. As of March&#160;31, 2024, there were no options to terminate and twenty-eight options to extend that were accounted for in the determination of the lease term for the Company's 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 March&#160;31, 2024.</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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="0" id="f-556">3,563,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="0" id="f-557">2,392,000</ix:nonFraction>, respectively. The total operating lease cash payments for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="0" id="f-558">3,208,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:OperatingLeasePayments" format="ixt:num-dot-decimal" scale="0" id="f-559">2,404,000</ix:nonFraction>, 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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="0" id="f-560">82,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="0" id="f-561">24,000</ix:nonFraction>, respectively.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-555-2" continuedAt="f-555-3"><ix:nonNumeric contextRef="c-1" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="f-562" escape="true"><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 style="width:82.648%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.728%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.224%"/><td style="width:0.1%"/></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&#160;31,</span></td><td colspan="3" style="padding:0 1pt"/><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 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="3" id="f-563">10,392</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="f-564">12,093</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="f-565">10,031</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2027</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" format="ixt:num-dot-decimal" scale="3" id="f-566">9,171</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:num-dot-decimal" scale="3" id="f-567">8,721</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2029</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive" format="ixt:num-dot-decimal" scale="3" id="f-568">8,137</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="f-569">44,658</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="f-570">103,203</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric><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 $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="0" id="f-571">77,165,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="0" id="f-572">78,601,000</ix:nonFraction> as of March&#160;31, 2024 and December&#160;31, 2023, respectively. The Company did not have any leases that had not yet commenced but that created significant rights and obligations as of March&#160;31, 2024.</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 Company leases a building in Singapore that serves as a distribution center for customers in Asia. The lease contains <ix:nonFraction unitRef="lease_component" contextRef="c-83" decimals="INF" name="cgnx:LesseeOperatingLeaseComponents" format="ixt-sec:numwordsen" scale="0" id="f-573">two</ix:nonFraction> components: an <ix:nonFraction unitRef="sqft" contextRef="c-84" decimals="-3" name="us-gaap:NetRentableArea" format="ixt:num-dot-decimal" scale="0" id="f-574">88,000</ix:nonFraction> square-foot premises that had a commencement date in June of 2023 and a second <ix:nonFraction unitRef="sqft" contextRef="c-85" decimals="-3" name="us-gaap:NetRentableArea" format="ixt:num-dot-decimal" scale="0" id="f-575">27,000</ix:nonFraction> square-foot premises that does not commence until the fourth quarter of 2025. Accordingly, the second component of the lease has not yet been recorded on the Consolidated Balance Sheets, nor has it created any significant rights and obligations as of March&#160;31, 2024. This second lease component has an original term of <ix:nonNumeric contextRef="c-85" name="us-gaap:LesseeOperatingLeaseTermOfContract" format="ixt-sec:durwordsen" id="f-576">eight years</ix:nonNumeric> and the Company has the right and option to extend this term by an additional <ix:nonNumeric contextRef="c-86" name="cgnx:LesseeOperatingLeaseOptionToRenewTermOfContract" format="ixt-sec:durwordsen" id="f-577">five years</ix:nonNumeric>, commencing upon the expiration of the original term. Future payment obligations associated with this lease component total $<ix:nonFraction unitRef="usd" contextRef="c-87" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="0" id="f-578">13,231,000</ix:nonFraction>, <ix:nonFraction unitRef="usd" contextRef="c-87" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" format="ixt:fixed-zero" scale="0" id="f-579">none</ix:nonFraction> of which is payable in 2024 and which reflects the estimated extension period of <ix:nonNumeric contextRef="c-86" name="cgnx:LesseeOperatingLeaseOptionToRenewTermOfContract" format="ixt-sec:durwordsen" id="f-580">five years</ix:nonNumeric>. Future payment obligations related to this lease component are not included in the future operating lease cash payments table above. </span></div></ix:continuation><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%"><ix:continuation id="f-555-3">The weighted-average discount rate was <ix:nonFraction unitRef="number" contextRef="c-4" decimals="3" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="f-581"><ix:nonFraction unitRef="number" contextRef="c-2" decimals="3" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="f-582">5.7</ix:nonFraction></ix:nonFraction>% for the leases outstanding as of both March&#160;31, 2024 and December&#160;31, 2023. The weighted-average remaining lease term was <ix:nonNumeric contextRef="c-2" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="f-583">10.3</ix:nonNumeric> and <ix:nonNumeric contextRef="c-4" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="f-584">10.5</ix:nonNumeric> years for the leases outstanding as of March&#160;31, 2024 and December&#160;31, 2023, respectively.</ix:continuation> </span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_58"></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 7:&#160;<ix:nonNumeric contextRef="c-1" name="us-gaap:GoodwillDisclosureTextBlock" id="f-585" continuedAt="f-585-1" escape="true">Goodwill</ix:nonNumeric></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfGoodwillTextBlock" id="f-586" escape="true"><ix:continuation id="f-585-1"><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 style="width:83.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.536%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.776%"/><td style="width:0.1%"/></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, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="f-587">393,181</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">&#160;&#160;Foreign exchange rate changes</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:GoodwillForeignCurrencyTranslationGainLoss" format="ixt:num-dot-decimal" scale="3" id="f-588">7,024</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:Goodwill" format="ixt:num-dot-decimal" scale="3" id="f-589">386,157</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:continuation></ix:nonNumeric><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">13</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_61"></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 8:&#160;<ix:nonNumeric contextRef="c-1" name="us-gaap:IntangibleAssetsDisclosureTextBlock" id="f-590" continuedAt="f-590-1" escape="true">Intangible Assets</ix:nonNumeric></span></div><ix:continuation id="f-590-1"><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" id="f-591" escape="true"><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 style="width:51.176%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.318%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.318%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.320%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 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 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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Customer relationships</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%"><ix:nonFraction unitRef="usd" contextRef="c-88" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="f-592">72,775</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-88" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-593">6,587</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-88" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-594">66,188</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Completed technologies</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%"><ix:nonFraction unitRef="usd" contextRef="c-89" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="f-595">60,160</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%">(<ix:nonFraction unitRef="usd" contextRef="c-89" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-596">22,112</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-89" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-597">38,048</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Trademarks</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%"><ix:nonFraction unitRef="usd" contextRef="c-90" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="f-598">842</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-90" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="f-599">117</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-90" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="f-600">725</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Non-compete agreements</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%"><ix:nonFraction unitRef="usd" contextRef="c-91" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="f-601">340</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%">(<ix:nonFraction unitRef="usd" contextRef="c-91" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="f-602">247</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-91" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="f-603">93</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March 31, 2024</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: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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="f-604">134,117</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-605">29,063</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-606">105,054</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></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%">&#160;</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 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 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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Customer relationships</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%"><ix:nonFraction unitRef="usd" contextRef="c-92" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="f-607">75,965</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-92" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-608">5,352</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-92" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-609">70,613</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Completed technologies</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%"><ix:nonFraction unitRef="usd" contextRef="c-93" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="f-610">62,123</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-93" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-611">20,745</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-93" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-612">41,378</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Trademarks</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%"><ix:nonFraction unitRef="usd" contextRef="c-94" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="f-613">903</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-94" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="f-614">50</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-94" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="f-615">853</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Non-compete agreements</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%"><ix:nonFraction unitRef="usd" contextRef="c-95" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" scale="3" id="f-616">340</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-95" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" scale="3" id="f-617">232</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-95" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" scale="3" id="f-618">108</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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, 2023</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsGross" format="ixt:num-dot-decimal" scale="3" id="f-619">139,331</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-620">26,379</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-621">112,952</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" id="f-622" escape="true"><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 March&#160;31, 2024, 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 style="width:81.623%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.445%"/><td style="width:0.1%"/></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&#160;31,</span></td><td colspan="3" style="padding:0 1pt"/><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 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="3" id="f-623">8,179</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="f-624">10,615</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2026</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" format="ixt:num-dot-decimal" scale="3" id="f-625">10,310</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2027</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" format="ixt:num-dot-decimal" scale="3" id="f-626">9,587</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2028</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" format="ixt:num-dot-decimal" scale="3" id="f-627">8,857</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">2029</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" format="ixt:num-dot-decimal" scale="3" id="f-628">8,857</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" format="ixt:num-dot-decimal" scale="3" id="f-629">48,649</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-96" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-630">105,054</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div id="i0d145b20bee04e9d835eeadbe3048af4_64"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 9: <ix:nonNumeric contextRef="c-1" name="us-gaap:ProductWarrantyDisclosureTextBlock" id="f-631" continuedAt="f-631-1" escape="true">Warranty Obligations</ix:nonNumeric></span></div><ix:continuation id="f-631-1"><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&#8217;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 &#8220;Accrued expenses&#8221; on the Consolidated Balance Sheets.</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="f-632" escape="true"><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 style="width:80.771%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.029%"/><td style="width:0.1%"/></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, 2023</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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:ProductWarrantyAccrual" format="ixt:num-dot-decimal" scale="3" id="f-633">4,244</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" format="ixt:num-dot-decimal" scale="3" id="f-634">1,157</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProductWarrantyAccrualPayments" scale="3" id="f-635">939</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss" scale="3" id="f-636">9</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March 31, 2024</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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ProductWarrantyAccrual" format="ixt:num-dot-decimal" scale="3" id="f-637">4,453</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">14</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_67"></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 10: <ix:nonNumeric contextRef="c-1" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="f-638" continuedAt="f-638-1" escape="true">Commitments and Contingencies</ix:nonNumeric></span></div><ix:continuation id="f-638-1"><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 March&#160;31, 2024, the Company had outstanding purchase orders totaling $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:PurchaseCommitmentRemainingMinimumAmountCommitted" format="ixt:num-dot-decimal" scale="0" id="f-639">40,843,000</ix:nonFraction> 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 March&#160;31, 2024, 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></ix:continuation><div id="i0d145b20bee04e9d835eeadbe3048af4_70"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 11: <ix:nonNumeric contextRef="c-1" name="us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" id="f-640" continuedAt="f-640-1" escape="true">Derivative Instruments</ix:nonNumeric></span></div><ix:continuation id="f-640-1" continuedAt="f-640-2"><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&#8217;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 <ix:nonNumeric contextRef="c-97" name="us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1" format="ixt-sec:durwordsen" id="f-641">three months</ix:nonNumeric> 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><ix:nonNumeric contextRef="c-1" name="cgnx:OutstandingForwardContractsTableTextBlock" id="f-642" escape="true"><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 style="width:46.122%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.034%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.746%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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, 2023</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 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 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 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 colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="sgd" contextRef="c-98" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-643">39,950</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-98" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-644">29,652</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="sgd" contextRef="c-99" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-645">39,700</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-99" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-646">30,136</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="eur" contextRef="c-100" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-647">18,500</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-100" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-648">19,940</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="eur" contextRef="c-101" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-649">40,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-101" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-650">44,302</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="mxn" contextRef="c-102" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-651">205,000</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-102" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-652">12,273</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="mxn" contextRef="c-103" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-653">145,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-103" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-654">8,505</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="cny" contextRef="c-104" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-655">50,000</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-656">6,886</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="cny" contextRef="c-105" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-657">50,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-658">7,025</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Hungarian Forint</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%"><ix:nonFraction unitRef="huf" contextRef="c-106" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-659">2,250,000</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-660">6,152</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="huf" contextRef="c-107" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-661">2,240,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-662">6,466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">British Pound</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%"><ix:nonFraction unitRef="gbp" contextRef="c-108" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-663">3,330</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-108" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-664">4,229</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="gbp" contextRef="c-109" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-665">3,345</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-109" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-666">4,258</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="jpy" contextRef="c-110" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-667">600,000</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-110" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-668">3,980</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="jpy" contextRef="c-111" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-669">600,000</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-670">4,255</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Swiss Franc</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%"><ix:nonFraction unitRef="chf" contextRef="c-112" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-671">2,400</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-672">2,673</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="chf" contextRef="c-113" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:fixed-zero" scale="3" id="f-673">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-113" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:fixed-zero" scale="3" id="f-674">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">Canadian 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%"><ix:nonFraction unitRef="cad" contextRef="c-114" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-675">1,720</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-114" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-676">1,270</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="cad" contextRef="c-115" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-677">1,470</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-115" decimals="-3" name="us-gaap:DerivativeAssetNotionalAmount" format="ixt:num-dot-decimal" scale="3" id="f-678">1,112</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="margin-top:1pt;text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:1pt;text-align:justify"><span><br/></span></div><ix:continuation id="f-640-2"><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" id="f-679" escape="true"><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 style="width:12.863%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.368%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.113%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.563%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.960%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.113%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.550%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.570%"/><td style="width:0.1%"/></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%">&#160;</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 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%">&#160;</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 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 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 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%">&#160;</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 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%">March 31,           2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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, 2023</span></td><td colspan="3" style="padding:0 1pt"/><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 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%">March 31,           2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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, 2023</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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&#160;expenses&#160;and other current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-116" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="f-680">22</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-117" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="f-681">151</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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 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%"><ix:nonFraction unitRef="usd" contextRef="c-116" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="f-682">221</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-117" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="f-683">106</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:OffsettingAssetsTableTextBlock" id="f-684" escape="true"><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 style="width:21.008%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.345%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.223%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:21.008%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.345%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.227%"/><td style="width:0.1%"/></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 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 colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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%">March 31,           2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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, 2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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%">March 31,           2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><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, 2023</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 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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeAsset" scale="3" id="f-685">22</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeAsset" scale="3" id="f-686">151</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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 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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeLiability" scale="3" id="f-687">221</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DerivativeFairValueOfDerivativeLiability" scale="3" id="f-688">106</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset" format="ixt:fixed-zero" scale="3" id="f-689">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset" format="ixt:fixed-zero" scale="3" id="f-690">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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 colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset" format="ixt:fixed-zero" scale="3" id="f-691">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset" format="ixt:fixed-zero" scale="3" id="f-692">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="f-693">22</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DerivativeAssets" scale="3" id="f-694">151</ix:nonFraction>&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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 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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="f-695">221</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DerivativeLiabilities" scale="3" id="f-696">106</ix:nonFraction>&#160;</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"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" id="f-697" escape="true"><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 style="width:14.835%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:53.724%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.788%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.793%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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 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="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 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%">(<ix:nonFraction unitRef="usd" contextRef="c-97" decimals="-3" sign="-" name="us-gaap:DerivativeGainLossOnDerivativeNet" scale="3" id="f-698">245</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">(<ix:nonFraction unitRef="usd" contextRef="c-118" decimals="-3" sign="-" name="us-gaap:DerivativeGainLossOnDerivativeNet" format="ixt:num-dot-decimal" scale="3" id="f-699">1,471</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">16</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_73"></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 12: <ix:nonNumeric contextRef="c-1" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="f-700" continuedAt="f-700-1" escape="true">Revenue Recognition</ix:nonNumeric></span></div><ix:continuation id="f-700-1" continuedAt="f-700-2"><ix:nonNumeric contextRef="c-1" name="us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock" id="f-701" escape="true"><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 style="width:67.321%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.961%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-119" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-702">83,135</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-120" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-703">80,442</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-121" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-704">52,354</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-122" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-705">59,842</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-706">30,049</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-707">33,172</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-708">45,259</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-709">27,668</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-710">210,797</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-711">201,124</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" id="f-712" escape="true"><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.707%"><tr><td style="width:1.0%"/><td style="width:67.375%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.386%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.002%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.004%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 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%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-713">187,632</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-714">190,783</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 colspan="2" style="background-color:#ffffff;padding: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%"><ix:nonFraction unitRef="usd" contextRef="c-129" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-715">23,165</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-130" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-716">10,341</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-717">210,797</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-718">201,124</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><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 $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:CapitalizedContractCostGross" format="ixt:num-dot-decimal" scale="0" id="f-719">11,783,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:CapitalizedContractCostGross" format="ixt:num-dot-decimal" scale="0" id="f-720">13,265,000</ix:nonFraction> as of March&#160;31, 2024 and December&#160;31, 2023, 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><ix:nonNumeric contextRef="c-1" name="us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock" id="f-721" escape="true"><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 three-month period ended March&#160;31, 2024 (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 style="width:79.341%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.459%"/><td style="width:0.1%"/></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, 2023</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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="f-722">583</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">Write-offs, net of recoveries</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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="cgnx:AccountsReceivableAllowanceForCreditLossWriteoffRecovery" scale="3" id="f-723">17</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" scale="3" id="f-724">1</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March 31, 2024</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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivable" scale="3" id="f-725">601</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-700-2"><ix:nonNumeric contextRef="c-1" name="us-gaap:DeferredRevenueByArrangementDisclosureTextBlock" id="f-726" escape="true"><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 three-month period ended March&#160;31, 2024 (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 style="width:79.341%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.459%"/><td style="width:0.1%"/></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, 2023</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%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="-3" name="us-gaap:DeferredRevenue" format="ixt:num-dot-decimal" scale="3" id="f-727">31,525</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DeferredRevenueAdditions" format="ixt:num-dot-decimal" scale="3" id="f-728">24,921</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DeferredRevenueRevenueRecognized1" format="ixt:num-dot-decimal" scale="3" id="f-729">16,184</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="cgnx:DeferredRevenueForeignCurrencyExchangeAdjustment" scale="3" id="f-730">279</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March 31, 2024</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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:DeferredRevenue" format="ixt:num-dot-decimal" scale="3" id="f-731">39,983</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></tr></table></div></ix:nonNumeric><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 for our contracts that have an original expected duration of less than one year. The remaining unsatisfied performance obligations for our contracts that have an original expected duration of more than one year, primarily related to extended warranties, are not material.</span></div></ix:continuation><div id="i0d145b20bee04e9d835eeadbe3048af4_76"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 13: <ix:nonNumeric contextRef="c-1" name="us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock" id="f-732" continuedAt="f-732-1" escape="true">Stock-Based Compensation Expense</ix:nonNumeric></span></div><ix:continuation id="f-732-1" continuedAt="f-732-2"><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&#8217;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 &#8220;2023 Plan&#8221;). The 2023 Plan permits awards of stock options (both incentive and non-qualified options), stock appreciation rights, RSUs, and PRSUs. Up to <ix:nonFraction unitRef="shares" contextRef="c-131" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="f-733">8,100,000</ix:nonFraction> 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 &#8220;2001 Plan&#8221;), and the Cognex Corporation 2007 Stock Option and Incentive Plan, as amended and restated (the &#8220;2007 Plan&#8221;). With the approval of the 2023 Plan, the <ix:nonFraction unitRef="shares" contextRef="c-132" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="f-734">10,610,800</ix:nonFraction> 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 &#8220;Carryover Shares&#8221;). As of March&#160;31, 2024, forfeitures, cancellations, and other terminations from the 2001 Plan and the 2007 Plan have resulted in <ix:nonFraction unitRef="shares" contextRef="c-133" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="f-735">707,900</ix:nonFraction> Carryover Shares, raising the authorized total shares that may be issued under the 2023 Plan to <ix:nonFraction unitRef="shares" contextRef="c-134" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="f-736">8,807,900</ix:nonFraction></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 March&#160;31, 2024, the Company had <ix:nonFraction unitRef="shares" contextRef="c-135" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="f-737">6,001,000</ix:nonFraction> shares available for grant under its stock plans. Stock options are granted with an exercise price equal to the market value of the Company&#8217;s common stock at the grant date and generally vest over <span style="-sec-ix-hidden:f-738">four</span> or <ix:nonNumeric contextRef="c-137" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="f-739">five years</ix:nonNumeric> based upon continuous service and expire <ix:nonNumeric contextRef="c-138" name="cgnx:ExpirationPeriodOfStockOptionPlan" format="ixt-sec:durwordsen" id="f-740">ten years</ix:nonNumeric> from the grant date. RSUs generally vest upon <span style="-sec-ix-hidden:f-741">three</span> or <ix:nonNumeric contextRef="c-140" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="f-742">four years</ix:nonNumeric> of continuous employment or incrementally over such <span style="-sec-ix-hidden:f-743">three</span> or <ix:nonNumeric contextRef="c-140" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="f-744">four-year</ix:nonNumeric> periods. PRSUs generally vest upon <ix:nonNumeric contextRef="c-141" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" format="ixt-sec:durwordsen" id="f-745">three years</ix:nonNumeric> 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></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">18</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-732-2" continuedAt="f-732-3"><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&#8217;s stock option activity for the three-month period ended March&#160;31, 2024:</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 style="width:37.699%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.273%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.223%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.126%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.983%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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&#160;thousands)</span></td><td colspan="3" style="padding:0 1pt"/><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 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&#160;(in&#160;years)</span></td><td colspan="3" style="padding:0 1pt"/><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&#160;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&#160;31, 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:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="3" id="f-746">9,008</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-4" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="f-747">50.87</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="3" id="f-748">1,523</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" scale="0" id="f-749">39.44</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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%">(<ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised" scale="3" id="f-750">56</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" scale="0" id="f-751">19.87</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></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%">(<ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" scale="3" id="f-752">330</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" scale="0" id="f-753">57.58</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></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 March&#160;31, 2024</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%"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" format="ixt:num-dot-decimal" scale="3" id="f-754">10,145</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-2" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" scale="0" id="f-755">49.11</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonNumeric contextRef="c-1" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" format="ixt-sec:duryear" id="f-756">6.30</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="f-757">21,531</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March&#160;31, 2024</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%"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" format="ixt:num-dot-decimal" scale="3" id="f-758">5,973</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-2" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" scale="0" id="f-759">49.04</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonNumeric contextRef="c-1" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" format="ixt-sec:duryear" id="f-760">4.56</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="f-761">15,941</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March 31, 2024 (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%"><ix:nonFraction unitRef="shares" contextRef="c-2" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" format="ixt:num-dot-decimal" scale="3" id="f-762">9,405</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-2" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" scale="0" id="f-763">49.28</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonNumeric contextRef="c-1" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" format="ixt-sec:duryear" id="f-764">6.09</ix:nonNumeric></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" format="ixt:num-dot-decimal" scale="3" id="f-765">20,336</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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"/></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%">&#160;(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:1pt;padding-left:36pt;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%">The total cash received as a result of stock option exercises for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="f-766">1,121,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:ProceedsFromStockOptionsExercised" format="ixt:num-dot-decimal" scale="0" id="f-767">3,976,000</ix:nonFraction>, respectively. In connection with these exercises, the tax benefit (expense) realized by the Company for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 was $(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" format="ixt:num-dot-decimal" scale="0" id="f-768">29,000</ix:nonFraction>) and $(<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" sign="-" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" format="ixt:num-dot-decimal" scale="0" id="f-769">1,466,000</ix:nonFraction>), respectively.</span></div><div style="margin-top:1pt;padding-left:36pt;text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" id="f-770" escape="true"><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 style="width:68.052%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.960%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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&#160;Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="number" contextRef="c-1" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="f-771">4.3</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 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%"><ix:nonFraction unitRef="number" contextRef="c-3" decimals="3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" scale="-2" id="f-772">4.0</ix:nonFraction>&#160;</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="number" contextRef="c-1" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="f-773">0.76</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="c-3" decimals="4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" scale="-2" id="f-774">0.59</ix:nonFraction>&#160;</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="number" contextRef="c-1" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="f-775">39</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 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%"><ix:nonFraction unitRef="number" contextRef="c-3" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" scale="-2" id="f-776">39</ix:nonFraction>&#160;</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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonNumeric contextRef="c-1" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="f-777">4.7</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonNumeric contextRef="c-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear" id="f-778">4.3</ix:nonNumeric></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><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%">The current dividend yield was calculated by annualizing the cash dividend declared by the Company&#8217;s Board of Directors and dividing that result by the closing stock price on the grant date.&#160;</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&#160;the Company&#8217;s common stock over the contractual term of the option and implied volatility for traded options of the Company&#8217;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></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-732-3" continuedAt="f-732-4"><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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-779">14.66</ix:nonFraction> and $<ix:nonFraction unitRef="usdPerShare" contextRef="c-3" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-780">17.79</ix:nonFraction>, 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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" format="ixt:num-dot-decimal" scale="0" id="f-781">1,055,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" format="ixt:num-dot-decimal" scale="0" id="f-782">3,439,000</ix:nonFraction>, respectively. The total fair values of stock options vested for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" format="ixt:num-dot-decimal" scale="0" id="f-783">25,807,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" format="ixt:num-dot-decimal" scale="0" id="f-784">31,181,000</ix:nonFraction>, 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><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock" id="f-785" escape="true"><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 three-month period ended March&#160;31, 2024: </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 style="width:65.420%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.838%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 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&#160;31, 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:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-142" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="3" id="f-786">1,429</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-142" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="f-787">54.22</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-143" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="3" id="f-788">765</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-143" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-789">38.82</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">(<ix:nonFraction unitRef="shares" contextRef="c-143" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="3" id="f-790">339</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-143" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-791">65.45</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%">(<ix:nonFraction unitRef="shares" contextRef="c-143" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="3" id="f-792">36</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-143" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" scale="0" id="f-793">52.43</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March&#160;31, 2024</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%"><ix:nonFraction unitRef="shares" contextRef="c-144" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" format="ixt:num-dot-decimal" scale="3" id="f-794">1,819</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-144" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="f-795">45.68</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usdPerShare" contextRef="c-143" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-796">38.82</ix:nonFraction> and $<ix:nonFraction unitRef="usdPerShare" contextRef="c-145" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-797">46.61</ix:nonFraction>, respectively. There were <ix:nonFraction unitRef="shares" contextRef="c-143" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="f-798">339,000</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-145" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:num-dot-decimal" scale="0" id="f-799">453,000</ix:nonFraction> RSUs that vested during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, 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%">Tax obligations for vested RSUs are settled by withholding a portion of the shares prior to distribution to the shareholder. The total cash used by the Company to fund the tax payments for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-143" decimals="0" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-800">3,981,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-145" decimals="0" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="0" id="f-801">7,032,000</ix:nonFraction>, respectively. In connection with these vested RSUs, the tax benefit (expense) realized by the Company for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 was $(<ix:nonFraction unitRef="usd" contextRef="c-143" decimals="0" sign="-" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="0" id="f-802">4,793,000</ix:nonFraction>) and $(<ix:nonFraction unitRef="usd" contextRef="c-145" decimals="0" sign="-" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="0" id="f-803">2,718,000</ix:nonFraction>), 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><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock" id="f-804" escape="true"><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 three-month period ended March&#160;31, 2024: </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 style="width:65.420%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.838%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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 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&#160;31, 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:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-146" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="3" id="f-805">79</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-146" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="f-806">52.23</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-141" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="3" id="f-807">55</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-141" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" scale="0" id="f-808">39.05</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-141" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt:fixed-zero" scale="3" id="f-809">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-141" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="f-810">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-141" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" format="ixt:fixed-zero" scale="3" id="f-811">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-141" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" format="ixt:fixed-zero" scale="0" id="f-812">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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 March&#160;31, 2024</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%"><ix:nonFraction unitRef="shares" contextRef="c-147" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" scale="3" id="f-813">134</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-147" decimals="2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" scale="0" id="f-814">46.82</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><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 <ix:nonFraction unitRef="shares" contextRef="c-141" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="f-815">55,000</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-148" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" format="ixt:num-dot-decimal" scale="0" id="f-816">46,000</ix:nonFraction> PRSUs granted during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively. <ix:nonFraction unitRef="shares" contextRef="c-148" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt-sec:numwordsen" scale="0" id="f-817"><ix:nonFraction unitRef="shares" contextRef="c-141" decimals="-3" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" format="ixt-sec:numwordsen" scale="0" id="f-818">No</ix:nonFraction></ix:nonFraction> PRSUs vested during the three-month periods ended March&#160;31, 2024 and April&#160;2, 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%;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 <ix:nonFraction unitRef="group" contextRef="c-2" decimals="INF" name="cgnx:NumberOfGroupsWithinEmployeePopulation" format="ixt-sec:numwordsen" scale="0" id="f-819">three</ix:nonFraction> 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 <ix:nonFraction unitRef="number" contextRef="c-2" decimals="2" name="cgnx:EstimatedForfeitureRateForUnvestedOptionsForCEO" scale="-2" id="f-820">0</ix:nonFraction>% to all stock-based awards for the CEO, <ix:nonFraction unitRef="number" contextRef="c-2" decimals="2" name="cgnx:EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" scale="-2" id="f-821">9</ix:nonFraction>% to all stock-based awards for senior management, and a rate of <ix:nonFraction unitRef="number" contextRef="c-2" decimals="2" name="cgnx:EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" scale="-2" id="f-822">13</ix:nonFraction>% 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 $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" format="ixt:num-dot-decimal" scale="0" id="f-823">1,832,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="cgnx:DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" format="ixt:num-dot-decimal" scale="0" id="f-824">234,000</ix:nonFraction> during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-732-4"><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%">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%">As of March&#160;31, 2024, total unrecognized compensation expense, net of estimated forfeitures, related to non-vested equity awards, including stock options, RSUs, and PRSUs, was $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="INF" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="0" id="f-825">86,273,000</ix:nonFraction>, which is expected to be recognized over a weighted-average period of <ix:nonNumeric contextRef="c-1" name="cgnx:EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" format="ixt-sec:duryear" id="f-826">2.1</ix:nonNumeric> 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 March&#160;31, 2024 were $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="0" id="f-827">13,302,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="0" id="f-828">1,745,000</ix:nonFraction>, respectively. The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended April&#160;2, 2023 were $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="0" id="f-829">16,579,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" format="ixt:num-dot-decimal" scale="0" id="f-830">2,308,000</ix:nonFraction>, respectively. <ix:nonFraction unitRef="usd" contextRef="c-2" decimals="INF" name="cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" format="ixt:fixed-zero" scale="0" id="f-831"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="INF" name="cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" format="ixt:fixed-zero" scale="0" id="f-832">No</ix:nonFraction></ix:nonFraction> compensation expense was capitalized as of March&#160;31, 2024 or December&#160;31, 2023.</span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="f-833" escape="true"><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 style="width:68.052%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.960%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-149" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-834">605</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-150" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="3" id="f-835">621</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-151" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-836">4,389</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-152" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-837">5,890</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="usd" contextRef="c-153" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-838">8,308</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-154" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-839">10,068</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-840">13,302</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:AllocatedShareBasedCompensationExpense" format="ixt:num-dot-decimal" scale="3" id="f-841">16,579</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric></ix:continuation><div id="i0d145b20bee04e9d835eeadbe3048af4_82"></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 14: <ix:nonNumeric contextRef="c-1" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" id="f-842" continuedAt="f-842-1" escape="true">Stock Repurchase Program</ix:nonNumeric></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%"><ix:continuation id="f-842-1">In March 2022, the Company's Board of Directors authorized the repurchase of $<ix:nonFraction unitRef="usd" contextRef="c-155" decimals="-3" name="us-gaap:StockRepurchaseProgramAuthorizedAmount1" format="ixt:num-dot-decimal" scale="0" id="f-843">500,000,000</ix:nonFraction> of the Company's common stock. Under this March 2022 program, the Company repurchased <ix:nonFraction unitRef="shares" contextRef="c-156" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:num-dot-decimal" scale="0" id="f-844">479,000</ix:nonFraction> shares at a total cost of $<ix:nonFraction unitRef="usd" contextRef="c-156" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="0" id="f-845">24,178,000</ix:nonFraction> during the three-month period ended April&#160;2, 2023 and <ix:nonFraction unitRef="shares" contextRef="c-157" decimals="INF" name="us-gaap:TreasuryStockSharesAcquired" format="ixt:num-dot-decimal" scale="0" id="f-846">231,000</ix:nonFraction> shares at a total cost of $<ix:nonFraction unitRef="usd" contextRef="c-157" decimals="-3" name="us-gaap:TreasuryStockValueAcquiredCostMethod" format="ixt:num-dot-decimal" scale="0" id="f-847">9,339,000</ix:nonFraction> during the three-month period ended March&#160;31, 2024, leaving a remaining balance of $<ix:nonFraction unitRef="usd" contextRef="c-158" decimals="-3" name="us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" format="ixt:num-dot-decimal" scale="0" id="f-848">323,553,000</ix:nonFraction> as of March&#160;31, 2024. 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.</ix:continuation> </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">21</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_85"></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 15: <ix:nonNumeric contextRef="c-1" name="us-gaap:IncomeTaxDisclosureTextBlock" id="f-849" continuedAt="f-849-1" escape="true">Income Taxes</ix:nonNumeric></span></div><ix:continuation id="f-849-1"><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 <ix:nonFraction unitRef="number" contextRef="c-1" decimals="2" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="f-850">32</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="c-3" decimals="2" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="f-851">2</ix:nonFraction>% for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, 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, Japan, and Korea, and within the United States, Massachusetts. The statutory tax rate is <ix:nonFraction unitRef="number" contextRef="c-159" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="f-852">12.5</ix:nonFraction>% in Ireland, <ix:nonFraction unitRef="number" contextRef="c-160" decimals="2" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="f-853">25</ix:nonFraction>% in China, <ix:nonFraction unitRef="number" contextRef="c-161" decimals="3" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="f-854">34.6</ix:nonFraction>% in Japan, and <ix:nonFraction unitRef="number" contextRef="c-162" decimals="2" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="f-855">21</ix:nonFraction>% in Korea, compared to the U.S. federal statutory corporate tax rate of <ix:nonFraction unitRef="number" contextRef="c-163" decimals="2" name="us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" scale="-2" id="f-856">21</ix:nonFraction>%. These foreign tax rate differences resulted in a favorable impact to the effective tax rate for both the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</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 $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="cgnx:EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" format="ixt:num-dot-decimal" scale="0" id="f-857">3,085,000</ix:nonFraction> for the three-month period ended March&#160;31, 2024, and a net discrete tax benefit totaling $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="cgnx:EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" format="ixt:num-dot-decimal" scale="0" id="f-858">3,594,000</ix:nonFraction> for the same period in 2023.</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 three-month period ended March&#160;31, 2024 included (1) an increase in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" format="ixt:num-dot-decimal" scale="0" id="f-859">1,123,000</ix:nonFraction> related to stock-based compensation; (2) an increase in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxSettlements" format="ixt:num-dot-decimal" scale="0" id="f-860">458,000</ix:nonFraction> related to state tax matters; (3) an increase in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxContingencies" format="ixt:num-dot-decimal" scale="0" id="f-861">458,000</ix:nonFraction> for interest expense related to tax reserves; and (4) a net increase in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" format="ixt:num-dot-decimal" scale="0" id="f-862">1,046,000</ix:nonFraction> for other tax matters.</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 three-month period ended April&#160;2, 2023 included (1) an increase in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" format="ixt:num-dot-decimal" scale="0" id="f-863">1,068,000</ix:nonFraction> related to stock-based compensation; (2) a decrease in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncomeTaxReconciliationTaxSettlements" format="ixt:num-dot-decimal" scale="0" id="f-864">2,292,000</ix:nonFraction> for releasing tax reserves on state tax credits; (3) a decrease in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="0" id="f-865">2,198,000</ix:nonFraction> for adjustments to certain deferred tax assets; and (4) a decrease in tax expense of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="-3" name="us-gaap:IncomeTaxReconciliationOtherAdjustments" format="ixt:num-dot-decimal" scale="0" id="f-866">172,000</ix:nonFraction> for return-to-provision adjustments. </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&#8217;s reserve for income taxes, including gross interest and penalties, was $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:LiabilityForUncertainTaxPositions" format="ixt:num-dot-decimal" scale="0" id="f-867">30,511,000</ix:nonFraction> as of March&#160;31, 2024, of which $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:UnrecognizedTaxBenefitsGrossNoncurrentLiability" format="ixt:num-dot-decimal" scale="0" id="f-868">28,144,000</ix:nonFraction> was classified as a non-current liability and $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="-3" name="cgnx:UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" format="ixt:num-dot-decimal" scale="0" id="f-869">2,367,000</ix:nonFraction> was classified as an offset to deferred tax assets. If the Company&#8217;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><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%">Within the United States, the tax years <ix:nonNumeric contextRef="c-1" name="cgnx:TaxYearsOpenToExaminationByInternalRevenueService" id="f-870">2020 through 2022</ix:nonNumeric> remain open to examination by the IRS, and 2019 through 2022 remain open to examination by various state tax authorities. The tax years <ix:nonNumeric contextRef="c-1" name="cgnx:IncomeTaxExaminationYearsUnderExaminationOtherEntities" id="f-871">2017 through 2023</ix:nonNumeric> remain open to examination by various international taxing authorities in other jurisdictions in which the Company operates. </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%">In October 2021, more than 135 countries and jurisdictions agreed to participate in a "two-pillar" international tax approach developed by the Organisation for Economic Co-operation and Development (OECD), which includes establishing a global minimum corporate tax rate of 15%. The OECD published "Tax Challenges Arising from the Digitalisation of the Economy &#8212; Global Anti-Base Erosion Model Rules (Pillar Two)" in December 2021 and subsequently issued additional commentary and administrative guidance clarifying several aspects of the model rules. Since the model rules have been released, many countries have now enacted Pillar Two-related laws, some of which became effective January 1, 2024, and it is anticipated that more countries will follow suit throughout 2024. As of March 31, 2024, the Company does not expect Pillar Two taxes to have a significant impact on its 2024 financial statements.</span></div></ix:continuation><div><span><br/></span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_88"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 16: <ix:nonNumeric contextRef="c-3" name="us-gaap:EarningsPerShareTextBlock" id="f-872" continuedAt="f-872-1" escape="true">Weighted-Average Shares</ix:nonNumeric></span></div><ix:continuation id="f-872-1" continuedAt="f-872-2"><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" id="f-873" escape="true"><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 style="width:68.052%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.958%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.960%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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="display:none"/><td colspan="3" style="display:none"/></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%">&#160;</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%">March 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><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%">April 2, 2023</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-874">171,692</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="shares" contextRef="c-3" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-875">172,624</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" scale="3" id="f-876">902</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-3" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" format="ixt:num-dot-decimal" scale="3" id="f-877">1,279</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-878">172,594</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%"><ix:nonFraction unitRef="shares" contextRef="c-3" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-879">173,903</ix:nonFraction>&#160;</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 colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:nonNumeric><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 <ix:nonFraction unitRef="shares" contextRef="c-164" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="f-880">8,176,000</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-165" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="f-881">6,515,000</ix:nonFraction> shares of common stock, on a weighted-average basis, were outstanding during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. Restricted stock units totaling <ix:nonFraction unitRef="shares" contextRef="c-166" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="f-882">1,000</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="c-167" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:num-dot-decimal" scale="0" id="f-883">10,000</ix:nonFraction> shares of common stock, on a weighted-average basis, were outstanding during the </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">22</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:82.8pt;width:100%"><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">COGNEX CORPORATION </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</span></div></div><ix:continuation id="f-872-2"><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%">three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. <ix:nonFraction unitRef="shares" contextRef="c-168" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:fixed-zero" scale="0" id="f-884"><ix:nonFraction unitRef="shares" contextRef="c-169" decimals="INF" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" format="ixt:fixed-zero" scale="0" id="f-885">No</ix:nonFraction></ix:nonFraction> PRSUs were excluded in the calculation of dilutive net income per share for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, as PRSUs were not anti-dilutive on a weighted-average basis.</span></div></ix:continuation><div id="i0d145b20bee04e9d835eeadbe3048af4_91"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 17: <ix:nonNumeric contextRef="c-1" name="us-gaap:BusinessCombinationDisclosureTextBlock" id="f-886" continuedAt="f-886-1" escape="true">Business Combinations</ix:nonNumeric></span></div><ix:continuation id="f-886-1"><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%">On October 18, 2023, the Company acquired all the outstanding shares of Moritex Corporation ("Moritex"), a global provider of premium optical components based in Japan, for an enterprise value of &#165;<ix:nonFraction unitRef="jpy" contextRef="c-170" decimals="-9" name="cgnx:BusinessCombinationEnterpriseValue" format="ixt:num-dot-decimal" scale="9" id="f-887">40</ix:nonFraction>&#160;billion Japanese Yen, or approximately $<ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-6" name="cgnx:BusinessCombinationEnterpriseValue" format="ixt:num-dot-decimal" scale="6" id="f-888">270</ix:nonFraction>&#160;million U.S. Dollars based on the closing date foreign exchange 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 cash-free, debt-free enterprise value was adjusted by cash acquired, debt assumed, and final working capital balances to arrive at total consideration to be allocated to assets acquired and liabilities assumed of &#165;<ix:nonFraction unitRef="jpy" contextRef="c-171" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="0" id="f-889">44,376,245,000</ix:nonFraction> ($<ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:BusinessCombinationConsiderationTransferred1" format="ixt:num-dot-decimal" scale="0" id="f-890">296,138,000</ix:nonFraction> based on the closing date foreign exchange rate), of which &#165;<ix:nonFraction unitRef="jpy" contextRef="c-171" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="0" id="f-891">44,227,414,000</ix:nonFraction> ($<ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="0" id="f-892">295,144,000</ix:nonFraction>) was paid in cash on the closing date and &#165;<ix:nonFraction unitRef="jpy" contextRef="c-172" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="0" id="f-893">148,831,000</ix:nonFraction> ($<ix:nonFraction unitRef="usd" contextRef="c-172" decimals="-3" name="us-gaap:PaymentsToAcquireBusinessesGross" format="ixt:num-dot-decimal" scale="0" id="f-894">994,000</ix:nonFraction>) was paid during the three-month period ended March&#160;31, 2024 as a final purchase price adjustment based on the closing balance sheet.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_97"></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 18: <ix:nonNumeric contextRef="c-1" name="us-gaap:SubsequentEventsTextBlock" id="f-895" continuedAt="f-895-1" escape="true">Subsequent Events</ix:nonNumeric></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%"><ix:continuation id="f-895-1">On May 2, 2024, the Company&#8217;s Board of Directors declared a cash dividend of $<ix:nonFraction unitRef="usdPerShare" contextRef="c-173" decimals="INF" name="us-gaap:CommonStockDividendsPerShareDeclared" scale="0" id="f-896">0.075</ix:nonFraction> per share. The dividend is payable on May 30, 2024 to all shareholders of record as of the close of business on May 16, 2024.</ix:continuation> </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">23</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_100"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;2: MANAGEMENT&#8217;S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Forward-Looking Statements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">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 Exchange Act. Readers can identify these forward-looking statements by our use of the words &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;estimates,&#8221; "potential," &#8220;believes,&#8221; &#8220;projects,&#8221; &#8220;intends,&#8221; &#8220;plans,&#8221; &#8220;will,&#8221; &#8220;may,&#8221; &#8220;shall,&#8221; &#8220;could,&#8221; &#8220;should,&#8221; "opportunity," "goal" 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 growth opportunities and trends, future financial performance and financial targets, customer demand and order rates and timing of related revenue, managing supply challenges, delivery lead times, future product mix, research and development activities, sales and marketing activities (including our Emerging Customer Program), new product offerings and product development activities, customer acceptance of our products, the potential effects of emerging technologies, capital expenditures, cost management activities, investments, liquidity, dividends and stock repurchases, strategic and growth plans, our ability to maintain and grow key relationships, acquisitions, 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 technological obsolescence of current products and the inability to develop new products, particularly in connection with emerging artificial intelligence technologies; (2) the impact of competitive pressures; (3) the inability to attract and retain skilled employees and maintain our unique corporate culture; (4) the failure to properly manage the distribution of products and services; (5) economic, political, and other risks associated with international sales and operations, including the impact of trade disputes, the economic climate in China, and the wars in Ukraine and Israel; (6) the challenges in integrating and achieving expected results from acquired businesses, including our acquisition of Moritex Corporation; (7) information security breaches; (8) the failure to comply with laws or regulations relating to data privacy or data protection; (9) the inability to protect our proprietary technology and intellectual property; (10) the failure to manufacture and deliver products in a timely manner; (11) the inability to obtain, or the delay in obtaining, components for our products at reasonable prices; (12) the failure to effectively manage product transitions or accurately forecast customer demand; (13) the inability to manage disruptions to our distribution centers or to our key suppliers; (14) the inability to design and manufacture high-quality products; (15) the loss of, or curtailment of purchases by, large customers in the logistics, consumer electronics, or automotive industries; (16) potential impairment charges with respect to our investments or acquired intangible assets; (17) exposure to additional tax liabilities, increases and fluctuations in our effective tax rate, and other tax matters; (18) fluctuations in foreign currency exchange rates and the use of derivative instruments; (19) unfavorable global economic conditions, including high interest rates and fluctuating inflation rates; (20) business disruptions from natural or man-made disasters, such as fire, or public health issues; (21) exposure to potential liabilities, increased costs, reputational harm, and other adverse effects associated with expectations relating to environmental, social, and governance considerations; (22) stock price volatility; and (23) 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&#160;1A of the Company's Annual Report on Form 10-K for the fiscal year ended December 31, 2023, 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.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Executive Overview</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%">Cognex Corporation (the "Company&#8221;) 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 seek to improve efficiency and quality in a wide range of 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; however, service revenue accounted for less than 10% of total revenue for all periods presented.</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%">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. This results in a broad base of potential customers across a variety of industries, including automotive, logistics, consumer electronics, medical-related, semiconductor, consumer products, and food and beverage.</span></div><div style="margin-top:5pt;text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></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%">Revenue for the first quarter of 2024 totaled $210,797,000, representing an increase of 5% from the first quarter of 2023. The increase was primarily driven by incremental revenue arising from the acquisition of Moritex Corporation ("Moritex") that closed in the fourth quarter of 2023 and a strategic logistics project that completed in the first quarter of 2024, partially offset by lower spending trends across our factory automation business. Gross margin as a percentage of revenue was 67% for the first quarter of 2024 as compared to 71% for the first quarter of 2023 due primarily to the impact of a less favorable revenue mix and charges related to the Moritex acquisition.</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%">Operating expenses for the first quarter of 2024 increased 5% from the first quarter of 2023. Investments in our &#8220;Emerging Customer&#8221; sales initiative and incremental costs related to the acquisition of Moritex were partially offset by the impact of cost management activities and lower stock-based compensation expense.</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%">Operating income decreased to 7% of revenue for the first quarter of 2024 as compared to 11% of revenue for the first quarter of 2023. The lower gross margin percentage and continued investment in our "Emerging Customer" sales initiative more than offset higher revenue levels. This lower level of operating income, as well as the unfavorable impact of discrete tax items, resulted in net income of 6% of revenue, or $0.07 per diluted share, for the first quarter of 2024, as compared to 13% of revenue, or $0.15 per diluted share, for the first quarter of 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:700;line-height:120%">Results 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 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&#8217; 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.</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%;text-decoration:underline">Revenue</span></div><div style="margin-bottom:8pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue increased by $9,673,000, or 5%, for the three-month period as compared to the same period in 2023. Revenue from the acquisition of Moritex that closed in the fourth quarter of 2023 contributed just under 8% to total revenue. Revenue from Moritex and a strategic logistics project that completed in the first quarter of 2024 was partially offset by lower spending trends across our factory automation business, most notably in the automotive and consumer electronics industries. The year-over-year decrease in automotive revenue was due to continued softness across the non-electric vehicle business, as well as delayed spending from electric vehicle battery manufacturers. Excluding the strategic project, logistics revenue was relatively flat year-over-year.</span></div><div style="margin-bottom:8pt;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 sets forth our disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands) for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</span></div><div style="margin-bottom:8pt;margin-top:5pt;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 style="width:60.449%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.671%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.654%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">March 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;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%">April 2, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">% Change</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Americas</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">83,135&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">80,442&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">2,693&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">3&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">39&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">40&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Europe</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">52,354&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">59,842&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(7,488)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(13)</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">25&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">30&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Greater China</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">30,049&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">33,172&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(3,123)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">14&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">16&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Other Asia</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">45,259&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">27,668&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">17,591&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">64&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">21&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">14&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Total revenue</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">210,797&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">201,124&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">9,673&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:8pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in revenue from a geographic perspective were as follows: </span></div><div style="margin-bottom:8pt;margin-top:5pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue from customers based in the Americas increased by 3% for the three-month period as compared to the same period in 2023. The increase was primarily driven by a strategic logistics project completed in </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:8pt;margin-top:5pt;padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">the first quarter of 2024, partially offset by continued softness across our factory automation business.</span></div><div style="margin-bottom:8pt;margin-top:5pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue from customers based in Europe decreased by 13% for the three-month period as compared to the same period in 2023. Similar to the Americas, the Europe region continued to experience broader softness across our factory automation business. </span></div><div style="margin-bottom:8pt;margin-top:5pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue from customers based in Greater China decreased by 9% for the three-month period as compared to the same period in 2023. The Greater China region continued to experience a challenging business environment. The impact of lower spending trends was partially offset by the revenue contribution from the Moritex acquisition, as well higher revenue related to a large consumer electronics customer.</span></div><div style="margin-bottom:8pt;margin-top:5pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Revenue from customers based in other countries in Asia increased by 64% for the three-month period as compared to the same period in 2023. The increase was primarily driven by incremental revenue related to the acquisition of Moritex, for which the majority of revenue currently comes from customers based in Japan, as well as higher revenue from customers in the semiconductor and logistics industries. </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Gross Margin</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 sets forth our gross margin (in thousands) for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</span></div><div style="margin-bottom:8pt;margin-top:5pt;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 style="width:60.888%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.653%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">March 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;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%">April 2, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">% Change</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Gross margin</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">141,937&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">143,740&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(1,803)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">67&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">71&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:8pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross margin as a percentage of revenue was 67% and 71% for the three-month periods in 2024 and 2023, respectively. The decrease was due to less favorable revenue mix in the first quarter of 2024 that included a strategic logistics project and Moritex products, both at lower-than-average gross margins. The lower gross margin percentage was also due to charges related to the Moritex acquisition that closed in the fourth quarter of 2023 that included the amortization of acquired technologies (approximately $900,000) and the final sell-through of acquired inventories that were written up to fair value (approximately $1,200,000). These decreases were partially offset by lower inventory costs driven by a reduction in premiums paid to brokers for the purchase of components as supply chain constraints eased.</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%;text-decoration:underline">Operating Expenses</span></div><div style="margin-top:5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth our operating expenses (in thousands) for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:60.888%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.384%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.653%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">March 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;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%">April 2, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">% Change</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Research, development, and engineering expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">37,105&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">38,542&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(1,437)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(4)</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">18&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">19&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Selling, general, and administrative expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">90,628&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">83,037&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">7,591&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">9&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">43&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">41&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Total operating expenses</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">127,733&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">121,579&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">6,154&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">5&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-style:italic;font-weight:400;line-height:100%">Percentage of total revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">61&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:100%">60&#160;</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:9pt;font-style:italic;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Research, Development, and Engineering Expenses</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%">Research, development, and engineering (RD&amp;E) expenses decreased by $1,437,000, or 4%, for the three-month period as compared to the same period in 2023, primarily from lower stock-based compensation expense due to the impact of forfeiture adjustments. Personnel-related costs remained relatively flat, as the additional costs associated with a new team of optical engineers that joined Cognex with the acquisition of Moritex in the fourth quarter of 2023 were offset by lower deferred compensation costs related to the 2019 acquisition of Sualab Co, Ltd. that were fully paid in October 2023 and cost management activities that included the realignment of headcount to business levels.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></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%">RD&amp;E expenses as a percentage of revenue were 18% and 19% for the three-month periods in 2024 and 2023, respectively. We believe that a continued commitment to RD&amp;E activities is essential to maintain or achieve 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 investment cycles.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Selling, General, and Administrative Expenses</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%">Selling, general, and administrative (SG&amp;A) expenses increased by $7,591,000, or 9%, for the three-month period as compared to the same period in 2023. The increase in SG&amp;A expenses was primarily due to increased costs related to our &#8220;Emerging Customer&#8221; sales initiative, including additional headcount, travel expenses, and marketing costs. We launched this initiative in 2023 to serve a broader customer base and deepen penetration of less served markets, and are continuing to increase our investment in 2024.</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%">Costs related to the acquisition of Moritex that closed in the fourth quarter of 2023 also contributed to the higher SG&amp;A expenses. These costs included additional sales and support personnel-related costs, the amortization of acquired customer relationships and trademarks (approximately $1,200,000), and integration costs (approximately $1,300,000).</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%">Lower stock-based compensation expense and cost management activities helped to offset the increase in SG&amp;A expenses, including the realignment of headcount to support the Emerging Customer sales initiative.</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%;text-decoration:underline">Non-operating Income (Expense)</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 sets forth our non-operating income (expense) (in thousands) for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</span></div><div style="margin-top:5pt;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 style="width:60.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.677%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.841%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.653%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">March 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;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%">April 2, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">% Change</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Foreign currency gain (loss)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">46&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">394&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(348)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(88)</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Investment income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">3,120&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">3,587&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(467)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13)</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Other income (expense)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">196&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">73&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">123&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">168&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Total non-operating income (expense)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,362&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,054&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(692)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(17)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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 Company recorded foreign currency gains of $46,000 and $394,000 for the three-month periods in 2024 and 2023, respectively, primarily resulting 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. </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%">Investment income decreased by $467,000, or 13%, for the three-month period as compared to the same period in 2023. The decrease was primarily due to lower average investment balances, partially offset by higher yields on the Company's portfolio of debt securities. During the fourth quarter of 2023, net cash payments related to the acquisition of Moritex reduced cash available to invest by approximately $257 million, which resulted in lower investment income for the first quarter of 2024.</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 other income of $196,000 and $73,000 for the three-month periods in 2024 and 2023, 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%;text-decoration:underline">Income Tax Expense</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 sets forth income tax information (in thousands) for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</span></div><div style="margin-top:5pt;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 style="width:60.157%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.677%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.653%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">Three-months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">March 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;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%">April 2, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;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%">% Change</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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:9pt;font-weight:700;line-height:100%">(unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before income tax expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">17,566&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">26,215&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">(8,649)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">(33)</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income tax expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">5,544&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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:9pt;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:9pt;font-weight:400;line-height:100%">4,944&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">824&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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:9pt;font-weight:400;line-height:100%">Effective income tax rate</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">32&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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:9pt;font-weight:400;line-height:100%">2&#160;</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:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">27</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:8pt;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&#8217;s effective tax rate was 32% and 2% for the three-month periods in 2024 and 2023, respectively.</span></div><div style="margin-bottom:8pt;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 of $3,085,000 for the three-month period in 2024 driven by unfavorable adjustments to certain tax assets and reserves, while in the three-month period in 2023 the Company recorded a net discrete tax benefit of $3,594,000 driven by the release of tax reserves on state tax credits and favorable adjustments to certain deferred tax assets.</span></div><div style="margin-bottom:8pt;margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Excluding the impact of all discrete tax items, the Company's effective tax rate was 14% and 16% for the three-month periods in 2024 and 2023, respectively. The decrease was primarily due to more of the Company's profits being taxed in relatively lower tax rate jurisdictions, as well as an increase in available tax credits.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity and Capital Resources</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 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 $556,619,000 as of March&#160;31, 2024. 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. </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 March&#160;31, 2024, the Company's portfolio of debt securities was in a net unrealized loss position of $9,492,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. </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:85.233%"><tr><td style="width:1.0%"/><td style="width:57.047%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.486%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.424%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.486%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:20.169%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.488%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Operating activities</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%">Net cash provided by operating activities totaled $13,643,000 for the three-month period in 2024. Significant uses of cash consisted of an increase in accounts receivable primarily related to the seasonality of large consumer electronics orders, as well as purchases of inventory.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Investing activities</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%">Net cash used in investing activities totaled $49,023,000 for the three-month period in 2024. Investing activities included capital expenditures that totaled $4,061,000 and consisted primarily of continued investments in business systems, manufacturing test equipment related to new product introductions, as well as building and leasehold improvements.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Financing activities</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%">Net cash used in financing activities totaled $25,088,000 for the three-month period in 2024. </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 March 2022, the Company's Board of Directors authorized the repurchase of $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 231,000 shares at a total cost of $9,339,000 during the three-month period in 2024, leaving a remaining balance of $323,553,000 as of March&#160;31, 2024. 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. </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&#8217;s Board of Directors declared and paid cash dividends of $0.075 per share for the first quarter of 2024, totaling $12,888,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. </span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Future Cash Requirements</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 future material cash requirements include contractual obligations related to inventory purchase commitments and leases. As of March&#160;31, 2024, the Company had inventory purchase commitments of $40,843,000, with the majority payable in the next twelve months, and lease payment obligations of $116,434,000, with $13,809,000 payable in the next twelve months. </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%">Other significant and/or expected cash outlays for 2024 are as follows:</span></div><div style="margin-top:5pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">We expect to continue to make significant cash outlays related to our Emerging Customer sales initiative as we continue to grow our sales force in order to to serve a broader customer base and deepen penetration of less served markets.</span></div><div style="margin-top:5pt;padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The Tax Cuts and Jobs Act of 2017 subjected unrepatriated foreign earnings to a one-time transition tax. As of March 31, 2024, the Company had a remaining balance payable of $33,006,000 through 2025.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></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%">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.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New Pronouncements</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%">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. </span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_103"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;3: QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</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%">There have been no material changes to the Company&#8217;s exposures to market risk since December&#160;31, 2023.</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_106"></div><div style="margin-top:6pt;text-align:justify"><span><br/></span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;4: CONTROLS AND PROCEDURES</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 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 Principal Financial &amp; Accounting 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, except as described below relating to the acquisition of Moritex Corporation, the Chief Executive Officer and the Principal Financial &amp; Accounting Officer concluded that such disclosure controls and procedures were effective as of that date.</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 closed the acquisition of Moritex Corporation on October 18, 2023. The new acquisition's total assets and revenues constituted approximately 5% and 8%, respectively, of the Company&#8217;s consolidated total assets and revenues as shown on our consolidated financial statements as of and for the period ended March 31, 2024. As the acquisition occurred during the fourth quarter of 2023, the Company excluded Moritex Corporation from the scope of the assessment of the effectiveness of the Company&#8217;s internal control over financial reporting and, with respect to the portion of disclosure controls and procedures that are subsumed by internal control over financial reporting of Moritex Corporation, the Company's disclosure controls and procedures. This exclusion is in accordance with the general guidance issued by the Staff of the Securities and Exchange Commission that an assessment of a recently-acquired business may be omitted from the scope for the one-year period following the acquisition if specified conditions are satisfied.</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%">Except as described above, there have been no changes in the Company's internal control over financial reporting that occurred during the quarter ended March&#160;31, 2024 that materially affected, or are reasonably likely to materially affect, the Company's internal control over financial reporting. The Company continues to review its disclosure controls and procedures, including its internal control over financial reporting, and may from time to time make changes aimed at enhancing their effectiveness and to ensure that the Company&#8217;s systems evolve with its business.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">29</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_109"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART II: OTHER INFORMATION</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_112"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;1. LEGAL PROCEEDINGS</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><div id="i0d145b20bee04e9d835eeadbe3048af4_115"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;1A. RISK FACTORS</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%">For a list of factors that could affect the Company&#8217;s business, results of operations, and financial condition, see the risk factors discussion provided in Part I&#8212;Item&#160;1A of the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended December&#160;31, 2023.</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_118"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS</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 sets forth information with respect to purchases by the Company of shares of its common stock during the three-month period ended March&#160;31, 2024:</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 style="width:37.813%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.969%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.969%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.961%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.586%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><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<br/>Number<br/>of Shares<br/>Purchased</span></td><td colspan="3" style="padding:0 1pt"/><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%">Average<br/>Price&#160;Paid<br/>per Share</span></td><td colspan="3" style="padding:0 1pt"/><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&#160;Number&#160;of<br/>Shares<br/>Purchased as<br/>Part of Publicly<br/>Announced<br/>Plans or<br/>Programs (1)</span></td><td colspan="3" style="padding:0 1pt"/><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%">Approximate<br/>Dollar Value<br/>of Shares that<br/>May Yet Be<br/>Purchased<br/>Under the<br/>Plans or<br/>Programs (1)</span></td></tr><tr><td colspan="3" style="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%">January 1, 2024 - January 28, 2024</span></td><td colspan="2" style="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%">&#8212;&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">&#8212;&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="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%">&#8212;&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">332,892,000&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">January 29, 2024 - February 25, 2024</span></td><td colspan="2" style="padding:2px 0 2px 1pt;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,000&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39.30&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;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,000&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330,692,000&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">February 26, 2024 - March 31, 2024</span></td><td colspan="2" style="padding:2px 0 2px 1pt;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,000&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;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.72&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;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,000&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323,553,000&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="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%">Total</span></td><td colspan="2" style="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%">231,000&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">40.38&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="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%">231,000&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="padding:0 1pt"/><td style="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="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%">323,553,000&#160;</span></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="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) On March 3, 2022, the Company's Board of Directors authorized the repurchase of $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.</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_121"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;3. DEFAULTS UPON SENIOR SECURITIES</span></div><div style="margin-top:6pt;text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_124"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;4. MINE SAFETY DISCLOSURES</span></div><div style="margin-top:6pt;text-indent:24.75pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div id="i0d145b20bee04e9d835eeadbe3048af4_127"></div><div style="margin-top:6pt"><span><br/></span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;5. OTHER INFORMATION</span></div><div style="text-indent:22.5pt"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">During the three-month period ended March&#160;31, 2024, none of the Company&#8217;s directors or officers (as defined in Rule 16a-1(f) of the Securities Exchange Act of 1934) <ix:nonNumeric contextRef="c-1" name="ecd:NonRule10b51ArrAdoptedFlag" format="ixt:fixed-false" id="f-897">adopted</ix:nonNumeric>, <ix:nonNumeric contextRef="c-1" name="ecd:NonRule10b51ArrTrmntdFlag" format="ixt:fixed-false" id="f-898">terminated</ix:nonNumeric> 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).</span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">30</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_130"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="-sec-extract:summary"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">ITEM&#160;6. EXHIBITS</span></div><div style="margin-top:5pt"><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 style="width:9.603%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.533%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:87.464%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%;text-decoration:underline">Exhibit Number</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.1+</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="exhibit101-ptagreement.htm">Letter Agreement dated January 3, 2024 between Cognex Corporation and Paul D. Todgham*</a></span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a3312024-10qxexhibit311.htm">Certification of Principal Executive Officer pursuant to Rule 13a-14(a)/15d-14(a) under the Securities Exchange Act of 1934*</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31.2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a3312024-10qxexhibit312.htm">Certification of Principal Financial Officer pursuant to Rule 13a-14(a)/15d-14(a) under the Securities Exchange Act of 1934*</a></span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a3312024-10qxexhibit321.htm">Certification of Principal Executive Officer pursuant to 18 U.S.C. 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002**</a></span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32.2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="a3312024-10qxexhibit322.htm">Certification of Principal Financial Officer pursuant to 18 U.S.C. 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002**</a></span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.SCH</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">Inline XBRL Taxonomy Extension Schema Document*</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.CAL</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">Inline XBRL Taxonomy Extension Calculation Linkbase Document*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.LAB</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">Inline XBRL Taxonomy Extension Label Linkbase Document*</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.PRE</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">Inline XBRL Taxonomy Extension Presentation Linkbase Document*</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">101.DEF</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><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%">Inline XBRL Taxonomy Extension Definition Linkbase Document*</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><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%">Cover Page Interactive Data File (formatted as Inline XBRL with applicable taxonomy extension information contained in Exhibits 101.*)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><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 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%">Filed herewith</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><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 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%">Furnished herewith</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:top"><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 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%">Indicates management contract or compensatory plan or arrangement</span></td></tr></table></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">31</span></div></div></div><div id="i0d145b20bee04e9d835eeadbe3048af4_133"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SIGNATURES</span></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><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 style="width:5.204%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:30.131%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.005%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.738%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:52.422%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="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%">Date:</span></td><td colspan="3" style="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%">May 2, 2024</span></td><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%">&#160;</span></td><td colspan="6" style="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%">COGNEX CORPORATION</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="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%">By:</span></td><td colspan="3" style="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%">/s/ Robert J. Willett</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;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%">Robert J. Willett</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%">President and Chief Executive Officer</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%">(Principal Executive Officer)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="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%">By:</span></td><td colspan="3" style="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%">/s/ Laura A. MacDonald</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;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%">Laura A. MacDonald</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%">Vice President of Finance and Corporate Controller</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><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%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="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%">(Principal Financial Officer)</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">32</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.1
<SEQUENCE>2
<FILENAME>exhibit101-ptagreement.htm
<DESCRIPTION>EX-10.1
<TEXT>
<HTML>
<HEAD><!-- Document generated by Workiva Inc -->
<TITLE>exhibit101-ptagreement</TITLE>
</HEAD>
<BODY bgcolor="white">
<DIV align="center">
<DIV style="margin-left:1em;width:1055;"><!-- exhibit101-ptagreement001.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement001.jpg" title="slide1" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                            Exhibit 10.1            Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com                   PERSONAL AND CONFIDENTIAL      Paul Todgham   [Address]      Re: Resignation Agreement    Dear Paul:  This letter confirms your upcoming separation from employment with Cognex Corporation (the  &#8220;Company&#8221;).  This letter also proposes an agreement between you and the Company.  Entitlements and Obligations    Regardless of whether you enter into an agreement with the Company, the Company will:   &#8226; pay you salary accrued to you through the date of termination of your employment;   &#8226; pay you for all accrued but unused Paid Time Off due to you through the date of termination  of your employment;  &#8226; provide you with the right to continue group health plan coverage after the termination of  your employment under the law known as &#8220;COBRA,&#8221; which will be described in a separate  written notice; and   &#8226; reimburse you for any outstanding, reasonable business expenses that you have incurred on  the Company&#8217;s behalf through the termination of your employment, after the Company&#8217;s  timely receipt of appropriate documentation pursuant to the Company&#8217;s business expense  reimbursement policy.    In addition, you have certain equity agreements with the Company, pursuant to the Company&#8217;s 2007  Stock Option and Incentive Plan (&#8220;Award Agreements&#8221;). You will be entitled to your rights under  and subject to the terms of the Award Agreements regardless of whether you enter this Agreement.  Also, regardless of whether you agree to the Agreement, you will remain subject to the terms of the  Employee Invention, Non-Disclosure and Non-Competition Agreement (the &#8220;Restrictive Covenants  Agreement&#8221;) and any other confidentiality or other  covenant agreement that you entered into with  the Company or any of its affiliates, as well as any other policies and agreements with continuing  obligations (collectively, the &#8220;Continuing Obligations&#8221;) that you entered into with the Company.    </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement002.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement002.jpg" title="slide2" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  Agreement  The remainder of this letter proposes an agreement (the &#8220;Agreement&#8221;) between you and the  Company.  The purpose of this Agreement is to establish an amicable arrangement for ending your  employment relationship, including releasing the Company and related persons or entities from any  claims and permitting you to receive retention pay and related benefits.   You acknowledge that you are entering into this Agreement knowingly and voluntarily.  It is  customary in employment separation agreements for the departing employee to release the employer  from any possible claims, even if the employer believes, as is the case here, that no such claims  exist.  By proposing and entering into this Agreement, the Company is not admitting in any way that  it violated any legal obligation that it owed to you.    With those understandings, you and the Company agree as follows:  Resignation from Employment  Your employment with the Company will end effective March 15, 2024 (the &#8220;Resignation Date&#8221;).  This confirms that you have resigned from your employment with the Company as Senior Vice  President and Chief Financial Officer of the Company, to be effective on the Resignation Date.  You  further confirm that you also resign from any and all other positions that you hold with the Company  and any affiliates of the Company as an officer, director or otherwise effective on the Resignation  Date.  You acknowledge that as of the Company&#8217;s most recent payroll payment of salary to you, you  were fully paid for all salary then due and payable to you based on your employment through the  payroll period applicable to such payroll date.  You acknowledge that as of the date of this letter,  your accrued but unused vacation time totaled 74.84 hours.  If you apply to the Massachusetts  Department of Unemployment Assistance for unemployment compensation benefits under state law,  the Company shall not dispute your eligibility for such benefits.  This shall not affect the Company&#8217;s  obligation to respond truthfully to governmental agency requests for information related to  unemployment compensation eligibility.    Retention Bonus and Consideration for Release  Provided that (i) you use reasonable efforts to perform your responsibilities until the Resignation  Date (the &#8220;Transition Period&#8221;), (ii) remain employed by the Company through the Transition Period,  (iii) execute this letter Agreement within the time period specified below, (iv) do not subsequently  revoke this Agreement, and (v) execute and not revoke the Supplemental Release attached as  Exhibit B to this letter Agreement, covering the Transition Period (collectively, clauses (i) through  (v), the &#8220;Bonus Conditions&#8221;), the Company shall provide you with the pay, benefits and other terms  as set forth below.    </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement003.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement003.jpg" title="slide3" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  Retention Bonus.  The Company shall pay you a retention bonus (&#8220;Retention Bonus&#8221;) consisting of  $300,000 so long as you have satisfied all of the Bonus Conditions. If you have satisfied all of the  Bonus Conditions, the Company intends to pay you the Retention Bonus within five business days  following the effective date of the Supplemental Release.    Supplemental Payments.  In the event you elect to continue your medical and/or dental insurance  coverage under COBRA, the Company shall pay the employer portion (the &#8220;Supplemental  Payments&#8221;) of the applicable premiums for such COBRA coverage so that the cost to you will be no  greater than the cost would be to you for health and dental coverage under the Company&#8217;s group  health and dental plans if you were an active employee of the Company. In the event the COBRA  administrator charges administration fees, you are responsible for payment of such fees.  The  Company shall make the Supplemental Payments effective for the period from the day immediately  following the Resignation Date until the earlier of the eighteen (18)-month anniversary of the  Resignation Date or the date when you commence other employment.  You agree to notify the  Company promptly if you anticipate commencing other employment before the 18-month  anniversary of the Resignation Date, including the date of such anticipated commencement of other  employment.  You also agree to respond promptly and fully to any reasonable requests for  information by the Company concerning your employment status and anticipated employment status  during such 18-month period.    Tax Treatment.  The Company shall make deductions, withholdings and tax reports with respect to  payments and benefits under this Agreement that it reasonably determines to be required.  Payments  under this Agreement shall be in amounts net of any such deductions or withholdings.  Nothing in  this Agreement shall be construed to require the Company to make any payments to compensate you  for any adverse tax effect associated with any payments or benefits or for any deduction or  withholding from any payment or benefit.    Continuing Obligations  You acknowledge that your obligations under the Continuing Obligations shall continue in effect,  including, without limitation, your obligations to maintain the confidentiality of Confidential  Information as defined in the Restrictive Covenants Agreement, to return documents and other  property of the Company and to refrain from certain competition and solicitation activities for a  period of twelve (12) months after the Resignation Date.  A copy of the Restrictive Covenants  Agreement is enclosed as Exhibit A.    Release of Claims  In consideration for, among other terms, the Retention Bonus and the Supplemental Payments, to  which you acknowledge you would otherwise not be entitled, you, on your own behalf and on behalf  of your heirs, executors, administrators, personal representatives, attorneys, and assigns, voluntarily  release and forever discharge the Company, its affiliated and related entities, its and their respective  predecessors, successors and assigns, its and their respective employee benefit plans and fiduciaries  of such plans, and the current and former officers, directors, shareholders, employees, attorneys,  accountants and agents of each of the foregoing in their official and personal capacities (collectively  referred to as the &#8220;Releasees&#8221;) generally from all claims, demands, debts, damages and liabilities of  </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement004.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement004.jpg" title="slide4" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  every name and nature, known or unknown (&#8220;Claims&#8221;) that, as of the date when you sign this  Agreement, you have, ever had, now claim to have or ever claimed to have had against any or all of  the Releasees.  This release includes, without limitation, all Claims:  &#8226; relating to your employment by and termination of employment with the Company;   &#8226; of wrongful discharge or violation of public policy;   &#8226; of breach of contract;   &#8226; of defamation or other torts;   &#8226; of retaliation or discrimination under federal, state or local law (including, without limitation,  Claims of discrimination or retaliation under the Age Discrimination in Employment Act, the  Americans with Disabilities Act, and Title VII of the Civil Rights Act of 1964);   &#8226; under any other federal or state statute (including, without limitation, Claims under the Worker  Adjustment and Retraining Notification Act or the Fair Labor Standards Act);  &#8226; for wages, bonuses, incentive compensation, stock, stock options, vacation pay or any other  compensation or benefits, either under the Massachusetts Wage Act, M.G.L. c. 149, &sect;&sect;148-150C,  or otherwise; and  &#8226; for damages or other remedies of any sort, including, without limitation, compensatory damages,  punitive damages, injunctive relief and attorney&#8217;s fees;     provided, however, that this release shall not affect your vested rights under the Company&#8217;s  Section 401(k) plan, the Award Agreements, rights as a stockholder of the Company, rights to be  covered under applicable indemnification agreements and policies and under applicable directors  and officers liability insurance for acts or omissions while serving as an executive of the Company,  Claims that cannot be waived by law, and your rights under this Agreement.    You acknowledge that the termination of your employment in accordance with this Agreement shall  not give rise to any Claims.  Transitional Services   You agree to provide up to ten (10) hours of transitional services to the Company through June 1,  2024 at any reasonable times requested by the Company; provided that the Company shall not  require you to provide any such services at any times that would unreasonably interfere with your  search for employment or with any subsequent employment.  Future Cooperation    You agree to cooperate reasonably with the Company and all of its affiliates (including its and their  outside counsel) in connection with (i) the contemplation, prosecution and defense of all phases of  existing, past and future litigation about which the Company believes you may have knowledge or  information; and (ii) responding to requests for information from regulatory agencies or other  governmental authorities (together &#8220;Cooperation Services&#8221;).  In the event you receive a subpoena,  deposition notice, interview request or any other inquiry, process, or order relating to any civil,  criminal, or administrative investigation, suit, proceeding or other matter relating to the Releasees  from any investigator, attorney, or any other third party, you agree to promptly notify the  </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement005.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement005.jpg" title="slide5" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  undersigned by telephone and in writing.  You further agree to make yourself available to provide  Cooperation Services at mutually convenient times during and outside of regular business hours as  reasonably deemed necessary by the Company&#8217;s counsel.  The Company shall not utilize this section  to require you to make yourself available to an extent that would unreasonably interfere with full- time employment responsibilities that you may have.  Cooperation Services include, without  limitation, appearing without the necessity of a subpoena to testify truthfully in any legal  proceedings in which the Company or an affiliate calls you as a witness.  The Company shall  reimburse you for any reasonable travel expenses that you incur due to your performance of  Cooperation Services, after receipt of appropriate documentation consistent with the Company&#8217;s  business expense reimbursement policy.  In addition, for all time that you reasonably expend in  providing Cooperation Services after the end of the Transition Period and beyond the ten (10) hours  of transitional services to the Company through June 1, 2024, the Company shall compensate you at  the rate of $150 per hour; provided that your right to such compensation shall not apply to time  spent in activities that could have been compelled pursuant to a subpoena, including testimony and  related attendance at depositions, hearings or trials.    Non-Disparagement  Subject to the &#8220;Protected Disclosure and Other Protected Actions&#8221; below, you agree not to make any  disparaging statements concerning the Company or any of its affiliates, products, services, or current  or former officers, directors, employees or agents.    Protected Disclosures and Other Protected Actions  Nothing contained in this Agreement, any other agreement with the Company, or any Company  policy limits your ability, with or without notice to the Company, to: (i) file a charge or complaint  with any federal, state or local governmental agency or commission (a &#8220;Government Agency&#8221;),  including without limitation, the Equal Employment Opportunity Commission, the National Labor  Relations Board or the Securities and Exchange Commission (the &#8220;SEC&#8221;); (ii) communicate with  any Government Agency or otherwise participate in any investigation or proceeding that may be  conducted by any Government Agency, including by providing non-privileged documents or  information; (iii) exercise any rights under Section 7 of the National Labor Relations Act, which are  available to non-supervisory employees, including assisting co-workers with or discussing any  employment issue as part of engaging in concerted activities for the purpose of mutual aid or  protection; (iv) discuss or disclose information about unlawful acts in the workplace, such as  harassment or discrimination or any other conduct that you have reason to believe is unlawful; or (v)  testify truthfully in a legal proceeding.  Any such communications and disclosures must not violate  applicable law and the information disclosed must not have been obtained through a communication  that was subject to the attorney-client privilege (unless disclosure of that information would  otherwise be permitted consistent with such privilege or applicable law). If a Government Agency or  any other third party pursues any claim on your behalf, you waive any right to monetary or other  individualized relief (either individually or as part of any collective or class action), but the  Company will not limit any right you may have to receive an award pursuant to the whistleblower  provisions of any applicable law or regulation for providing information to the SEC or any other  Government Agency.   In addition, for the avoidance of doubt, pursuant to the federal Defend Trade  </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement006.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement006.jpg" title="slide6" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  Secrets Act of 2016, you shall not be held criminally or civilly liable under any federal or state trade  secret law or under this Agreement, the Restrictive Covenants Agreement, or the Award Agreements  for the disclosure of a trade secret that (a) is made (i) in confidence to a federal, state, or local  government official, either directly or indirectly, or to an attorney; and (ii) solely for the purpose of  reporting or investigating a suspected violation of law; or (b) is made in a complaint or other  document filed in a lawsuit or other proceeding, if such filing is made under seal.      Other Provisions  Termination of Payments.  If you breach any of your obligations under this Agreement or the  Continuing Obligations, in addition to any other legal or equitable remedies it may have for such  breach, the Company shall have the right to terminate its payments to you or for your benefit under  this Agreement.  The termination of such payments in the event of your breach will not affect your  continuing obligations under this Agreement.  Absence of Reliance.  In signing this Agreement, you are not relying upon any promises or  representations made by anyone at or on behalf of the Company.    Enforceability.  If any portion or provision of this Agreement (including, without limitation, any  portion or provision of any section of this Agreement) shall to any extent be declared illegal or  unenforceable by a court of competent jurisdiction, then the remainder of this Agreement, or the  application of such portion or provision in circumstances other than those as to which it is so  declared illegal or unenforceable, shall not be affected thereby, and each portion and provision of  this Agreement shall be valid and enforceable to the fullest extent permitted by law.    Waiver.  No waiver of any provision of this Agreement shall be effective unless made in writing and  signed by the waiving party.  The failure of a party to require the performance of any term or  obligation of this Agreement, or the waiver by a party of any breach of this Agreement, shall not  prevent any subsequent enforcement of such term or obligation or be deemed a waiver of any  subsequent breach.    Jurisdiction.  You and the Company hereby agree that the Superior Court of the Commonwealth of  Massachusetts and the United States District Court for the District of Massachusetts shall have the  exclusive jurisdiction to consider any matters related to this Agreement, including, without  limitation, any claim of a violation of this Agreement.  With respect to any such court action, you  submit to the jurisdiction of such courts and you acknowledge that venue in such courts is proper.    Relief.  You agree that it would be difficult to measure any harm caused to the Company that might  result from any breach by you of your promises set forth in this letter Agreement.  You further agree  that money damages would be an inadequate remedy for any breach of any of this letter Agreement.   Accordingly, you agree that if you breach, or propose to breach, any portion of your obligations, the  Company shall be entitled, in addition to all other remedies it may have, to an injunction or other  appropriate equitable relief to restrain any such breach, without showing or proving any actual  damage to the Company and without the necessity of posting a bond.  If the Company prevails in  any action to enforce this Agreement, then you also shall be liable to the Company for reasonable  attorney&#8217;s fees and costs incurred by the Company.    </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement007.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement007.jpg" title="slide7" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  Governing Law; Interpretation.  This Agreement shall be interpreted and enforced under the laws of  the Commonwealth of Massachusetts, without regard to conflict of law principles.  In the event of  any dispute, this Agreement is intended by the parties to be construed as a whole, to be interpreted in  accordance with its fair meaning, and not to be construed strictly for or against either you or the  Company or the &#8220;drafter&#8221; of all or any portion of this Agreement.    Entire Agreement.  This Agreement, including the Supplemental Release, constitutes the entire  agreement between you and the Company with respect to the subject matter hereof.  This Agreement  supersedes any previous agreements or understandings between you and the Company, except the  Continuing Obligations, the Award Agreements, and any other obligations specifically preserved in  this Agreement.    Time for Consideration; Effective Date.  You acknowledge that you have knowingly and voluntarily  entered into this Agreement and that the Company advises you to consult with an attorney before  signing this Agreement.  You understand and acknowledge that you have been given the opportunity  to consider this Agreement for twenty-one (21) days from your receipt of this Agreement before  signing it (the &#8220;Consideration Period&#8221;).  To accept this Agreement, you must return a signed original  or a signed PDF copy of this Agreement so that it is received by Sheila DiPalma at or before the  expiration of the Consideration Period.  If you sign this Agreement before the end of the  Consideration Period, you acknowledge that such decision was entirely voluntary and that you had  the opportunity to consider this Agreement for the entire Consideration Period.  For the period of  seven (7) days from the date when you sign this Agreement, you have the right to revoke this  Agreement by written notice to Ms. DiPalma, provided that such notice is delivered so that it is  received at or before the expiration of the seven (7) day revocation period.  This Agreement shall not  become effective or enforceable during the revocation period.  This Agreement shall become  effective on the first business day following the expiration of the revocation period (the &#8220;Effective  Date&#8221;).    Counterparts.  This Agreement may be executed in separate counterparts.  When both counterparts  are signed, they shall be treated together as one and the same document.  Please indicate your agreement to the terms of this Agreement by signing and returning to Ms.  DiPalma the original or a PDF copy of this letter within the time period set forth above.  [Signature page follows]     </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
<!-- exhibit101-ptagreement008.jpg -->
<DIV style="padding-top:2em;">
<IMG src="exhibit101-ptagreement008.jpg" title="slide8" width="1055" height="1365">
<DIV><FONT size="1" style="font-size:1pt;color:white">                                                                  Cognex Corporation         One Vision Drive         Natick, MA 01760-2059         (508) 650-3000          www.cognex.com  Sincerely,  COGNEX CORPORATION    By:__/s/ Robert J. Willett___________________ 1/3/2024______________________________   Robert J. Willett    Date   President and Chief Executive Officer    Enclosures (Exhibit A&#8212;Restrictive Covenant Agreement; Exhibit B &#8211; Supplemental Release)    You are advised to consult with an attorney before signing this Agreement. This is a legal document.   Your signature will commit you to its terms.  By signing below, you acknowledge that you have  carefully read and fully understand all of the provisions of this Agreement and that you are  knowingly and voluntarily entering into this Agreement.    /s/ Paul Todgham______________________  1/3/2024       Paul Todgham      Date         </FONT></DIV>
<P><HR noshade><P>
<DIV style="page-break-before:always;">&nbsp;</DIV>
</DIV>
</DIV>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>a3312024-10qxexhibit311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2024 Workiva -->
<title>Document</title></head><body><div id="iff1508fb7622458db372fe7f913e4d33_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.1</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">CERTIFICATION</font></div><div style="margin-top:12pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Robert J. Willett, certify that&#58;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1&#160;&#160;&#160;&#160;I have reviewed this quarterly report on Form 10-Q of Cognex Corporation&#59;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2&#160;&#160;&#160;&#160;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&#59;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3&#160;&#160;&#160;&#160;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&#59;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4&#160;&#160;&#160;&#160;The registrant&#8217;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&#58;</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">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&#59;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">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&#59;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt">Evaluated the effectiveness of the registrant&#8217;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&#59; and</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(d)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">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&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div style="margin-top:5pt"><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:4.765%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:31.744%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.999%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.152%"></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:53.007%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 2, 2024</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Robert J. Willett</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert J. Willett</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Principal Executive Officer)</font></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>4
<FILENAME>a3312024-10qxexhibit312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2024 Workiva -->
<title>Document</title></head><body><div id="i9a1a3f41a0df4944976b5b1b60d17082_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.2</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">CERTIFICATION</font></div><div style="margin-top:6pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Laura A. MacDonald, certify that&#58;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1&#160;&#160;&#160;&#160;I have reviewed this quarterly report on Form 10-Q of Cognex Corporation&#59;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2&#160;&#160;&#160;&#160;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&#59;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3&#160;&#160;&#160;&#160;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&#59;</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4&#160;&#160;&#160;&#160;The registrant&#8217;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&#58;</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">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&#59;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">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&#59;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:6.34pt">Evaluated the effectiveness of the registrant&#8217;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&#59; and</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(d)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="text-align:justify"><font><br></font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5&#160;&#160;&#160;&#160;The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58;</font></div><div style="text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:6pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">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&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="padding-left:51.75pt;text-align:justify;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:5.78pt">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.</font></div><div style="margin-top:5pt"><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:6.084%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:31.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.999%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.152%"></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:52.421%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 2, 2024</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Laura A. MacDonald</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Laura A. MacDonald</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vice President of Finance and Corporate Controller</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Principal Financial Officer)</font></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>5
<FILENAME>a3312024-10qxexhibit321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2024 Workiva -->
<title>Document</title></head><body><div id="i3f560662e0c94ae3a97d3a25609bd7c4_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.1*</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATION PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18 U.S.C. 1350,</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">AS ADOPTED PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The undersigned officer of Cognex Corporation (the &#8220;Company&#8221;) hereby certifies to his knowledge that the Company&#8217;s quarterly report on Form 10-Q for the quarterly period ended March&#160;31, 2024 (the &#8220;Report&#8221;), as filed with the Securities and Exchange Commission on the date hereof, fully complies with the requirements of Section&#160;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.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></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:7.099%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:31.696%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.410%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.145%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:52.050%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 2, 2024</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Robert J. Willett</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert J. Willett</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Principal Executive Officer)</font></td></tr></table></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><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:2.853%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:94.947%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">This certification shall not be deemed &#8220;filed&#8221; for purposes of Section&#160;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.</font></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>6
<FILENAME>a3312024-10qxexhibit322.htm
<DESCRIPTION>EX-32.2
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2024 Workiva -->
<title>Document</title></head><body><div id="ia96c540953fd4f95807d471717b7c9ff_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.2*</font></div><div style="margin-top:12pt;text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">CERTIFICATION PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18 U.S.C. 1350,</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">AS ADOPTED PURSUANT TO</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</font></div><div style="margin-top:12pt;text-align:justify"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The undersigned officer of Cognex Corporation (the &#8220;Company&#8221;) hereby certifies to her knowledge that the Company&#8217;s quarterly report on Form 10-Q for the quarterly period ended March&#160;31, 2024 (the &#8220;Report&#8221;), as filed with the Securities and Exchange Commission on the date hereof, fully complies with the requirements of Section&#160;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.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></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:7.245%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:28.621%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.142%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.170%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:53.222%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 2, 2024</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Laura A. MacDonald</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Laura A. MacDonald</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vice President of Finance and Corporate Controller</font></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:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Principal Financial Officer)</font></td></tr></table></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#160;</font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><font><br></font></div><div><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:2.853%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:94.947%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">This certification shall not be deemed &#8220;filed&#8221; for purposes of Section&#160;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.</font></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>7
<FILENAME>cgnx-20240331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2024 Workiva-->
<!--r:dfad6519-e7c9-43ce-99d4-1de89517fce0,g:98c12c7f-ecb7-4934-b1a1-7d9003090dce-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:cgnx="http://www.cognex.com/20240331" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types1="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.cognex.com/20240331">
  <xs:import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/currency/2023" schemaLocation="https://xbrl.sec.gov/currency/2023/currency-2023.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/ecd/2023" schemaLocation="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20240331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20240331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20240331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="cgnx-20240331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.cognex.com/role/CoverPage">
        <link:definition>0000001 - Document - Cover Page</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofOperations" roleURI="http://www.cognex.com/role/ConsolidatedStatementsofOperations">
        <link:definition>0000002 - Statement - Consolidated Statements of Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofComprehensiveIncome" roleURI="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome">
        <link:definition>0000003 - Statement - Consolidated Statements of Comprehensive Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofComprehensiveIncomeParenthetical" roleURI="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical">
        <link:definition>0000004 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheets" roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets">
        <link:definition>0000005 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>0000006 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofCashFlows" roleURI="http://www.cognex.com/role/ConsolidatedStatementsofCashFlows">
        <link:definition>0000007 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementofShareholdersEquity" roleURI="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity">
        <link:definition>0000008 - Statement - Consolidated Statement of Shareholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementofShareholdersEquityParenthetical" roleURI="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical">
        <link:definition>0000009 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPolicies" roleURI="http://www.cognex.com/role/SummaryofSignificantAccountingPolicies">
        <link:definition>0000010 - Disclosure - Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NewPronouncements" roleURI="http://www.cognex.com/role/NewPronouncements">
        <link:definition>0000011 - Disclosure - New Pronouncements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurements" roleURI="http://www.cognex.com/role/FairValueMeasurements">
        <link:definition>0000012 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestments" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestments">
        <link:definition>0000013 - Disclosure - Cash, Cash Equivalents, and Investments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Inventories" roleURI="http://www.cognex.com/role/Inventories">
        <link:definition>0000014 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Leases" roleURI="http://www.cognex.com/role/Leases">
        <link:definition>0000015 - Disclosure - Leases</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Goodwill" roleURI="http://www.cognex.com/role/Goodwill">
        <link:definition>0000016 - Disclosure - Goodwill</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssets" roleURI="http://www.cognex.com/role/IntangibleAssets">
        <link:definition>0000017 - Disclosure - Intangible Assets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyObligations" roleURI="http://www.cognex.com/role/WarrantyObligations">
        <link:definition>0000018 - Disclosure - Warranty Obligations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentandContingencies" roleURI="http://www.cognex.com/role/CommitmentandContingencies">
        <link:definition>0000019 - Disclosure - Commitment and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstruments" roleURI="http://www.cognex.com/role/DerivativeInstruments">
        <link:definition>0000020 - Disclosure - Derivative Instruments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognition" roleURI="http://www.cognex.com/role/RevenueRecognition">
        <link:definition>0000021 - Disclosure - Revenue Recognition</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpense" roleURI="http://www.cognex.com/role/StockBasedCompensationExpense">
        <link:definition>0000022 - Disclosure - Stock-Based Compensation Expense</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockRepurchaseProgram" roleURI="http://www.cognex.com/role/StockRepurchaseProgram">
        <link:definition>0000023 - Disclosure - Stock Repurchase Program</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://www.cognex.com/role/IncomeTaxes">
        <link:definition>0000024 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageShares" roleURI="http://www.cognex.com/role/WeightedAverageShares">
        <link:definition>0000025 - Disclosure - Weighted-Average Shares</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BusinessCombinations" roleURI="http://www.cognex.com/role/BusinessCombinations">
        <link:definition>0000026 - Disclosure - Business Combinations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEvents" roleURI="http://www.cognex.com/role/SubsequentEvents">
        <link:definition>0000027 - Disclosure - Subsequent Events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesPolicies" roleURI="http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies">
        <link:definition>9954471 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsTables" roleURI="http://www.cognex.com/role/FairValueMeasurementsTables">
        <link:definition>9954472 - Disclosure - Fair Value Measurements (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsTables" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables">
        <link:definition>9954473 - Disclosure - Cash, Cash Equivalents, and Investments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesTables" roleURI="http://www.cognex.com/role/InventoriesTables">
        <link:definition>9954474 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesTables" roleURI="http://www.cognex.com/role/LeasesTables">
        <link:definition>9954475 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillTables" roleURI="http://www.cognex.com/role/GoodwillTables">
        <link:definition>9954476 - Disclosure - Goodwill (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssetsTables" roleURI="http://www.cognex.com/role/IntangibleAssetsTables">
        <link:definition>9954477 - Disclosure - Intangible Assets (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyObligationsTables" roleURI="http://www.cognex.com/role/WarrantyObligationsTables">
        <link:definition>9954478 - Disclosure - Warranty Obligations (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsTables" roleURI="http://www.cognex.com/role/DerivativeInstrumentsTables">
        <link:definition>9954479 - Disclosure - Derivative Instruments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionTables" roleURI="http://www.cognex.com/role/RevenueRecognitionTables">
        <link:definition>9954480 - Disclosure - Revenue Recognition (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseTables" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseTables">
        <link:definition>9954481 - Disclosure - Stock-Based Compensation Expense (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageSharesTables" roleURI="http://www.cognex.com/role/WeightedAverageSharesTables">
        <link:definition>9954482 - Disclosure - Weighted-Average Shares (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BusinessCombinationsTables" roleURI="http://www.cognex.com/role/BusinessCombinationsTables">
        <link:definition>9954483 - Disclosure - Business Combinations (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsDetails" roleURI="http://www.cognex.com/role/FairValueMeasurementsDetails">
        <link:definition>9954484 - Disclosure - Fair Value Measurements (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails">
        <link:definition>9954485 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsNarrativeDetails" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails">
        <link:definition>9954486 - Disclosure - Cash, Cash Equivalents, and Investments - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails">
        <link:definition>9954487 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails">
        <link:definition>9954488 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails">
        <link:definition>9954489 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails">
        <link:definition>9954490 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesDetails" roleURI="http://www.cognex.com/role/InventoriesDetails">
        <link:definition>9954491 - Disclosure - Inventories (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesNarrativeDetails" roleURI="http://www.cognex.com/role/LeasesNarrativeDetails">
        <link:definition>9954492 - Disclosure - Leases - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" roleURI="http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails">
        <link:definition>9954493 - Disclosure - Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="GoodwillDetails" roleURI="http://www.cognex.com/role/GoodwillDetails">
        <link:definition>9954494 - Disclosure - Goodwill (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssetsDetails" roleURI="http://www.cognex.com/role/IntangibleAssetsDetails">
        <link:definition>9954495 - Disclosure - Intangible Assets (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IntangibleAssetsDetails_1" roleURI="http://www.cognex.com/role/IntangibleAssetsDetails_1">
        <link:definition>9954495 - Disclosure - Intangible Assets (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyObligationsDetail" roleURI="http://www.cognex.com/role/WarrantyObligationsDetail">
        <link:definition>9954496 - Disclosure - Warranty Obligations (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentandContingenciesDetails" roleURI="http://www.cognex.com/role/CommitmentandContingenciesDetails">
        <link:definition>9954497 - Disclosure - Commitment and Contingencies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsNarrativeDetails" roleURI="http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails">
        <link:definition>9954498 - Disclosure - Derivative Instruments - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsOutstandingForwardContractsTableDetails" roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails">
        <link:definition>9954499 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails">
        <link:definition>9954500 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsOffsettingAssetsDetails" roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails">
        <link:definition>9954501 - Disclosure - Derivative Instruments - Offsetting Assets (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails">
        <link:definition>9954502 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails">
        <link:definition>9954503 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails">
        <link:definition>9954504 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionAdditionalInformationDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails">
        <link:definition>9954505 - Disclosure - Revenue Recognition - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionScheduleofAllowanceforCreditLossDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails">
        <link:definition>9954506 - Disclosure - Revenue Recognition - Schedule of Allowance for Credit Loss (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognitionDeferredRevenueActivityDetails" roleURI="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails">
        <link:definition>9954507 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseNarrativeDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails">
        <link:definition>9954508 - Disclosure - Stock-Based Compensation Expense - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails">
        <link:definition>9954509 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails">
        <link:definition>9954510 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails">
        <link:definition>9954511 - Disclosure - Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails">
        <link:definition>9954512 - Disclosure - Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails">
        <link:definition>9954513 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockRepurchaseProgramDetails" roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetails">
        <link:definition>9954514 - Disclosure - Stock Repurchase Program (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesDetails" roleURI="http://www.cognex.com/role/IncomeTaxesDetails">
        <link:definition>9954515 - Disclosure - Income Taxes (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageSharesCalculationofWeightedAverageSharesDetails" roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails">
        <link:definition>9954516 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WeightedAverageSharesNarrativeDetails" roleURI="http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails">
        <link:definition>9954517 - Disclosure - Weighted-Average Shares - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BusinessCombinationsDetails" roleURI="http://www.cognex.com/role/BusinessCombinationsDetails">
        <link:definition>9954518 - Disclosure - Business Combinations (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEventsDetails" roleURI="http://www.cognex.com/role/SubsequentEventsDetails">
        <link:definition>9954519 - Disclosure - Subsequent Events (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="cgnx_CurrencytranslationadjustmentsAbstract" abstract="true" name="CurrencytranslationadjustmentsAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" abstract="false" name="EstimatedForfeitureRateForUnvestedOptionsForCEO" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="cgnx_CustomerContractsAndRelationshipsMember" abstract="true" name="CustomerContractsAndRelationshipsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" abstract="false" name="LesseeOperatingLeaseOptionToRenewTermOfContract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="cgnx_NonCurrentAssetsMember" abstract="true" name="NonCurrentAssetsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" abstract="false" name="AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" abstract="true" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" abstract="false" name="EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" abstract="false" name="EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types1:percentItemType"/>
  <xs:element id="cgnx_SellingGeneralAndAdministrativeMember" abstract="true" name="SellingGeneralAndAdministrativeMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" abstract="false" name="EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_TaxYearsOpenToExaminationByInternalRevenueService" abstract="false" name="TaxYearsOpenToExaminationByInternalRevenueService" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="cgnx_RepurchaseProgramMarch2022Member" abstract="true" name="RepurchaseProgramMarch2022Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" abstract="false" name="IncomeTaxExaminationYearsUnderExaminationOtherEntities" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="cgnx_MoritexCorporationMember" abstract="true" name="MoritexCorporationMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" abstract="false" name="DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" abstract="false" name="AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_ExpirationPeriodOfStockOptionPlan" abstract="false" name="ExpirationPeriodOfStockOptionPlan" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" abstract="false" name="UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" abstract="true" name="DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" abstract="false" name="SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" abstract="false" name="UnrecognizedTaxBenefitsGrossNoncurrentLiability" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_BusinessCombinationEnterpriseValue" abstract="false" name="BusinessCombinationEnterpriseValue" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_OutstandingForwardContractsTableTextBlock" abstract="false" name="OutstandingForwardContractsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:textBlockItemType"/>
  <xs:element id="cgnx_CertificateOfDepositFairValueDisclosure" abstract="false" name="CertificateOfDepositFairValueDisclosure" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_RepurchaseProgramMarch2020Member" abstract="true" name="RepurchaseProgramMarch2020Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" abstract="true" name="CognexCorporation2021And2007StockOptionAndIncentivePlansMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="cgnx_A88000SquareFootPremisesMember" abstract="true" name="A88000SquareFootPremisesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" abstract="false" name="EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="cgnx_LossGainFromCatastrophes" abstract="false" name="LossGainFromCatastrophes" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_ExcessAndObsoleteInventoryCharges" abstract="false" name="ExcessAndObsoleteInventoryCharges" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_GeneralStockOptionPlanMember" abstract="true" name="GeneralStockOptionPlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_StandardProductsandServicesMember" abstract="true" name="StandardProductsandServicesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" abstract="false" name="StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="cgnx_SouthboroughMassachusettsMember" abstract="true" name="SouthboroughMassachusettsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_A27000SquareFootPremisesMember" abstract="true" name="A27000SquareFootPremisesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" abstract="false" name="EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types1:percentItemType"/>
  <xs:element id="cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" abstract="false" name="AccountsReceivableAllowanceForCreditLossWriteoffRecovery" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_NumberOfGroupsWithinEmployeePopulation" abstract="false" name="NumberOfGroupsWithinEmployeePopulation" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" abstract="true" name="CognexCorporation2023StockOptionAndIncentivePlanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="cgnx_CurrentAssetsMember" abstract="true" name="CurrentAssetsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" abstract="false" name="AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" abstract="false" name="CashCashEquivalentsShortTermAndLongTermInvestments" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" abstract="false" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" abstract="false" name="ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" abstract="false" name="IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" abstract="false" name="AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" abstract="false" name="AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_TreasuryStockAdditionalSharesAcquired" abstract="false" name="TreasuryStockAdditionalSharesAcquired" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" abstract="false" name="ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:textBlockItemType"/>
  <xs:element id="cgnx_AsiaExcludingChinaMember" abstract="true" name="AsiaExcludingChinaMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_FairValueAdjustmentOnAcquiredInventories" abstract="false" name="FairValueAdjustmentOnAcquiredInventories" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" abstract="false" name="AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_LesseeOperatingLeaseComponents" abstract="false" name="LesseeOperatingLeaseComponents" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" abstract="false" name="DeferredRevenueForeignCurrencyExchangeAdjustment" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="cgnx_ApplicationSpecificCustomerSolutionsMember" abstract="true" name="ApplicationSpecificCustomerSolutionsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="cgnx_LiabilityForUncertainTaxPositions" abstract="false" name="LiabilityForUncertainTaxPositions" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>8
<FILENAME>cgnx-20240331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2024 Workiva-->
<!--r:dfad6519-e7c9-43ce-99d4-1de89517fce0,g:98c12c7f-ecb7-4934-b1a1-7d9003090dce-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofOperations"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_8aa31903-9cc3-4c90-8fd7-873f62c99e0d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_07dec74b-c42b-4bda-9a9c-2b16b88f9608" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_8aa31903-9cc3-4c90-8fd7-873f62c99e0d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_07dec74b-c42b-4bda-9a9c-2b16b88f9608" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_9d8e4339-5972-46cd-9f11-40d8749e789d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_8aa31903-9cc3-4c90-8fd7-873f62c99e0d" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_9d8e4339-5972-46cd-9f11-40d8749e789d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_1187afbc-71d3-4468-94a5-aba90dce0f12" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_401279c5-e599-4ff7-87cd-0012e9d3fb0a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_1187afbc-71d3-4468-94a5-aba90dce0f12" xlink:to="loc_us-gaap_OperatingIncomeLoss_401279c5-e599-4ff7-87cd-0012e9d3fb0a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_25c39d8d-6832-4ccb-a69b-685b7893c5cc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_1187afbc-71d3-4468-94a5-aba90dce0f12" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_25c39d8d-6832-4ccb-a69b-685b7893c5cc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeNonoperating_575a3930-30f9-4866-88b0-e9c725dedb51" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNonoperating"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_1187afbc-71d3-4468-94a5-aba90dce0f12" xlink:to="loc_us-gaap_InvestmentIncomeNonoperating_575a3930-30f9-4866-88b0-e9c725dedb51" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_b0058d15-0ed5-4f41-81e4-6093d5e03004" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_1187afbc-71d3-4468-94a5-aba90dce0f12" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_b0058d15-0ed5-4f41-81e4-6093d5e03004" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_8612c0ea-d633-4929-82ab-2445825c1b79" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_797ffc5c-279c-4054-b40b-15bf32b6456e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8612c0ea-d633-4929-82ab-2445825c1b79" xlink:to="loc_us-gaap_GrossProfit_797ffc5c-279c-4054-b40b-15bf32b6456e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_185933c8-1c54-456f-ba57-4e0443515db4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8612c0ea-d633-4929-82ab-2445825c1b79" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_185933c8-1c54-456f-ba57-4e0443515db4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_35475bf0-2c23-4727-8e05-bac7131edcba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8612c0ea-d633-4929-82ab-2445825c1b79" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_35475bf0-2c23-4727-8e05-bac7131edcba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LossGainFromCatastrophes_a05a9c14-9e7f-4193-974a-f7369f6b6523" xlink:href="cgnx-20240331.xsd#cgnx_LossGainFromCatastrophes"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_8612c0ea-d633-4929-82ab-2445825c1b79" xlink:to="loc_cgnx_LossGainFromCatastrophes_a05a9c14-9e7f-4193-974a-f7369f6b6523" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_b24b4622-dbdf-45d5-bbfe-9acdd37a24b7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_51b8f292-08d1-4108-9b2b-155bddea04ec" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_b24b4622-dbdf-45d5-bbfe-9acdd37a24b7" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_51b8f292-08d1-4108-9b2b-155bddea04ec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_37a3f209-6243-487a-8a0f-de0d8e3ab1a8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_b24b4622-dbdf-45d5-bbfe-9acdd37a24b7" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_37a3f209-6243-487a-8a0f-de0d8e3ab1a8" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_6ca97a59-b821-4858-92ba-089b6e5c9515" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_9c3b8135-1007-41a1-8f29-0bcae66645d9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_6ca97a59-b821-4858-92ba-089b6e5c9515" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_9c3b8135-1007-41a1-8f29-0bcae66645d9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_383b9611-4d65-40c8-9ab6-5898002e1db5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_ee778427-3160-4107-a052-60410811175c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_383b9611-4d65-40c8-9ab6-5898002e1db5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_ee778427-3160-4107-a052-60410811175c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_e6c88195-1013-4221-9d61-42ea07b5706b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_383b9611-4d65-40c8-9ab6-5898002e1db5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_e6c88195-1013-4221-9d61-42ea07b5706b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_2ba90cee-b0ce-4c97-8470-f848a8fbd5e4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_c68a92cd-51ea-4415-85cb-02a8223c2aac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_2ba90cee-b0ce-4c97-8470-f848a8fbd5e4" xlink:to="loc_us-gaap_NetIncomeLoss_c68a92cd-51ea-4415-85cb-02a8223c2aac" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_213e37ec-c48b-4c85-8a52-d2816b519ed8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_2ba90cee-b0ce-4c97-8470-f848a8fbd5e4" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_213e37ec-c48b-4c85-8a52-d2816b519ed8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_ce8917c5-1ef9-4238-b445-0f668d507903" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_b34c6cab-8975-4592-b93b-aad0f97c7954" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_ce8917c5-1ef9-4238-b445-0f668d507903" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_b34c6cab-8975-4592-b93b-aad0f97c7954" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_03ae1609-85ce-417d-9b88-350486cc0507" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_ce8917c5-1ef9-4238-b445-0f668d507903" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_03ae1609-85ce-417d-9b88-350486cc0507" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_91d4720b-21ad-4ace-b7d3-c1a709daa74f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_75221a7e-a307-4fd7-8757-13c4eadf0a73" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_91d4720b-21ad-4ace-b7d3-c1a709daa74f" xlink:to="loc_us-gaap_AccountsPayableCurrent_75221a7e-a307-4fd7-8757-13c4eadf0a73" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_a09d1bca-daba-46aa-81a7-9254b14639c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_91d4720b-21ad-4ace-b7d3-c1a709daa74f" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_a09d1bca-daba-46aa-81a7-9254b14639c9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_fb84e30c-bd7b-4808-a98d-fc06241893b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_91d4720b-21ad-4ace-b7d3-c1a709daa74f" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_fb84e30c-bd7b-4808-a98d-fc06241893b5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_8abf2ec2-d6da-4c14-9975-71fa83616068" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_91d4720b-21ad-4ace-b7d3-c1a709daa74f" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_8abf2ec2-d6da-4c14-9975-71fa83616068" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_15b74e5b-a0d7-4a58-8ddd-ce926f0d3bb5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_91d4720b-21ad-4ace-b7d3-c1a709daa74f" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_15b74e5b-a0d7-4a58-8ddd-ce926f0d3bb5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_b147c9b0-2b6f-43c8-a9d9-4a77e01229ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_c099b7d0-5d72-4a6d-b31f-9fc5e3f14c65" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_b147c9b0-2b6f-43c8-a9d9-4a77e01229ce" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_c099b7d0-5d72-4a6d-b31f-9fc5e3f14c65" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_d05ed62d-09dd-46b2-9c34-eaf4e7c79dbd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_b147c9b0-2b6f-43c8-a9d9-4a77e01229ce" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_d05ed62d-09dd-46b2-9c34-eaf4e7c79dbd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_532f5bc2-a8de-4b23-bb9e-dbf7937f2d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_b147c9b0-2b6f-43c8-a9d9-4a77e01229ce" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_532f5bc2-a8de-4b23-bb9e-dbf7937f2d4f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValueOutstanding_313c830e-57bf-4f67-96ac-64baf908bee0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValueOutstanding"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_b147c9b0-2b6f-43c8-a9d9-4a77e01229ce" xlink:to="loc_us-gaap_PreferredStockValueOutstanding_313c830e-57bf-4f67-96ac-64baf908bee0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValueOutstanding_5d26f225-23b6-41eb-bd56-b99274663665" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValueOutstanding"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_b147c9b0-2b6f-43c8-a9d9-4a77e01229ce" xlink:to="loc_us-gaap_CommonStockValueOutstanding_5d26f225-23b6-41eb-bd56-b99274663665" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_6b51c06b-5f2f-49d6-a033-2eb4c524813d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_AssetsCurrent_6b51c06b-5f2f-49d6-a033-2eb4c524813d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_36083e9b-4b3c-4b8a-9eb4-9d98dc132ce6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_LongTermInvestments_36083e9b-4b3c-4b8a-9eb4-9d98dc132ce6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3c378ccc-631a-494c-9a5d-ab8a448f54df" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_3c378ccc-631a-494c-9a5d-ab8a448f54df" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_e147be6d-a413-40a0-9c13-ca4629c1103c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_e147be6d-a413-40a0-9c13-ca4629c1103c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_01c0ebe9-2f15-4d43-9f52-97a51064c7e1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_Goodwill_01c0ebe9-2f15-4d43-9f52-97a51064c7e1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_6012c874-241a-46d5-9ec2-94d444069f8e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_6012c874-241a-46d5-9ec2-94d444069f8e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_87e6c2a3-964a-45b6-a43d-60893f770835" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_87e6c2a3-964a-45b6-a43d-60893f770835" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_5d1ad351-4f0f-4f71-bbbd-9b2bd951cf7b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_838379fc-0f4f-43c3-ac87-86732f083afe" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_5d1ad351-4f0f-4f71-bbbd-9b2bd951cf7b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_6a2184cb-60fe-497d-ba8b-f9f3423424aa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_3bb58ae8-5069-4323-8009-943d3d85e72d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_6a2184cb-60fe-497d-ba8b-f9f3423424aa" xlink:to="loc_us-gaap_Liabilities_3bb58ae8-5069-4323-8009-943d3d85e72d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_8bd2ad53-3c53-4ef8-9c03-55a83b7959fa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_6a2184cb-60fe-497d-ba8b-f9f3423424aa" xlink:to="loc_us-gaap_CommitmentsAndContingencies_8bd2ad53-3c53-4ef8-9c03-55a83b7959fa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_6b2f501c-90d3-4aed-9804-e2ff16856dde" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_6a2184cb-60fe-497d-ba8b-f9f3423424aa" xlink:to="loc_us-gaap_StockholdersEquity_6b2f501c-90d3-4aed-9804-e2ff16856dde" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_b6f45920-3fc4-4d2c-b7f0-163a4597e4d0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_b6f45920-3fc4-4d2c-b7f0-163a4597e4d0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_361e6259-eca9-4d4e-945a-96bf8a414de9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_361e6259-eca9-4d4e-945a-96bf8a414de9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_a9d10866-f843-45a4-b384-7eb106ce947e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_a9d10866-f843-45a4-b384-7eb106ce947e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_84670f58-ccd9-4c8c-90fe-025e4208f1e3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnbilledReceivablesCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent_84670f58-ccd9-4c8c-90fe-025e4208f1e3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_a1a6e854-13de-433c-b41e-ec3bd66620b8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:to="loc_us-gaap_InventoryNet_a1a6e854-13de-433c-b41e-ec3bd66620b8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_3860a535-9402-45d1-8ced-e5d102fa5b7d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_f8557f44-7718-4f9f-8021-128d9b50b690" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_3860a535-9402-45d1-8ced-e5d102fa5b7d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_da8e3084-5d49-4d01-952d-abe26adeb1bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:to="loc_us-gaap_LiabilitiesCurrent_da8e3084-5d49-4d01-952d-abe26adeb1bf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_12d12f37-9a7b-4220-a178-3eec8796c06e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_12d12f37-9a7b-4220-a178-3eec8796c06e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_9d8fb41f-d61d-456f-b518-714cf4e42e1b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_9d8fb41f-d61d-456f-b518-714cf4e42e1b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_2a6792d9-e52c-469a-b9a7-97d430ca1775" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:to="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_2a6792d9-e52c-469a-b9a7-97d430ca1775" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxes_d1d33860-a354-49ed-9c60-da99d5eb3e24" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxes"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:to="loc_us-gaap_AccruedIncomeTaxes_d1d33860-a354-49ed-9c60-da99d5eb3e24" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_055ed07c-e994-412d-b44d-2a937964b073" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Liabilities_a979e121-e8af-41ff-ad61-8e8da60088b2" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_055ed07c-e994-412d-b44d-2a937964b073" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_95624f9c-e59a-4cab-ba2f-e62bfc4601e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_08ccb5fb-b7ea-476c-9715-2313d807689e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_95624f9c-e59a-4cab-ba2f-e62bfc4601e5" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_08ccb5fb-b7ea-476c-9715-2313d807689e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_695fb792-a332-44ec-8fe2-c63ca1c0b756" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_95624f9c-e59a-4cab-ba2f-e62bfc4601e5" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_695fb792-a332-44ec-8fe2-c63ca1c0b756" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_4c70c0cd-8a81-4b63-a9d1-77abd2547eb2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_95624f9c-e59a-4cab-ba2f-e62bfc4601e5" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_4c70c0cd-8a81-4b63-a9d1-77abd2547eb2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_254e935b-27f6-42f1-8945-8c568fcb678b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_95624f9c-e59a-4cab-ba2f-e62bfc4601e5" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_254e935b-27f6-42f1-8945-8c568fcb678b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f86799da-b6b6-4176-b498-4efedc3beb8a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_7ebc18d9-e3d8-4713-b681-e5da693a6f35" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f86799da-b6b6-4176-b498-4efedc3beb8a" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_7ebc18d9-e3d8-4713-b681-e5da693a6f35" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_bc6c75b3-f301-4c20-8746-b7866400fe42" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f86799da-b6b6-4176-b498-4efedc3beb8a" xlink:to="loc_us-gaap_PaymentsToAcquireInvestments_bc6c75b3-f301-4c20-8746-b7866400fe42" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_1c3bac97-7b61-410f-8067-83072b139cc2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f86799da-b6b6-4176-b498-4efedc3beb8a" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_1c3bac97-7b61-410f-8067-83072b139cc2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_4a56588c-6282-40b9-ae94-10c972d87e83" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_f86799da-b6b6-4176-b498-4efedc3beb8a" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_4a56588c-6282-40b9-ae94-10c972d87e83" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_564cb222-154e-4ca5-b764-34d5d6d27cf9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_a7deffcf-9b11-4b7a-a118-318ec5e3ed95" xlink:href="cgnx-20240331.xsd#cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_564cb222-154e-4ca5-b764-34d5d6d27cf9" xlink:to="loc_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_a7deffcf-9b11-4b7a-a118-318ec5e3ed95" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_c33971d0-341b-4533-8702-97b8583a2161" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_564cb222-154e-4ca5-b764-34d5d6d27cf9" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_c33971d0-341b-4533-8702-97b8583a2161" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_4a224b3a-af30-4b9b-8fcb-61016058db33" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_564cb222-154e-4ca5-b764-34d5d6d27cf9" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_4a224b3a-af30-4b9b-8fcb-61016058db33" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_a5beb96b-ce9d-42d9-b999-b165d0193105" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_a5beb96b-ce9d-42d9-b999-b165d0193105" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionPlanExpense_27c1786c-a08e-4550-9b8a-9a4bfbdfb0c1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockOptionPlanExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_StockOptionPlanExpense_27c1786c-a08e-4550-9b8a-9a4bfbdfb0c1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_ed3f527b-fe86-4c8b-a115-3e6b4b96372f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_ed3f527b-fe86-4c8b-a115-3e6b4b96372f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_8dd992ac-12eb-467c-ba63-6dcf7254ae4c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_8dd992ac-12eb-467c-ba63-6dcf7254ae4c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_1069bf23-f932-4126-bf25-635cec077408" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfInvestments"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_GainLossOnSaleOfInvestments_1069bf23-f932-4126-bf25-635cec077408" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_c9c37039-cc0c-4a4d-9542-1850bb2d719b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_c9c37039-cc0c-4a4d-9542-1850bb2d719b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_509e836d-2631-400c-aea9-bfaa76cf3244" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="7" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_509e836d-2631-400c-aea9-bfaa76cf3244" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0c36b33d-5514-42b7-8f65-9ef644804079" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0c36b33d-5514-42b7-8f65-9ef644804079" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_ebc2ebaa-8ef5-4c59-b107-914a7d52e261" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_ebc2ebaa-8ef5-4c59-b107-914a7d52e261" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_aa6e091e-5fae-47c3-b3ea-f475382402ef" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation"/>
    <link:calculationArc order="10" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_Depreciation_aa6e091e-5fae-47c3-b3ea-f475382402ef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ExcessAndObsoleteInventoryCharges_4c441c0a-72a0-46d3-a780-ec04b794b6af" xlink:href="cgnx-20240331.xsd#cgnx_ExcessAndObsoleteInventoryCharges"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_cgnx_ExcessAndObsoleteInventoryCharges_4c441c0a-72a0-46d3-a780-ec04b794b6af" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_7107e3cb-d192-4896-bf4f-9c4943979aad" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_7107e3cb-d192-4896-bf4f-9c4943979aad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_f68071f5-32fb-4abe-9650-6a4d994d7e6a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_f68071f5-32fb-4abe-9650-6a4d994d7e6a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_c70fa041-0880-4978-a4ae-13eeba2303b6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_c70fa041-0880-4978-a4ae-13eeba2303b6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_b1081932-1ab9-4ec0-9f12-747cd290abd2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet"/>
    <link:calculationArc order="15" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_b1081932-1ab9-4ec0-9f12-747cd290abd2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_ed2e3d67-db14-47da-bf88-022152a2ab02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="16" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_NetIncomeLoss_ed2e3d67-db14-47da-bf88-022152a2ab02" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_0ac8c8fb-d0bd-408f-9fe1-920fba48c9aa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="17" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_0ac8c8fb-d0bd-408f-9fe1-920fba48c9aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_FairValueAdjustmentOnAcquiredInventories_fb204bbb-a2d4-45ac-9dc2-842911b50482" xlink:href="cgnx-20240331.xsd#cgnx_FairValueAdjustmentOnAcquiredInventories"/>
    <link:calculationArc order="18" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6bfe5d00-d342-4330-a81c-0a08e27bf48a" xlink:to="loc_cgnx_FairValueAdjustmentOnAcquiredInventories_fb204bbb-a2d4-45ac-9dc2-842911b50482" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_c6859665-4958-4dea-b966-286ffe161888" xlink:href="cgnx-20240331.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_f61826b5-ae11-4940-89a1-cbaa2b863102" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_c6859665-4958-4dea-b966-286ffe161888" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_f61826b5-ae11-4940-89a1-cbaa2b863102" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_feb27da6-954f-43cb-afee-9a3f3dd03049" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_c6859665-4958-4dea-b966-286ffe161888" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_feb27da6-954f-43cb-afee-9a3f3dd03049" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_c99b0026-c5ff-41cb-b147-4df1efbb3bd6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermInvestments"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_c6859665-4958-4dea-b966-286ffe161888" xlink:to="loc_us-gaap_LongTermInvestments_c99b0026-c5ff-41cb-b147-4df1efbb3bd6" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_4b0e0dd8-d439-45b2-ad2e-fb18d9ebabd2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_6ff9319d-39b2-4468-8967-b43d664b0c38" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_4b0e0dd8-d439-45b2-ad2e-fb18d9ebabd2" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_6ff9319d-39b2-4468-8967-b43d664b0c38" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_b71a590b-3bc6-4c92-a685-5d08b3eff98d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_4b0e0dd8-d439-45b2-ad2e-fb18d9ebabd2" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_b71a590b-3bc6-4c92-a685-5d08b3eff98d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_79249a9a-51dd-40f3-9c7f-702dacd6bf39" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_4b0e0dd8-d439-45b2-ad2e-fb18d9ebabd2" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_79249a9a-51dd-40f3-9c7f-702dacd6bf39" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_94da929c-46d2-4fe9-9f4d-448c014ececf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_dd817c2c-3c00-4a9b-87fc-b55de2eaa4ef" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_94da929c-46d2-4fe9-9f4d-448c014ececf" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_dd817c2c-3c00-4a9b-87fc-b55de2eaa4ef" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_21770496-dd52-40ec-8b18-e03a30da9757" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_94da929c-46d2-4fe9-9f4d-448c014ececf" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_21770496-dd52-40ec-8b18-e03a30da9757" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_5f5e9338-16a0-4f70-a43c-568499d7889b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_db979188-bb21-4b7f-83a9-26cc9b706d74" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_5f5e9338-16a0-4f70-a43c-568499d7889b" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_db979188-bb21-4b7f-83a9-26cc9b706d74" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_9ab02927-8961-4d5f-a006-a38266a2701e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_5f5e9338-16a0-4f70-a43c-568499d7889b" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_9ab02927-8961-4d5f-a006-a38266a2701e" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_7de5b18d-6d20-4ad6-81bb-9c5e65ae7b72" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_7de5b18d-6d20-4ad6-81bb-9c5e65ae7b72" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_6d920bdd-51e6-402c-9751-f6ae14939b90" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_6d920bdd-51e6-402c-9751-f6ae14939b90" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_566e4d62-6d4b-44b1-a0ba-0b0af6684cb0" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_566e4d62-6d4b-44b1-a0ba-0b0af6684cb0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_fe6ae662-3068-4d6d-8542-a0357f45ccaf" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_fe6ae662-3068-4d6d-8542-a0357f45ccaf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_0e098144-8209-4922-b60a-f8d71c7fad64" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_0e098144-8209-4922-b60a-f8d71c7fad64" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_cfde0c99-0ea8-4dd2-8c57-3c69ab859314" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_d9308ba6-4ddb-4a31-ad75-317d16dbde77" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_cfde0c99-0ea8-4dd2-8c57-3c69ab859314" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#InventoriesDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/InventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_09f64b0f-e3f6-45bc-ace2-6ccd54f13dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_4a45d2f8-07c3-4276-9d0c-2385e30357e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_09f64b0f-e3f6-45bc-ace2-6ccd54f13dd7" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_4a45d2f8-07c3-4276-9d0c-2385e30357e5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_5f0f084f-9db2-496d-9e7c-66043454e32d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_09f64b0f-e3f6-45bc-ace2-6ccd54f13dd7" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_5f0f084f-9db2-496d-9e7c-66043454e32d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_a1162789-fa22-4084-bf30-163c068f281d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_09f64b0f-e3f6-45bc-ace2-6ccd54f13dd7" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_a1162789-fa22-4084-bf30-163c068f281d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_a68a01ae-bd46-4b68-80ae-b6005bf90d88" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_a68a01ae-bd46-4b68-80ae-b6005bf90d88" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_75e2fd99-0600-4162-a4b0-47ac29586d32" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_75e2fd99-0600-4162-a4b0-47ac29586d32" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_8dcbe7f0-9870-4a90-a115-71ac9534fb27" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_8dcbe7f0-9870-4a90-a115-71ac9534fb27" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_80b6955d-1891-428c-b737-cc495ba3092e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_80b6955d-1891-428c-b737-cc495ba3092e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_7aa76fb4-d64f-4cb0-b43c-2a3efb8fa259" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_7aa76fb4-d64f-4cb0-b43c-2a3efb8fa259" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_9f36a61b-2434-4c37-8176-5ca3c4282ef6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_9f36a61b-2434-4c37-8176-5ca3c4282ef6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_78113479-366f-420f-8c31-9865952d639f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_e1845341-cf5c-4e99-af4b-b70a9a402228" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_78113479-366f-420f-8c31-9865952d639f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IntangibleAssetsDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_d9f5c710-f679-430e-9c75-6b2b51e5cd77" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_7ded754a-ecb3-4c28-a121-ee91e60dfb2c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_d9f5c710-f679-430e-9c75-6b2b51e5cd77" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_7ded754a-ecb3-4c28-a121-ee91e60dfb2c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_70388c1f-11d4-45d9-af2a-c36a220ab05f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_d9f5c710-f679-430e-9c75-6b2b51e5cd77" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_70388c1f-11d4-45d9-af2a-c36a220ab05f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails_1" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IntangibleAssetsDetails_1"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_8089ad3f-e1fe-48d4-aebe-e9663bfa6a79" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_8089ad3f-e1fe-48d4-aebe-e9663bfa6a79" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_51b7448e-7fc5-49af-84cb-004e0627c3e6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_51b7448e-7fc5-49af-84cb-004e0627c3e6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_9a32964e-f922-4b90-8b00-3715f02a0beb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_9a32964e-f922-4b90-8b00-3715f02a0beb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_4045fdb8-7882-4ce7-8eb2-945ebd17f01c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_4045fdb8-7882-4ce7-8eb2-945ebd17f01c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_8d97a9d4-a484-4798-b1a5-398de3830bda" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_8d97a9d4-a484-4798-b1a5-398de3830bda" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_a2383a73-5560-4f96-bf6f-ef7fc7153ff5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_a2383a73-5560-4f96-bf6f-ef7fc7153ff5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_7a5e12df-2669-4571-afe7-5055a484a164" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet_9909ec17-bf04-4626-9381-025a85d1927b" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_7a5e12df-2669-4571-afe7-5055a484a164" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsOffsettingAssetsDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_5aacb659-5190-4369-900c-70c41c6deabc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_8fc8470c-70ac-4b30-8107-89bd9099c8ca" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFairValueOfDerivativeLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeLiabilities_5aacb659-5190-4369-900c-70c41c6deabc" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_8fc8470c-70ac-4b30-8107-89bd9099c8ca" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_6695d5d7-4305-4d3e-8575-cd755e4c89d9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeLiabilities_5aacb659-5190-4369-900c-70c41c6deabc" xlink:to="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_6695d5d7-4305-4d3e-8575-cd755e4c89d9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_68f28b63-6923-477d-8fff-c52e898729a3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_2be8d64f-3dc2-4691-b27e-6c064365c90f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFairValueOfDerivativeAsset"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeAssets_68f28b63-6923-477d-8fff-c52e898729a3" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_2be8d64f-3dc2-4691-b27e-6c064365c90f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_f3d77165-3fb9-425f-bbab-8c2594a525c0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DerivativeAssets_68f28b63-6923-477d-8fff-c52e898729a3" xlink:to="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_f3d77165-3fb9-425f-bbab-8c2594a525c0" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WeightedAverageSharesCalculationofWeightedAverageSharesDetails"/>
  <link:calculationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a918fab1-978c-4d5f-8665-e439e0c96921" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_bf3681a1-42ab-4493-b894-2dc1f5a317e7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a918fab1-978c-4d5f-8665-e439e0c96921" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_bf3681a1-42ab-4493-b894-2dc1f5a317e7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_854ec75e-25c1-443d-bb17-2e4949b9e5ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a918fab1-978c-4d5f-8665-e439e0c96921" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_854ec75e-25c1-443d-bb17-2e4949b9e5ce" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>9
<FILENAME>cgnx-20240331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2024 Workiva-->
<!--r:dfad6519-e7c9-43ce-99d4-1de89517fce0,g:98c12c7f-ecb7-4934-b1a1-7d9003090dce-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementofShareholdersEquity"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_b0d31604-e4fa-40f2-a081-c49529fa8a5a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_b0d31604-e4fa-40f2-a081-c49529fa8a5a" xlink:to="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_c564e47d-4e85-4347-a48e-9a8df6b03e85_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:to="loc_us-gaap_EquityComponentDomain_c564e47d-4e85-4347-a48e-9a8df6b03e85_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:to="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_7f4a12de-a6cb-4a37-87c4-d0282bf3821d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_CommonStockMember_7f4a12de-a6cb-4a37-87c4-d0282bf3821d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_a775ec98-7ecf-482c-b3ac-cc8b49604160" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_a775ec98-7ecf-482c-b3ac-cc8b49604160" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_95dbab2b-ef09-4017-80f5-8845da9d8c8a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_RetainedEarningsMember_95dbab2b-ef09-4017-80f5-8845da9d8c8a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_bf242fd4-c871-4261-b971-781f92d7c174" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_bf242fd4-c871-4261-b971-781f92d7c174" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_b0d31604-e4fa-40f2-a081-c49529fa8a5a" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_8df55de2-fc4a-4bb9-bc26-e847e060a036" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_CommonStockSharesIssued_8df55de2-fc4a-4bb9-bc26-e847e060a036" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_9f57feab-e34d-41a2-8c03-b774136e2d9f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockholdersEquity_9f57feab-e34d-41a2-8c03-b774136e2d9f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_f681d218-4e4d-4b0b-9e85-ad306157a317" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_f681d218-4e4d-4b0b-9e85-ad306157a317" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_69fb651d-1bdd-47bd-bd5d-4933ad54c415" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_69fb651d-1bdd-47bd-bd5d-4933ad54c415" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_07a46432-d402-4774-bb91-63e63807fe81" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_07a46432-d402-4774-bb91-63e63807fe81" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_b3c592b2-b279-4d44-ad22-0ad8a27e294b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_b3c592b2-b279-4d44-ad22-0ad8a27e294b" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_dff73116-f554-4d0a-a9c3-693796d18d7c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_dff73116-f554-4d0a-a9c3-693796d18d7c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCash_677cc140-68b9-40a1-9fd0-f0021d3a7064" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_DividendsCash_677cc140-68b9-40a1-9fd0-f0021d3a7064" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_8f86b2e2-61c0-4739-9da0-581eaed82b17" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_NetIncomeLoss_8f86b2e2-61c0-4739-9da0-581eaed82b17" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_51bcfe3c-79cd-4286-8fc6-781f0884f097" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_51bcfe3c-79cd-4286-8fc6-781f0884f097" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_f82a327d-6467-442f-9d0d-3a45c3cad056" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_f82a327d-6467-442f-9d0d-3a45c3cad056" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_6a2fa948-a5d5-4711-9121-4c521cd3c6ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_6a2fa948-a5d5-4711-9121-4c521cd3c6ba" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_05ca9140-fc13-4d6e-b7df-4830dbde202b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_409e5c1d-9cfa-4cda-a6fa-18dfad312a7a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#FairValueMeasurementsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_0e693358-36fd-40f3-b343-99f798c29eef_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_0e693358-36fd-40f3-b343-99f798c29eef_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_4f67ac00-228c-449b-ac29-45ab62c4f603" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_4f67ac00-228c-449b-ac29-45ab62c4f603" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_7e4361ba-ad9d-4c0d-99a8-e898475c17b1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_7e4361ba-ad9d-4c0d-99a8-e898475c17b1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_91bc2308-e3c9-4b14-8168-273e41b50d3d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_91bc2308-e3c9-4b14-8168-273e41b50d3d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_a0fee4a4-f18f-48a5-a821-298640b9a60b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_a0fee4a4-f18f-48a5-a821-298640b9a60b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_1bace8ec-c0e7-420f-91a3-5405fdc3ca4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_1bace8ec-c0e7-420f-91a3-5405fdc3ca4f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_42fe3c89-6a89-4ed3-a8f4-ef7ab703d8b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_1bace8ec-c0e7-420f-91a3-5405fdc3ca4f" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_42fe3c89-6a89-4ed3-a8f4-ef7ab703d8b5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_ff5eb732-c44e-4c88-aeae-0392b1b29a09_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_ff5eb732-c44e-4c88-aeae-0392b1b29a09_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_58c95917-3822-4103-8b72-492dbe31c8af" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_58c95917-3822-4103-8b72-492dbe31c8af" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_cacad2f4-df6a-4b24-92ea-f6a5adb88dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_cacad2f4-df6a-4b24-92ea-f6a5adb88dd7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_15b5db08-c8b5-453b-af87-0df18563d113" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_15b5db08-c8b5-453b-af87-0df18563d113" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_50390eab-e393-4df0-8005-1c40bc4baba9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_50390eab-e393-4df0-8005-1c40bc4baba9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MunicipalBondsMember_67b40605-9b67-4df9-8820-0e9a75f36592" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MunicipalBondsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_MunicipalBondsMember_67b40605-9b67-4df9-8820-0e9a75f36592" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_b48c128c-6437-46ce-8c56-8c51fc35fb33_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_b48c128c-6437-46ce-8c56-8c51fc35fb33_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_6ae076a1-4adf-4208-9cef-b1a6944e75e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_6ae076a1-4adf-4208-9cef-b1a6944e75e2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember_617063f6-e478-46bd-b1b7-44dc803a6a7d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_6ae076a1-4adf-4208-9cef-b1a6944e75e2" xlink:to="loc_us-gaap_USTreasuryBillSecuritiesMember_617063f6-e478-46bd-b1b7-44dc803a6a7d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsFairValueDisclosureAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_f1328d20-0493-4377-89d3-d202e934e145" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsAtCarryingValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_f1328d20-0493-4377-89d3-d202e934e145" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_bb0f020d-4515-436f-9a14-1cf798514374" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_bb0f020d-4515-436f-9a14-1cf798514374" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CertificateOfDepositFairValueDisclosure_4f4be361-cce6-49ce-a84c-284aadf300b1" xlink:href="cgnx-20240331.xsd#cgnx_CertificateOfDepositFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_cgnx_CertificateOfDepositFairValueDisclosure_4f4be361-cce6-49ce-a84c-284aadf300b1" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_90877c29-0ac9-45eb-87e4-527d84b01f15" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_90877c29-0ac9-45eb-87e4-527d84b01f15" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_e6f6d559-d7b2-4f57-a676-20aebbd0e82e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyContractAssetFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_e6f6d559-d7b2-4f57-a676-20aebbd0e82e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_16291c0d-372c-481c-9d8d-ef0d1aa026ed" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_16291c0d-372c-481c-9d8d-ef0d1aa026ed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_cc931c7f-54b9-4381-a3b6-226f676be7d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_16291c0d-372c-481c-9d8d-ef0d1aa026ed" xlink:to="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_cc931c7f-54b9-4381-a3b6-226f676be7d4" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:to="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_402b65df-b255-446e-9c9d-b46a610dcaa5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_402b65df-b255-446e-9c9d-b46a610dcaa5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_a3e67425-9369-41e0-9739-6001eb4b6976" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_a3e67425-9369-41e0-9739-6001eb4b6976" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_73ddf5ca-d660-4934-8db6-94eaeda9bd70" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_73ddf5ca-d660-4934-8db6-94eaeda9bd70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_dfc34812-edd2-4380-9c68-fa7c4c8c799f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_dfc34812-edd2-4380-9c68-fa7c4c8c799f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtMember_74474f0f-5af1-4917-b046-c6aafd019124" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_SovereignDebtMember_74474f0f-5af1-4917-b046-c6aafd019124" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2ac1e14d-ae79-4473-b299-02490bd3e085_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_2ac1e14d-ae79-4473-b299-02490bd3e085_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashMember_96db5605-3b5e-41b0-805f-406fbc34b86e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_CashMember_96db5605-3b5e-41b0-805f-406fbc34b86e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CertificatesOfDepositMember_7efd5af0-0e10-4420-b86d-f68e9994ff97" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CertificatesOfDepositMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_CertificatesOfDepositMember_7efd5af0-0e10-4420-b86d-f68e9994ff97" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember_e9575984-5556-404f-88a0-954c0c3f66c2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_USTreasuryBillSecuritiesMember_e9575984-5556-404f-88a0-954c0c3f66c2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsMember_f151e60f-eece-4428-b471-a9ca3d1fd198" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_MoneyMarketFundsMember_f151e60f-eece-4428-b471-a9ca3d1fd198" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_87e92c86-66d4-4b11-ba1a-56580bc7388b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_87e92c86-66d4-4b11-ba1a-56580bc7388b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_5c33e007-18cf-4941-8e45-14a2b82f4d53" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_5c33e007-18cf-4941-8e45-14a2b82f4d53" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_5199fd72-87e6-40ac-878d-fafa1870abb1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_5199fd72-87e6-40ac-878d-fafa1870abb1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_00f647d5-da16-48aa-97e1-dc3c4e2b5b54" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_LongTermInvestments_00f647d5-da16-48aa-97e1-dc3c4e2b5b54" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2f81093a-d92c-4f07-869f-da47b89ef607" xlink:href="cgnx-20240331.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2f81093a-d92c-4f07-869f-da47b89ef607" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_ee57ae46-277c-4715-802f-ac6ff6b015d6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_ee57ae46-277c-4715-802f-ac6ff6b015d6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCurrentAssetsMember_e9fc9ace-e7a9-4fc5-bbe6-32d17cf2c42a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherCurrentAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_ee57ae46-277c-4715-802f-ac6ff6b015d6" xlink:to="loc_us-gaap_OtherCurrentAssetsMember_e9fc9ace-e7a9-4fc5-bbe6-32d17cf2c42a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestReceivable_a6b5653d-98a2-4d33-a53f-1f5fedefb94a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_InterestReceivable_a6b5653d-98a2-4d33-a53f-1f5fedefb94a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss_02199037-bca3-4446-b95f-5d72bbda0411" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss_02199037-bca3-4446-b95f-5d72bbda0411" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease_9bb1db51-221d-4c59-8f6e-de89456a69de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease_9bb1db51-221d-4c59-8f6e-de89456a69de" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_e6e17812-4849-48c3-83b0-54b5cbe4f54c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedGain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_e6e17812-4849-48c3-83b0-54b5cbe4f54c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_323ecab8-f9e3-4fa4-9ced-0e89846000d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_323ecab8-f9e3-4fa4-9ced-0e89846000d8" xlink:type="arc" order="4"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_419ceca1-c236-4337-903e-6ecaff48a28b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_419ceca1-c236-4337-903e-6ecaff48a28b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_b84d69e8-c8d9-44c9-aad0-5b2a0c20e4c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_b84d69e8-c8d9-44c9-aad0-5b2a0c20e4c5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_60cb57e5-5dd0-4a42-b81a-8c5a053fa08b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_60cb57e5-5dd0-4a42-b81a-8c5a053fa08b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_ea179ff8-7f74-4dfc-9709-6a377b136f8b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_ea179ff8-7f74-4dfc-9709-6a377b136f8b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_65768d8f-c1b1-49b5-ba16-e304ca156afb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_65768d8f-c1b1-49b5-ba16-e304ca156afb" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_0bac81c0-ce74-454d-9365-de84e378e6a1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_0bac81c0-ce74-454d-9365-de84e378e6a1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CurrentAssetsMember_7c6924bc-6b51-4a46-8c92-f2f844ff3b22" xlink:href="cgnx-20240331.xsd#cgnx_CurrentAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:to="loc_cgnx_CurrentAssetsMember_7c6924bc-6b51-4a46-8c92-f2f844ff3b22" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_NonCurrentAssetsMember_fdd00426-c522-4333-aa62-ca83cfb21aa3" xlink:href="cgnx-20240331.xsd#cgnx_NonCurrentAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:to="loc_cgnx_NonCurrentAssetsMember_fdd00426-c522-4333-aa62-ca83cfb21aa3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_11dff30d-2209-4afe-9800-333fe60f9952_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_11dff30d-2209-4afe-9800-333fe60f9952_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_c166e0dd-c3ee-45c5-810e-17644e35e7db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_c166e0dd-c3ee-45c5-810e-17644e35e7db" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_77023459-3298-4db6-90ea-5718dcbbc51b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_c166e0dd-c3ee-45c5-810e-17644e35e7db" xlink:to="loc_us-gaap_ShortTermInvestmentsMember_77023459-3298-4db6-90ea-5718dcbbc51b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_69c85c8a-4595-454b-8351-7e02398cec59" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_69c85c8a-4595-454b-8351-7e02398cec59" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_f3469348-9b38-4bf3-b9c1-9ca740db845d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_f3469348-9b38-4bf3-b9c1-9ca740db845d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_cfafe310-89a2-43e8-a639-f664db90125f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_cfafe310-89a2-43e8-a639-f664db90125f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_5c261526-7473-48f6-8530-0e2376a5f59d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_5c261526-7473-48f6-8530-0e2376a5f59d" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:to="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1c8aed67-6bb2-4785-ba25-59b00168854a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_1c8aed67-6bb2-4785-ba25-59b00168854a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_783d66da-2b94-4e16-ad1a-585db5ed153b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_783d66da-2b94-4e16-ad1a-585db5ed153b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_c4dfbe91-4f33-4839-a977-56a3b3c91264" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_c4dfbe91-4f33-4839-a977-56a3b3c91264" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_a7b5c906-87c7-4c44-afc6-849b0841a0ca" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_a7b5c906-87c7-4c44-afc6-849b0841a0ca" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_e14a820f-ec3d-4b0a-8953-2e0879708da5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_e14a820f-ec3d-4b0a-8953-2e0879708da5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_eeb86e2b-557a-4f48-84ae-bba9b2eb3d6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_eeb86e2b-557a-4f48-84ae-bba9b2eb3d6e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_6dc183a2-9571-472b-a432-8452bc07523a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_6dc183a2-9571-472b-a432-8452bc07523a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_086dc291-0429-4c31-8aac-9eff2b14370b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_086dc291-0429-4c31-8aac-9eff2b14370b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_1ecf0140-a36a-4703-a038-0640ae3292b6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_1ecf0140-a36a-4703-a038-0640ae3292b6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_7a4907a9-dc13-473a-baad-235a9a3dd146" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_7a4907a9-dc13-473a-baad-235a9a3dd146" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_4c3444f2-dd18-4dd9-b57e-0c673ee4215b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_4c3444f2-dd18-4dd9-b57e-0c673ee4215b" xlink:type="arc" order="5"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:to="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_3cc1102a-b109-439a-ab38-b03853f89d48_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_3cc1102a-b109-439a-ab38-b03853f89d48_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_66dfacfa-f635-4355-90e5-9bf3ecad7a13" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_66dfacfa-f635-4355-90e5-9bf3ecad7a13" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_0f374c7b-577d-4f38-98d8-3341082ac212" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_0f374c7b-577d-4f38-98d8-3341082ac212" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_6d0b1e81-acdd-4ae8-8684-d3655b3d26cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_6d0b1e81-acdd-4ae8-8684-d3655b3d26cb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_3e0f7486-321a-4f95-9dd2-66aed8f3e30c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_3e0f7486-321a-4f95-9dd2-66aed8f3e30c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MunicipalBondsMember_c924a2a8-25c6-4e24-9fd1-80a31d95f362" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MunicipalBondsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_MunicipalBondsMember_c924a2a8-25c6-4e24-9fd1-80a31d95f362" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_77625062-821a-47ee-970e-9ddf2d5249c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_77625062-821a-47ee-970e-9ddf2d5249c8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_4bdf4678-a884-4dc5-85e5-adf7aef0c41e" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_4bdf4678-a884-4dc5-85e5-adf7aef0c41e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_ea8abeec-15a2-4e78-a677-8e014190d4e5" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_ea8abeec-15a2-4e78-a677-8e014190d4e5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_16f0be40-4430-4a11-897c-c6d132669e53" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_16f0be40-4430-4a11-897c-c6d132669e53" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_a3d67fb1-404b-4175-9ebb-fa60cee404f6" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_a3d67fb1-404b-4175-9ebb-fa60cee404f6" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_57f37936-95f2-4f45-aadd-729efa9a2455" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_57f37936-95f2-4f45-aadd-729efa9a2455" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_6e21ed4a-1b56-43b5-9f85-7b360bf4d542" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_6e21ed4a-1b56-43b5-9f85-7b360bf4d542" xlink:type="arc" order="6"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#LeasesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/LeasesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:to="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_dd4430b9-415e-4fcf-990a-39b3fe5be55a_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:to="loc_srt_SegmentGeographicalDomain_dd4430b9-415e-4fcf-990a-39b3fe5be55a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:to="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_SG_80c5d5c5-9431-4b82-ba2e-612579b3352a" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_SG"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:to="loc_country_SG_80c5d5c5-9431-4b82-ba2e-612579b3352a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SouthboroughMassachusettsMember_feea5ef5-ef76-4991-9039-fb8cfa581e0c" xlink:href="cgnx-20240331.xsd#cgnx_SouthboroughMassachusettsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:to="loc_cgnx_SouthboroughMassachusettsMember_feea5ef5-ef76-4991-9039-fb8cfa581e0c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_f07c1145-6d10-42d4-9a39-7333d5041ac8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_f07c1145-6d10-42d4-9a39-7333d5041ac8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_A88000SquareFootPremisesMember_34074dab-0d1d-4bb5-94bd-1151bb923c5a" xlink:href="cgnx-20240331.xsd#cgnx_A88000SquareFootPremisesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:to="loc_cgnx_A88000SquareFootPremisesMember_34074dab-0d1d-4bb5-94bd-1151bb923c5a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_A27000SquareFootPremisesMember_305717a3-095f-4748-a9a2-83e0afbbeda8" xlink:href="cgnx-20240331.xsd#cgnx_A27000SquareFootPremisesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:to="loc_cgnx_A27000SquareFootPremisesMember_305717a3-095f-4748-a9a2-83e0afbbeda8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_a6ea39b0-54be-4767-bf4d-e110393a0a04" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseCost_a6ea39b0-54be-4767-bf4d-e110393a0a04" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_07620368-ebf5-49fa-a9ff-f9eeb1e13000" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeasePayments_07620368-ebf5-49fa-a9ff-f9eeb1e13000" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_316b60bf-856d-4ebf-9255-2a9f44f3f601" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LeaseCost_316b60bf-856d-4ebf-9255-2a9f44f3f601" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_4168b31d-d26f-42b8-ab4c-6776643ba10d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseLiability_4168b31d-d26f-42b8-ab4c-6776643ba10d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetRentableArea_7532bf3f-e978-43ec-8e21-a7f7a5273370" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetRentableArea"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_NetRentableArea_7532bf3f-e978-43ec-8e21-a7f7a5273370" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LesseeOperatingLeaseComponents_1d22a805-7981-4229-aae5-541fc7bf1581" xlink:href="cgnx-20240331.xsd#cgnx_LesseeOperatingLeaseComponents"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_cgnx_LesseeOperatingLeaseComponents_1d22a805-7981-4229-aae5-541fc7bf1581" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_6c0fb385-0d9f-43d4-8465-24620a198ac3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_6c0fb385-0d9f-43d4-8465-24620a198ac3" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_ffd2685b-67fe-47a5-8e26-45732bf6d128" xlink:href="cgnx-20240331.xsd#cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_ffd2685b-67fe-47a5-8e26-45732bf6d128" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_a78c2450-d920-4afa-ab18-3a3214fbf220" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_a78c2450-d920-4afa-ab18-3a3214fbf220" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1d0ab8ee-6515-41d3-9727-db5cc3db375f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1d0ab8ee-6515-41d3-9727-db5cc3db375f" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_c7ec942f-7e52-4aa8-9ed0-f56ede471c99" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_c7ec942f-7e52-4aa8-9ed0-f56ede471c99" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_a0720425-1e6e-45f8-b8d1-1506f96d8872" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_a0720425-1e6e-45f8-b8d1-1506f96d8872" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_d3cc212d-c08f-40a4-9d31-2d9d20c14e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_d3cc212d-c08f-40a4-9d31-2d9d20c14e8d" xlink:type="arc" order="12"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IntangibleAssetsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c148b2ff-884b-4741-8491-edbb0da52660_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_c148b2ff-884b-4741-8491-edbb0da52660_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_59251b53-25a9-4e03-a503-311dd1540d16" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_59251b53-25a9-4e03-a503-311dd1540d16" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:href="cgnx-20240331.xsd#cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_59251b53-25a9-4e03-a503-311dd1540d16" xlink:to="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CustomerContractsAndRelationshipsMember_f30f3866-fd27-46a1-8f55-21407cc6da80" xlink:href="cgnx-20240331.xsd#cgnx_CustomerContractsAndRelationshipsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_cgnx_CustomerContractsAndRelationshipsMember_f30f3866-fd27-46a1-8f55-21407cc6da80" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_ef91d0dc-a8b0-4cf0-992f-6d657095b7a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_ef91d0dc-a8b0-4cf0-992f-6d657095b7a4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_40c489be-fb0b-48c1-9997-40d7149d43c0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_us-gaap_TrademarksMember_40c489be-fb0b-48c1-9997-40d7149d43c0" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_8bc7d2c7-2fc4-4c30-a008-96835ad98375" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_us-gaap_OtherIntangibleAssetsMember_8bc7d2c7-2fc4-4c30-a008-96835ad98375" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_ad996443-7144-48d2-bd1c-b536112795a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_ad996443-7144-48d2-bd1c-b536112795a4" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_b5580c21-bd51-4e08-b567-b662c5ffd2e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_b5580c21-bd51-4e08-b567-b662c5ffd2e9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3f41b29-8db4-467f-9943-a244ffeb8c46" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3f41b29-8db4-467f-9943-a244ffeb8c46" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_1ed2b82f-069c-4143-9c23-91a183b48e7f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_1ed2b82f-069c-4143-9c23-91a183b48e7f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_bafd2c38-c2fb-432a-95ea-4931771a7d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_bafd2c38-c2fb-432a-95ea-4931771a7d4f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_6fab4340-1ab0-46c7-be21-99f33518af6d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_6fab4340-1ab0-46c7-be21-99f33518af6d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_420d48d7-abc4-4f9f-9ce4-12f0733f2a49" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_420d48d7-abc4-4f9f-9ce4-12f0733f2a49" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_873be168-a1c2-4875-8216-2c5e4dab0e58" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_873be168-a1c2-4875-8216-2c5e4dab0e58" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_6097855e-9524-4149-92a0-4246c04c6845" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_6097855e-9524-4149-92a0-4246c04c6845" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6adb4513-807c-487f-ac45-7c6e44b8caeb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6adb4513-807c-487f-ac45-7c6e44b8caeb" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_46859e56-f943-487c-a39b-6ad641164bc9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:to="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_84b87fb7-73af-4263-a0c9-6e46b7ab382b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:to="loc_us-gaap_HedgingDesignationDomain_84b87fb7-73af-4263-a0c9-6e46b7ab382b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_9de51884-caad-4ec7-8537-b1bd263e9799" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:to="loc_us-gaap_HedgingDesignationDomain_9de51884-caad-4ec7-8537-b1bd263e9799" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_d54fd6c3-3191-474c-8da3-5c5df770298f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_9de51884-caad-4ec7-8537-b1bd263e9799" xlink:to="loc_us-gaap_NondesignatedMember_d54fd6c3-3191-474c-8da3-5c5df770298f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_a1700dba-868b-4526-ba61-817ca1c2b435_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_a1700dba-868b-4526-ba61-817ca1c2b435_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_b05c8188-370b-4a4a-945f-b8fcb4e9958d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_b05c8188-370b-4a4a-945f-b8fcb4e9958d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_6afe61ab-cbab-4804-a180-af6626df54de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_b05c8188-370b-4a4a-945f-b8fcb4e9958d" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_6afe61ab-cbab-4804-a180-af6626df54de" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_cfcaa10b-7997-4f2e-a17b-08768e0734f8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_cfcaa10b-7997-4f2e-a17b-08768e0734f8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_5d6aa0b7-dd5b-4050-b403-ea60b863794d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_DerivativeNotionalAmount_5d6aa0b7-dd5b-4050-b403-ea60b863794d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_42402913-eeef-4289-808c-08018c895ea7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_42402913-eeef-4289-808c-08018c895ea7" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsOutstandingForwardContractsTableDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLineItems_8437e0bb-28c4-4b5c-97cc-978c85265688" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeLineItems_8437e0bb-28c4-4b5c-97cc-978c85265688" xlink:to="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:to="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:to="loc_us-gaap_HedgingDesignationDomain_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_df338015-f4d1-467b-be2c-050a4320daac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:to="loc_us-gaap_HedgingDesignationDomain_df338015-f4d1-467b-be2c-050a4320daac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_615219fd-7b4a-4a37-a61d-39dda38c7797" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_df338015-f4d1-467b-be2c-050a4320daac" xlink:to="loc_us-gaap_NondesignatedMember_615219fd-7b4a-4a37-a61d-39dda38c7797" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CurrencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:to="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_65a1f9b2-677d-4196-b8a4-6d2302f4da9e_default" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_AllCurrenciesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:to="loc_currency_AllCurrenciesDomain_65a1f9b2-677d-4196-b8a4-6d2302f4da9e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_AllCurrenciesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:to="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_JPY_88769e68-65a9-4c8a-b15b-b038d339b31b" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_JPY"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_JPY_88769e68-65a9-4c8a-b15b-b038d339b31b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR_930b6b9e-4587-43af-ae0d-13b08bfcd731" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_EUR"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_EUR_930b6b9e-4587-43af-ae0d-13b08bfcd731" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_SGD_93413cd3-9282-4c69-8bd8-e7ae924b3633" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_SGD"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_SGD_93413cd3-9282-4c69-8bd8-e7ae924b3633" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CNY_b336ac06-d73d-4836-8e02-149d5ad21331" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CNY"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_CNY_b336ac06-d73d-4836-8e02-149d5ad21331" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_MXN_45dee9b2-618f-47eb-a1bb-a229af7b056c" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_MXN"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_MXN_45dee9b2-618f-47eb-a1bb-a229af7b056c" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_HUF_2905ad46-fafa-4c33-978a-64100e5d2720" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_HUF"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_HUF_2905ad46-fafa-4c33-978a-64100e5d2720" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_GBP_afac80f9-517c-4687-8598-32c2a6b8bd86" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_GBP"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_GBP_afac80f9-517c-4687-8598-32c2a6b8bd86" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CAD_c9e8f989-0bca-48a5-8323-c57a896792af" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CAD"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_CAD_c9e8f989-0bca-48a5-8323-c57a896792af" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CHF_50a66560-ecb4-41df-8054-88d94ca76e57" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CHF"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_CHF_50a66560-ecb4-41df-8054-88d94ca76e57" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetNotionalAmount_2c439116-c45c-4027-80dc-693a8d7b3fc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssetNotionalAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeLineItems_8437e0bb-28c4-4b5c-97cc-978c85265688" xlink:to="loc_us-gaap_DerivativeAssetNotionalAmount_2c439116-c45c-4027-80dc-693a8d7b3fc0" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativesFairValueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:to="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_1e75205f-1abe-4a55-863a-9d0a542cc735_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:to="loc_us-gaap_HedgingDesignationDomain_1e75205f-1abe-4a55-863a-9d0a542cc735_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_9f762f18-896a-419c-bee6-0385439aa32c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:to="loc_us-gaap_HedgingDesignationDomain_9f762f18-896a-419c-bee6-0385439aa32c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_4dafbad5-9dde-4756-b036-8279f18dc04e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_9f762f18-896a-419c-bee6-0385439aa32c" xlink:to="loc_us-gaap_NondesignatedMember_4dafbad5-9dde-4756-b036-8279f18dc04e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_4c14a946-499a-4f39-8030-c03f8dde20a3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:to="loc_us-gaap_DerivativeAssets_4c14a946-499a-4f39-8030-c03f8dde20a3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_f4c18230-bc98-4aa2-b908-f822edffd5b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:to="loc_us-gaap_DerivativeLiabilities_f4c18230-bc98-4aa2-b908-f822edffd5b0" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsDerivativeInstrumentsGainLossDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7df794b2-ac94-436e-b992-1a08b5451aa5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7df794b2-ac94-436e-b992-1a08b5451aa5" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:to="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:to="loc_us-gaap_HedgingDesignationDomain_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_a9493383-91f3-46a2-be72-81c23d67152c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:to="loc_us-gaap_HedgingDesignationDomain_a9493383-91f3-46a2-be72-81c23d67152c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_097cea4b-c45e-4f7a-ad91-05b6702fd5ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_HedgingDesignationDomain_a9493383-91f3-46a2-be72-81c23d67152c" xlink:to="loc_us-gaap_NondesignatedMember_097cea4b-c45e-4f7a-ad91-05b6702fd5ce" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_5ef2f1f0-2d2b-4146-9935-7f06208044cc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7df794b2-ac94-436e-b992-1a08b5451aa5" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_5ef2f1f0-2d2b-4146-9935-7f06208044cc" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionRevenueDisaggregatedbyGeographyDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_6eac4ff8-352f-41fa-86a7-ee0373eb7ead" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_6eac4ff8-352f-41fa-86a7-ee0373eb7ead" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:to="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_12d48092-4505-46bc-8a89-9da31753f85f_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:to="loc_srt_SegmentGeographicalDomain_12d48092-4505-46bc-8a89-9da31753f85f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:to="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AmericasMember_55a7d3d9-8ab0-4e8e-b2e1-792718934aae" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_AmericasMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_srt_AmericasMember_55a7d3d9-8ab0-4e8e-b2e1-792718934aae" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember_cfb17a61-8c84-4dd2-8e0f-f97e7de4f6ff" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EuropeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_srt_EuropeMember_cfb17a61-8c84-4dd2-8e0f-f97e7de4f6ff" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_CN_10afe535-fbae-4e10-956f-ac369f798c83" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CN"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_country_CN_10afe535-fbae-4e10-956f-ac369f798c83" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AsiaExcludingChinaMember_c3024941-23ee-42d3-b3eb-907d1e300f41" xlink:href="cgnx-20240331.xsd#cgnx_AsiaExcludingChinaMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_cgnx_AsiaExcludingChinaMember_c3024941-23ee-42d3-b3eb-907d1e300f41" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP_ad046739-90f5-482e-8ced-2680abb69900" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_JP"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_country_JP_ad046739-90f5-482e-8ced-2680abb69900" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_01e8ae46-68e7-4223-8b97-1e4930313723" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_6eac4ff8-352f-41fa-86a7-ee0373eb7ead" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_01e8ae46-68e7-4223-8b97-1e4930313723" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_500076a7-c62b-4ded-98ba-38d7e7a50a32" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_500076a7-c62b-4ded-98ba-38d7e7a50a32" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:to="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_31d3fb3e-f29f-48b1-8212-617399bebc82_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:to="loc_srt_ProductsAndServicesDomain_31d3fb3e-f29f-48b1-8212-617399bebc82_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:to="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StandardProductsandServicesMember_a1d7f079-32b7-42d1-a29a-596ad47aaf19" xlink:href="cgnx-20240331.xsd#cgnx_StandardProductsandServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:to="loc_cgnx_StandardProductsandServicesMember_a1d7f079-32b7-42d1-a29a-596ad47aaf19" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_f5036b45-6044-49a8-895e-0904920dcfdb" xlink:href="cgnx-20240331.xsd#cgnx_ApplicationSpecificCustomerSolutionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:to="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_f5036b45-6044-49a8-895e-0904920dcfdb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_02781b5c-13e5-4848-a79e-88c5c9926dfe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_500076a7-c62b-4ded-98ba-38d7e7a50a32" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_02781b5c-13e5-4848-a79e-88c5c9926dfe" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_f76558d3-1f94-4dba-9942-df497b0dae21_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:to="loc_srt_RangeMember_f76558d3-1f94-4dba-9942-df497b0dae21_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:to="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_07683144-7f41-45e9-9d3a-369e2fad63ed" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:to="loc_srt_MinimumMember_07683144-7f41-45e9-9d3a-369e2fad63ed" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6a7106a0-0b5b-475e-99ec-2d116ba41a8d" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:to="loc_srt_MaximumMember_6a7106a0-0b5b-475e-99ec-2d116ba41a8d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e2facf93-9664-4764-a979-2dd89fa5338e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_e2facf93-9664-4764-a979-2dd89fa5338e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_26a38d13-0d72-455d-bbc1-9d34ef17ecd0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:to="loc_us-gaap_EmployeeStockOptionMember_26a38d13-0d72-455d-bbc1-9d34ef17ecd0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_924cdfb5-a41a-4bb0-9df8-da8993f1e0d3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_924cdfb5-a41a-4bb0-9df8-da8993f1e0d3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_330957a3-ec33-4273-8f2e-1b7ea6b15847" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:to="loc_us-gaap_PerformanceSharesMember_330957a3-ec33-4273-8f2e-1b7ea6b15847" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_6e01e272-7fdd-4c7c-8874-3ce408d8ace4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:to="loc_us-gaap_PlanNameDomain_6e01e272-7fdd-4c7c-8874-3ce408d8ace4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:to="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_GeneralStockOptionPlanMember_f4898e83-a1a7-4f9f-8498-eba836728276" xlink:href="cgnx-20240331.xsd#cgnx_GeneralStockOptionPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:to="loc_cgnx_GeneralStockOptionPlanMember_f4898e83-a1a7-4f9f-8498-eba836728276" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_aa3a84d0-2f8b-4f7c-ad4a-e5259ee17407" xlink:href="cgnx-20240331.xsd#cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:to="loc_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_aa3a84d0-2f8b-4f7c-ad4a-e5259ee17407" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_09dc7e1a-41a8-4cf5-ad98-515bdc297fe9" xlink:href="cgnx-20240331.xsd#cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:to="loc_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_09dc7e1a-41a8-4cf5-ad98-515bdc297fe9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_2a9848ed-954e-4afe-85e0-29fe11061c2e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_2a9848ed-954e-4afe-85e0-29fe11061c2e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_885f57b1-996c-4c2d-be4a-a123b74ffabc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_885f57b1-996c-4c2d-be4a-a123b74ffabc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_8798c939-1d6f-460a-98ba-d8800f9251d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_8798c939-1d6f-460a-98ba-d8800f9251d4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_d3ed4b1c-33fe-4943-a32c-e06c09d575c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_d3ed4b1c-33fe-4943-a32c-e06c09d575c8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ExpirationPeriodOfStockOptionPlan_c38c2fea-12db-4570-a5cc-cad4dde2b3b3" xlink:href="cgnx-20240331.xsd#cgnx_ExpirationPeriodOfStockOptionPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_ExpirationPeriodOfStockOptionPlan_c38c2fea-12db-4570-a5cc-cad4dde2b3b3" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_051107b9-1053-42dd-aeb9-8c751d42542e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_051107b9-1053-42dd-aeb9-8c751d42542e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions_86b2c604-3b0c-4c3c-bca6-506d118a50fe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions_86b2c604-3b0c-4c3c-bca6-506d118a50fe" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_a2249b2e-aca3-4bb3-bc55-3db7b1eb62e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_a2249b2e-aca3-4bb3-bc55-3db7b1eb62e9" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_ab66e753-26e5-4336-b183-5707a3b8c565" xlink:href="cgnx-20240331.xsd#cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_ab66e753-26e5-4336-b183-5707a3b8c565" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_751c1e20-dba6-4c83-8a06-fa01e99daa0a" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_751c1e20-dba6-4c83-8a06-fa01e99daa0a" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_22b7c482-62f0-4875-965b-0ba36487171e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_22b7c482-62f0-4875-965b-0ba36487171e" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_82c1c001-fe60-45b2-92a5-39a1a1d84e36" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_82c1c001-fe60-45b2-92a5-39a1a1d84e36" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_ff72b44b-83fe-48e6-b60d-7688947b457f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_ff72b44b-83fe-48e6-b60d-7688947b457f" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cee87729-ecd0-4b85-ba86-d873896198d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cee87729-ecd0-4b85-ba86-d873896198d8" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_74c01310-1a88-4d02-882c-320ca03b0bf7" xlink:href="cgnx-20240331.xsd#cgnx_NumberOfGroupsWithinEmployeePopulation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_74c01310-1a88-4d02-882c-320ca03b0bf7" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_307d6784-0664-431d-8bfd-514928c888ac" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_307d6784-0664-431d-8bfd-514928c888ac" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_a92cfdae-475a-4e16-9c56-dc3daec288db" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_a92cfdae-475a-4e16-9c56-dc3daec288db" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_5106b6a4-7dcb-407a-92bf-a39a11bc1bdb" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_5106b6a4-7dcb-407a-92bf-a39a11bc1bdb" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_6ce8d2ed-3e1d-4001-af9d-b31464e9869e" xlink:href="cgnx-20240331.xsd#cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_6ce8d2ed-3e1d-4001-af9d-b31464e9869e" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_d0e2abc4-f482-4a4b-a72f-d1f8cbfad0cf" xlink:href="cgnx-20240331.xsd#cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_d0e2abc4-f482-4a4b-a72f-d1f8cbfad0cf" xlink:type="arc" order="19"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e042ce6b-d620-47de-8131-31c61478832b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e042ce6b-d620-47de-8131-31c61478832b" xlink:type="arc" order="20"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_dd3bcff4-4b80-4784-b97a-a384d3e20bd4" xlink:href="cgnx-20240331.xsd#cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_dd3bcff4-4b80-4784-b97a-a384d3e20bd4" xlink:type="arc" order="21"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_554bfab0-b63b-46bb-a897-4e6416d5bf6b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_554bfab0-b63b-46bb-a897-4e6416d5bf6b" xlink:type="arc" order="22"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_8cf26dce-cca7-428f-9aeb-5839efb0c62b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_8cf26dce-cca7-428f-9aeb-5839efb0c62b" xlink:type="arc" order="23"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_5d166660-27d7-40e0-a802-3ff3f7ddacac" xlink:href="cgnx-20240331.xsd#cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_5d166660-27d7-40e0-a802-3ff3f7ddacac" xlink:type="arc" order="24"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:to="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4f134a0d-dde8-4442-a5b5-5bd9ae5a5522" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4f134a0d-dde8-4442-a5b5-5bd9ae5a5522" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_d036d6a7-bee7-45a1-927d-90efe0c62288" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4f134a0d-dde8-4442-a5b5-5bd9ae5a5522" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_d036d6a7-bee7-45a1-927d-90efe0c62288" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_5b286a24-3680-490b-94a8-3f3894f14ecb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_5b286a24-3680-490b-94a8-3f3894f14ecb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_0ce597f5-ec3f-4f6d-b12a-7ec7b6be800b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_0ce597f5-ec3f-4f6d-b12a-7ec7b6be800b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_768038f7-dfbb-4442-bf4f-3f32e3ed55e8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_768038f7-dfbb-4442-bf4f-3f32e3ed55e8" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_58cf616f-82c8-4807-bbe9-6e319f60ae5d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_58cf616f-82c8-4807-bbe9-6e319f60ae5d" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_29e85627-58b7-4f00-83a0-03682af05b6c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b692269-0f2f-4ecd-ad40-84bf53ca106b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b692269-0f2f-4ecd-ad40-84bf53ca106b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_e24bf059-279a-41ff-aa38-0fe60d754c9e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_e24bf059-279a-41ff-aa38-0fe60d754c9e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_eda60060-28f0-4539-a2d1-3c9807b8e657" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_eda60060-28f0-4539-a2d1-3c9807b8e657" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_8849ef04-dcaa-4b2b-941f-04fb15b37707" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_8849ef04-dcaa-4b2b-941f-04fb15b37707" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_dba0ae80-c627-4136-aad2-57d5ee4be42f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:to="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c98ae24f-1aa7-4f9e-8134-71f5d25ce990_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_c98ae24f-1aa7-4f9e-8134-71f5d25ce990_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bfe72e6e-5d83-4eb5-8cbc-db914fee215d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bfe72e6e-5d83-4eb5-8cbc-db914fee215d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_fa460e80-4fbd-4200-9bb5-cde93293eab3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bfe72e6e-5d83-4eb5-8cbc-db914fee215d" xlink:to="loc_us-gaap_PerformanceSharesMember_fa460e80-4fbd-4200-9bb5-cde93293eab3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_997e821a-2664-49de-a333-9006e796ef2f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_997e821a-2664-49de-a333-9006e796ef2f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2d79167a-9157-48aa-a133-79e8253c88c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2d79167a-9157-48aa-a133-79e8253c88c8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_f328a82e-a30e-4af0-b1bf-10397bb8c2cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_f328a82e-a30e-4af0-b1bf-10397bb8c2cd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_107e5714-7207-48b6-91eb-b9292e2897b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_107e5714-7207-48b6-91eb-b9292e2897b0" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f380f7cb-acf6-40ec-aef4-1807e2f7eecf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b2b17a3d-52e2-4a6a-893a-4d6b26955c21" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b2b17a3d-52e2-4a6a-893a-4d6b26955c21" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_343ab59a-1561-4845-b472-bd69b82c4710" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_343ab59a-1561-4845-b472-bd69b82c4710" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_d8259ea3-d677-40c6-9f40-1ae6fc7fa47e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_d8259ea3-d677-40c6-9f40-1ae6fc7fa47e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_9cd01728-402e-4d26-bf5d-e020e32a4878" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_9cd01728-402e-4d26-bf5d-e020e32a4878" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_21e4c3f9-c1c8-4a54-8fca-2d96f70cc283" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_9a58b327-33cb-4deb-8d9a-46848a438b6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_03ace963-f442-4e3f-b416-80833e9e5325" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_9a58b327-33cb-4deb-8d9a-46848a438b6e" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_03ace963-f442-4e3f-b416-80833e9e5325" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_03ace963-f442-4e3f-b416-80833e9e5325" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_67c81175-7ba9-4a9a-a407-6f1612dc8603" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsTotalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:to="loc_us-gaap_CostOfGoodsTotalMember_67c81175-7ba9-4a9a-a407-6f1612dc8603" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_2cf6f9bc-3620-46ef-b3f6-2d09b400b42b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_2cf6f9bc-3620-46ef-b3f6-2d09b400b42b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SellingGeneralAndAdministrativeMember_af095ab2-22cd-488e-b029-16790aafa7a7" xlink:href="cgnx-20240331.xsd#cgnx_SellingGeneralAndAdministrativeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:to="loc_cgnx_SellingGeneralAndAdministrativeMember_af095ab2-22cd-488e-b029-16790aafa7a7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_efc26e61-475b-4fd8-a727-d690cdef7dda" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_9a58b327-33cb-4deb-8d9a-46848a438b6e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_efc26e61-475b-4fd8-a727-d690cdef7dda" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockRepurchaseProgramDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgramDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityClassOfTreasuryStockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfTreasuryStockTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:to="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_b7952add-9ac4-446f-b607-510fbd7c6776_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_b7952add-9ac4-446f-b607-510fbd7c6776_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_RepurchaseProgramMarch2020Member_30784588-b231-4721-ab8e-061aea5598a1" xlink:href="cgnx-20240331.xsd#cgnx_RepurchaseProgramMarch2020Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:to="loc_cgnx_RepurchaseProgramMarch2020Member_30784588-b231-4721-ab8e-061aea5598a1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_RepurchaseProgramMarch2022Member_dde59d77-f745-4603-ae35-470a52f4556a" xlink:href="cgnx-20240331.xsd#cgnx_RepurchaseProgramMarch2022Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:to="loc_cgnx_RepurchaseProgramMarch2022Member_dde59d77-f745-4603-ae35-470a52f4556a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_0a362400-65cb-446b-90d6-8a181d921775" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_0a362400-65cb-446b-90d6-8a181d921775" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_1889e41c-eefd-4bf6-a8f6-99f970f1aeab" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_1889e41c-eefd-4bf6-a8f6-99f970f1aeab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_TreasuryStockAdditionalSharesAcquired_300718eb-e325-44c7-aa38-29fb2051655c" xlink:href="cgnx-20240331.xsd#cgnx_TreasuryStockAdditionalSharesAcquired"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_cgnx_TreasuryStockAdditionalSharesAcquired_300718eb-e325-44c7-aa38-29fb2051655c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_9b8b65fc-8932-4928-ae55-0593e66cacc1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_9b8b65fc-8932-4928-ae55-0593e66cacc1" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_fb0ff3dd-d465-43ee-a7b9-dea3a64b3075" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_fb0ff3dd-d465-43ee-a7b9-dea3a64b3075" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_88a86d0e-b301-4c03-af40-a1d857c13bb9" xlink:href="cgnx-20240331.xsd#cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_88a86d0e-b301-4c03-af40-a1d857c13bb9" xlink:type="arc" order="5"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IncomeTaxesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IncomeTaxesDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/IncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_3c70d050-b02a-45ae-80b2-af45db973518_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_3c70d050-b02a-45ae-80b2-af45db973518_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember_ba9ea024-6462-4e52-8541-33625ebfb0b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:to="loc_us-gaap_ForeignCountryMember_ba9ea024-6462-4e52-8541-33625ebfb0b5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_2eedfa06-b2b7-4739-b97a-bc0d8fd118f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DomesticCountryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:to="loc_us-gaap_DomesticCountryMember_2eedfa06-b2b7-4739-b97a-bc0d8fd118f2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_ce53f155-5836-47b2-be58-64ebee054407_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameDomain_ce53f155-5836-47b2-be58-64ebee054407_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueCommissionersIrelandMember_0b7222da-c104-4599-83f5-143a867004a5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueCommissionersIrelandMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_us-gaap_RevenueCommissionersIrelandMember_0b7222da-c104-4599-83f5-143a867004a5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAdministrationOfTaxationChinaMember_4d371d51-c329-4c75-9834-718cc81f799e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StateAdministrationOfTaxationChinaMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_us-gaap_StateAdministrationOfTaxationChinaMember_4d371d51-c329-4c75-9834-718cc81f799e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_KP_9b39537f-7b74-4520-8052-3d0b6dfd23cb" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_KP"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_country_KP_9b39537f-7b74-4520-8052-3d0b6dfd23cb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP_c587488d-2af2-43e3-bdca-3a6fdd1bd472" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_JP"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_country_JP_c587488d-2af2-43e3-bdca-3a6fdd1bd472" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_52475481-af3b-454f-8a30-7eb9e4f60101" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_52475481-af3b-454f-8a30-7eb9e4f60101" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_f511ce5c-6a0d-4d19-9c89-3a0d865bc325" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_f511ce5c-6a0d-4d19-9c89-3a0d865bc325" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_b5a767da-6a74-4a75-92b7-574ac015069c" xlink:href="cgnx-20240331.xsd#cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_b5a767da-6a74-4a75-92b7-574ac015069c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53d3dfc3-5c14-4ebc-b3db-49e10fdd1a2c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53d3dfc3-5c14-4ebc-b3db-49e10fdd1a2c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_0b4032fe-09a2-42f7-821f-a3d0029c8865" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_0b4032fe-09a2-42f7-821f-a3d0029c8865" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_8101af6d-1e1b-4419-8f6e-6c9a02046352" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationTaxSettlements"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_8101af6d-1e1b-4419-8f6e-6c9a02046352" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_a5676157-dd7a-424e-920c-7aa5e1fe4ce2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_a5676157-dd7a-424e-920c-7aa5e1fe4ce2" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_dd906297-54da-416c-b8e4-c449961baad6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_dd906297-54da-416c-b8e4-c449961baad6" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_cf3699ed-d1a4-4561-9907-99ef0bf74730" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_cf3699ed-d1a4-4561-9907-99ef0bf74730" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_cc5b06a6-d714-4e5a-9059-4a62bcae761d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_cc5b06a6-d714-4e5a-9059-4a62bcae761d" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LiabilityForUncertainTaxPositions_08ee5eae-00e2-4740-a9e0-7fbb1e42cb7b" xlink:href="cgnx-20240331.xsd#cgnx_LiabilityForUncertainTaxPositions"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_LiabilityForUncertainTaxPositions_08ee5eae-00e2-4740-a9e0-7fbb1e42cb7b" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_a81acaba-bb58-47e6-9887-0a49188ce553" xlink:href="cgnx-20240331.xsd#cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_a81acaba-bb58-47e6-9887-0a49188ce553" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_69eee35f-c3f0-47c3-8aff-cd0c00b97c89" xlink:href="cgnx-20240331.xsd#cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_69eee35f-c3f0-47c3-8aff-cd0c00b97c89" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_336b4e69-1ca6-4e5f-9746-bc32ec7be26d" xlink:href="cgnx-20240331.xsd#cgnx_TaxYearsOpenToExaminationByInternalRevenueService"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_336b4e69-1ca6-4e5f-9746-bc32ec7be26d" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_bc356de9-210c-4042-b08d-7c7dc8b781e0" xlink:href="cgnx-20240331.xsd#cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_bc356de9-210c-4042-b08d-7c7dc8b781e0" xlink:type="arc" order="14"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WeightedAverageSharesNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a79f65b8-904d-47fd-82d6-f19ce880c28d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a79f65b8-904d-47fd-82d6-f19ce880c28d" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain_d29e4f34-4f21-44d5-bd11-639d18e16c39_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:to="loc_us-gaap_AntidilutiveSecuritiesNameDomain_d29e4f34-4f21-44d5-bd11-639d18e16c39_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:to="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_96a8bf51-9b3b-4220-a41a-c2d2e854c8a5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:to="loc_us-gaap_EmployeeStockOptionMember_96a8bf51-9b3b-4220-a41a-c2d2e854c8a5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_268e27eb-6079-41ba-aaff-3a2b45e5de5c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:to="loc_us-gaap_RestrictedStockMember_268e27eb-6079-41ba-aaff-3a2b45e5de5c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_a42730d3-eb9c-4115-b575-76c8216cb7ea" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:to="loc_us-gaap_PerformanceSharesMember_a42730d3-eb9c-4115-b575-76c8216cb7ea" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_8f0a3829-f9be-4d15-9837-221cc0a7df61" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a79f65b8-904d-47fd-82d6-f19ce880c28d" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_8f0a3829-f9be-4d15-9837-221cc0a7df61" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/BusinessCombinationsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#BusinessCombinationsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/BusinessCombinationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_33648db6-f866-48fe-b7ed-4e64205a3d2b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_33648db6-f866-48fe-b7ed-4e64205a3d2b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_64759e8b-7b71-4622-b32d-736f8a19f928" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_64759e8b-7b71-4622-b32d-736f8a19f928" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_MoritexCorporationMember_4ad38225-1c58-4c5c-b131-3220d06d13b2" xlink:href="cgnx-20240331.xsd#cgnx_MoritexCorporationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_64759e8b-7b71-4622-b32d-736f8a19f928" xlink:to="loc_cgnx_MoritexCorporationMember_4ad38225-1c58-4c5c-b131-3220d06d13b2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_BusinessCombinationEnterpriseValue_dec212d3-ef4f-476c-9057-8862d89ed5a8" xlink:href="cgnx-20240331.xsd#cgnx_BusinessCombinationEnterpriseValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_cgnx_BusinessCombinationEnterpriseValue_dec212d3-ef4f-476c-9057-8862d89ed5a8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3fa980d7-f151-473b-ab0e-e551f164b8fe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3fa980d7-f151-473b-ab0e-e551f164b8fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_46f454e6-5f93-4319-98ec-d6cfc026a88b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_46f454e6-5f93-4319-98ec-d6cfc026a88b" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#SubsequentEventsDetails"/>
  <link:definitionLink xlink:role="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_3cd14e7a-93f2-4d2f-a475-ad579399ff63" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SubsequentEventLineItems_3cd14e7a-93f2-4d2f-a475-ad579399ff63" xlink:to="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_1c1ab9e5-7a15-4276-accb-7590b74dab99_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_1c1ab9e5-7a15-4276-accb-7590b74dab99_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_2d59c404-062a-463e-a4ac-100b3271dfc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_2d59c404-062a-463e-a4ac-100b3271dfc0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_badfe938-5aec-46de-acde-067821c107c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_2d59c404-062a-463e-a4ac-100b3271dfc0" xlink:to="loc_us-gaap_SubsequentEventMember_badfe938-5aec-46de-acde-067821c107c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_d5fdf31c-5946-4be9-9155-9b2f51f772dd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventLineItems_3cd14e7a-93f2-4d2f-a475-ad579399ff63" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_d5fdf31c-5946-4be9-9155-9b2f51f772dd" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/AwardTypeOnly" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#AwardTypeOnly"/>
  <link:definitionLink xlink:role="http://xbrl.sec.gov/ecd/AwardTypeOnly" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_PerformanceSharesMember" xlink:type="arc" order="5"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>10
<FILENAME>cgnx-20240331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2024 Workiva-->
<!--r:dfad6519-e7c9-43ce-99d4-1de89517fce0,g:98c12c7f-ecb7-4934-b1a1-7d9003090dce-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_StockAppreciationRightsSARSMember_terseLabel_en-US" xlink:label="lab_us-gaap_StockAppreciationRightsSARSMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Appreciation Rights (SARs)</link:label>
    <link:label id="lab_us-gaap_StockAppreciationRightsSARSMember_label_en-US" xlink:label="lab_us-gaap_StockAppreciationRightsSARSMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Appreciation Rights (SARs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockAppreciationRightsSARSMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:to="lab_us-gaap_StockAppreciationRightsSARSMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PayVsPerformanceDisclosureLineItems_label_en-US" xlink:label="lab_ecd_PayVsPerformanceDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PayVsPerformanceDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="lab_ecd_PayVsPerformanceDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_c920b4ac-8eb4-4444-9d7c-2d029f6e6216_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_c119034d-264e-461b-a2d6-6e513dec23a1_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_20ef6edf-5b22-4527-85cb-b7ebe20cd68a_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred Revenue, by Arrangement, Disclosure</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, by Arrangement, Disclosure [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueByArrangementDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:to="lab_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_be2767c5-7f2c-4de9-8d32-2057a6e02add_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research, development, and engineering expenses</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpense_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpense" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_UndrlygSecurityMktPriceChngPct_terseLabel_en-US" xlink:label="lab_ecd_UndrlygSecurityMktPriceChngPct" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Underlying Security Market Price Change</link:label>
    <link:label id="lab_ecd_UndrlygSecurityMktPriceChngPct_label_en-US" xlink:label="lab_ecd_UndrlygSecurityMktPriceChngPct" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Underlying Security Market Price Change, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_UndrlygSecurityMktPriceChngPct"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:to="lab_ecd_UndrlygSecurityMktPriceChngPct" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_99a6c9cf-48c1-4e9d-be1d-60f030d0afb8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:to="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_7ce192b6-11a6-48e5-add6-dfed4251e75b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardGrantDateFairValue_terseLabel_en-US" xlink:label="lab_ecd_AwardGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value as of Grant Date</link:label>
    <link:label id="lab_ecd_AwardGrantDateFairValue_label_en-US" xlink:label="lab_ecd_AwardGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardGrantDateFairValue" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardGrantDateFairValue" xlink:to="lab_ecd_AwardGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_0a293c4d-fb5a-422e-bc4d-96380fbe5163_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Nonvested as of beginning of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_38502dd7-d8fe-44d7-b1d1-ba5320521cdf_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Nonvested as of end of period (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_8fe7eaa4-3deb-4f5a-8949-834d94fdafe9_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_4cbebc1f-b723-4613-ba09-15c6191d7574_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesGross_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesGross" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_ba9e231f-648d-442e-a2b0-8bdd567c8c89_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Available-for-Sale Investments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Available-for-Sale Securities Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2d966380-5381-4fec-8614-877cd0ee2eae_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of foreign exchange rate changes on cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_3be35739-b970-4bf9-a1f7-1ad273799fc9_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MnpiDiscTimedForCompValFlag_terseLabel_en-US" xlink:label="lab_ecd_MnpiDiscTimedForCompValFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">MNPI Disclosure Timed for Compensation Value</link:label>
    <link:label id="lab_ecd_MnpiDiscTimedForCompValFlag_label_en-US" xlink:label="lab_ecd_MnpiDiscTimedForCompValFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">MNPI Disclosure Timed for Compensation Value [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MnpiDiscTimedForCompValFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:to="lab_ecd_MnpiDiscTimedForCompValFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PerformanceSharesMember_656f26c4-96d6-45ec-8f38-4b810022559f_terseLabel_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Performance Shares (PRSUs)</link:label>
    <link:label id="lab_us-gaap_PerformanceSharesMember_label_en-US" xlink:label="lab_us-gaap_PerformanceSharesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Performance Shares [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PerformanceSharesMember" xlink:to="lab_us-gaap_PerformanceSharesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_971c6c7a-ae8c-42c5-b894-bb6b694afb40_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_2da814c1-fbcc-43d3-8ce7-4366af5e00d2_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_643a7988-cebe-47c9-83dd-087c5e0e6ec3_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued income taxes</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accrued Taxes Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedTaxesPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RestatementDateAxis_terseLabel_en-US" xlink:label="lab_ecd_RestatementDateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement Determination Date:</link:label>
    <link:label id="lab_ecd_RestatementDateAxis_label_en-US" xlink:label="lab_ecd_RestatementDateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Determination Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDateAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RestatementDateAxis" xlink:to="lab_ecd_RestatementDateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireInvestments_43584008-544a-4163-b095-04573efbd56d_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchases of investments</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireInvestments_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireInvestments" xlink:to="lab_us-gaap_PaymentsToAcquireInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_c3cb4f7c-e581-41e8-9e59-b91279b945f4_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statutory tax rate</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_c71aadb8-f61c-49f2-aa79-f9058499cdd3_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTradingPoliciesProcLineItems_label_en-US" xlink:label="lab_ecd_InsiderTradingPoliciesProcLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingPoliciesProcLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:to="lab_ecd_InsiderTradingPoliciesProcLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_b45c0649-f0b0-434a-887b-9c5e9cd0c4c7_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable as of reporting date (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_Rule10b51ArrTrmntdFlag_terseLabel_en-US" xlink:label="lab_ecd_Rule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Terminated</link:label>
    <link:label id="lab_ecd_Rule10b51ArrTrmntdFlag_label_en-US" xlink:label="lab_ecd_Rule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Terminated [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrTrmntdFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:to="lab_ecd_Rule10b51ArrTrmntdFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_ed6ed06a-76a2-4c18-8d1d-0c27195364ee_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_a3397f8d-c4f6-466e-9f59-116f18ca5297_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2029</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock_terseLabel_en-US" xlink:label="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement does not require Recovery</link:label>
    <link:label id="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock_label_en-US" xlink:label="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Does Not Require Recovery [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDoesNotRequireRecoveryTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:to="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_2fb3594f-a2b2-4703-bf2d-cc95d32ebacd_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="lab_us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_b2a7a589-3367-4756-a5bc-23856b72c283_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options vested or expected to vest</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementGeographicalAxis_5f8dcaee-89b6-4a32-ac3e-07bfbcdf7ed9_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_BusinessCombinationEnterpriseValue_04fcfcfe-f1e8-406d-aba7-085cb9db460f_terseLabel_en-US" xlink:label="lab_cgnx_BusinessCombinationEnterpriseValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Enterprise Value</link:label>
    <link:label id="lab_cgnx_BusinessCombinationEnterpriseValue_label_en-US" xlink:label="lab_cgnx_BusinessCombinationEnterpriseValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Enterprise Value</link:label>
    <link:label id="lab_cgnx_BusinessCombinationEnterpriseValue_documentation_en-US" xlink:label="lab_cgnx_BusinessCombinationEnterpriseValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Business Combination, Enterprise Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_BusinessCombinationEnterpriseValue" xlink:href="cgnx-20240331.xsd#cgnx_BusinessCombinationEnterpriseValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_BusinessCombinationEnterpriseValue" xlink:to="lab_cgnx_BusinessCombinationEnterpriseValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_373d2960-cb83-41c7-8ca0-affdb3115c93_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualPayments_20882cff-ad67-4a4a-8b93-bee40738eea0_negatedLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Fulfillment of warranty obligations</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualPayments_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Decrease for Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrualPayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualPayments" xlink:to="lab_us-gaap_ProductWarrantyAccrualPayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_089defde-0c95-41cb-9c2f-107a0564dc0f_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unbilled revenue</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:to="lab_us-gaap_IncreaseDecreaseInContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_320c82d0-69bb-4adb-bbd1-b0a763b9f646_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected dividend yield</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_5ebf6e32-ca9a-4d9a-97ce-15c76494b51d_verboseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Provisions for warranties issued during the period</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:to="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_CAD_f0600698-7c5d-46de-b44c-ba93bcdeb8cd_terseLabel_en-US" xlink:label="lab_currency_CAD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Canadian Dollar</link:label>
    <link:label id="lab_currency_CAD_label_en-US" xlink:label="lab_currency_CAD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Canada, Dollars</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CAD" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CAD"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CAD" xlink:to="lab_currency_CAD" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_03a76e06-3c7e-47a1-988e-db2684047e0b_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_a2d058d0-a197-4d6c-89c7-4c3ac1e7d4e9_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Change in tax expense related to valuation allowance</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_cbbb6c88-bb1f-427c-ad69-433628419007_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_f2b0e6b0-fe0f-4301-814b-8000c24f83b5_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionLineItems_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems" xlink:to="lab_us-gaap_BusinessAcquisitionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_649279af-e18f-4b1a-b63a-f69942e67d82_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_80e91c35-398c-4427-96ba-8541170f8bf8_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-Average Grant Date Fair Value</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AsiaExcludingChinaMember_d36f6584-5fd0-4015-bd73-f630a211954f_terseLabel_en-US" xlink:label="lab_cgnx_AsiaExcludingChinaMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Asia</link:label>
    <link:label id="lab_cgnx_AsiaExcludingChinaMember_label_en-US" xlink:label="lab_cgnx_AsiaExcludingChinaMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asia, Excluding China [Member]</link:label>
    <link:label id="lab_cgnx_AsiaExcludingChinaMember_documentation_en-US" xlink:label="lab_cgnx_AsiaExcludingChinaMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Asia, Excluding China [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AsiaExcludingChinaMember" xlink:href="cgnx-20240331.xsd#cgnx_AsiaExcludingChinaMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AsiaExcludingChinaMember" xlink:to="lab_cgnx_AsiaExcludingChinaMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsCash_c87e7c53-0360-41de-9a51-5e7123a331ad_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DividendsCash" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Payment of dividends</link:label>
    <link:label id="lab_us-gaap_DividendsCash_label_en-US" xlink:label="lab_us-gaap_DividendsCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends, Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCash" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsCash" xlink:to="lab_us-gaap_DividendsCash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_528daa63-aac3-4384-9780-ef673176d5fe_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_88ebf52e-d78c-414c-a5e4-bd4a8a6d35b3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDividendsCommonStock_6f89a0a0-8b20-4089-b6c0-0195ea721147_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Payment of dividends</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDividendsCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDividendsCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments of Ordinary Dividends, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDividendsCommonStock" xlink:to="lab_us-gaap_PaymentsOfDividendsCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_b6e5e78b-47d2-4fb5-8428-cfd22b899aa9_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_c9d5d598-cf86-4984-9778-222f201143e2_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_fb8dd428-53fc-4dde-93df-c810b0c291eb_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts of recognized liabilities</link:label>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeLiability_label_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Liability, Subject to Master Netting Arrangement, before Offset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFairValueOfDerivativeLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:to="lab_us-gaap_DerivativeFairValueOfDerivativeLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoTotalCompAmt_terseLabel_en-US" xlink:label="lab_ecd_PeoTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO Total Compensation Amount</link:label>
    <link:label id="lab_ecd_PeoTotalCompAmt_label_en-US" xlink:label="lab_ecd_PeoTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO Total Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoTotalCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoTotalCompAmt" xlink:to="lab_ecd_PeoTotalCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_f90071a3-0e53-49df-a97b-a04c1bff8474_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable, allowance for credit losses of $1,339 and $583 in 2024 and 2023, respectively</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_569584a2-b09a-4437-a97e-fe575985efc9_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Economic hedge forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Contracts, Liability, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:to="lab_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillRollForward_d4d75351-20a1-4b2b-b92e-ecd1108ffdad_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_GoodwillRollForward_label_en-US" xlink:label="lab_us-gaap_GoodwillRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillRollForward" xlink:to="lab_us-gaap_GoodwillRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_cec28a7d-a2dc-4bd3-8827-477046a2b0a5_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vested and expected to vest (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TradingArrByIndTable_terseLabel_en-US" xlink:label="lab_ecd_TradingArrByIndTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Arrangements, by Individual</link:label>
    <link:label id="lab_ecd_TradingArrByIndTable_label_en-US" xlink:label="lab_ecd_TradingArrByIndTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangements, by Individual [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrByIndTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrByIndTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TradingArrByIndTable" xlink:to="lab_ecd_TradingArrByIndTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_4b22ec94-779e-4891-9a81-52e85bd3bae7_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unobservable Inputs (Level 3)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_cf59408c-1396-4559-b6aa-176a175f5efc_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_6a981fa9-91b6-447b-9838-49e946d039ce_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_FairValueAdjustmentOnAcquiredInventories_ba8d3003-808e-4cc9-a776-c6848d4c7506_terseLabel_en-US" xlink:label="lab_cgnx_FairValueAdjustmentOnAcquiredInventories" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Adjustment on Acquired Inventories</link:label>
    <link:label id="lab_cgnx_FairValueAdjustmentOnAcquiredInventories_label_en-US" xlink:label="lab_cgnx_FairValueAdjustmentOnAcquiredInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Adjustment on Acquired Inventories</link:label>
    <link:label id="lab_cgnx_FairValueAdjustmentOnAcquiredInventories_documentation_en-US" xlink:label="lab_cgnx_FairValueAdjustmentOnAcquiredInventories" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Fair Value Adjustment on Acquired Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_FairValueAdjustmentOnAcquiredInventories" xlink:href="cgnx-20240331.xsd#cgnx_FairValueAdjustmentOnAcquiredInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_FairValueAdjustmentOnAcquiredInventories" xlink:to="lab_cgnx_FairValueAdjustmentOnAcquiredInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_6c676b5b-9fae-403f-bddc-2d66656de009_terseLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net issuance of common stock under stock plans</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Issued During Period, Value, Stock Options Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_748ae3c3-0fee-49f7-9aca-0cced60d66f4_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt_terseLabel_en-US" xlink:label="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Compensation Actually Paid Amount</link:label>
    <link:label id="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt_label_en-US" xlink:label="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Compensation Actually Paid Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgCompActuallyPaidAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:to="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_c1f8d24b-b134-412c-bfc5-a5a2e87eccb3_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_d62b18c6-dd23-4268-823a-3f5bea9fa57d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-average grant-date fair values (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_c1e1a771-0898-435f-95b3-c3dc13d8e421_terseLabel_en-US" xlink:label="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023 Plan</link:label>
    <link:label id="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_label_en-US" xlink:label="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cognex Corporation 2023 Stock Option And Incentive Plan [Member]</link:label>
    <link:label id="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_documentation_en-US" xlink:label="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cognex Corporation 2023 Stock Option And Incentive Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" xlink:href="cgnx-20240331.xsd#cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" xlink:to="lab_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_71167cba-bec8-41e6-9cdb-b0300c1031f2_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_c21a2ac9-7401-41d4-993e-e4800c1a07b9_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6ea16c1d-916e-4364-92ec-1efdb2d1def0_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_6aaf315a-d344-49ae-a0b5-ce343e4e2a58_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_7feecd19-d080-4cbd-b551-f871fefbd274_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:label id="lab_us-gaap_DerivativeContractTypeDomain_label_en-US" xlink:label="lab_us-gaap_DerivativeContractTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Contract [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeContractTypeDomain" xlink:to="lab_us-gaap_DerivativeContractTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_a2237546-f398-4bde-91d5-b00374c7f729_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ChangedPeerGroupFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_ChangedPeerGroupFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changed Peer Group, Footnote</link:label>
    <link:label id="lab_ecd_ChangedPeerGroupFnTextBlock_label_en-US" xlink:label="lab_ecd_ChangedPeerGroupFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Changed Peer Group, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ChangedPeerGroupFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:to="lab_ecd_ChangedPeerGroupFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CoSelectedMeasureName_terseLabel_en-US" xlink:label="lab_ecd_CoSelectedMeasureName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Company Selected Measure Name</link:label>
    <link:label id="lab_ecd_CoSelectedMeasureName_label_en-US" xlink:label="lab_ecd_CoSelectedMeasureName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Company Selected Measure Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CoSelectedMeasureName" xlink:to="lab_ecd_CoSelectedMeasureName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_60f49096-efbd-4a98-aa33-0a8064705799_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateBondSecuritiesMember_e6145ca3-44af-4ad9-817b-885efada974c_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateBondSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate bonds</link:label>
    <link:label id="lab_us-gaap_CorporateBondSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_CorporateBondSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Corporate Bond Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateBondSecuritiesMember" xlink:to="lab_us-gaap_CorporateBondSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_AllCurrenciesDomain_b5ca4d3d-c72f-4e56-a454-0998b3594599_terseLabel_en-US" xlink:label="lab_currency_AllCurrenciesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:label id="lab_currency_AllCurrenciesDomain_label_en-US" xlink:label="lab_currency_AllCurrenciesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Currencies [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_AllCurrenciesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_AllCurrenciesDomain" xlink:to="lab_currency_AllCurrenciesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_82827067-9c32-461c-867a-cbd6e33efcf8_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_b84ce716-2a0f-4f5e-8335-525f2e90765d_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent_c304769f-353a-423c-8de4-019975162c48_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortized cost of current investments</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Amortized Cost, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_e3cdb359-8e04-44c0-8d5a-c61a3c26247d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodValue_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Period, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_9880f8d8-78a0-4166-92f4-62608118756a_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Domain]</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_6736a66d-9a35-46fd-a2d8-149bbcb55555_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:to="lab_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_04afd297-8a95-4e7d-994f-8301723e7c12_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shareholders&#8217; equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_60b6a298-a254-4fb0-ba24-25213b01d7a1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gross Unrealized Losses</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_d7c9c3a4-9812-4125-a584-6d93b16ffb81_negatedLabel_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Exercised (in shares)</link:label>
    <link:label id="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:to="lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_LiabilityForUncertainTaxPositions_b27e3ec7-7546-497d-9aa1-a0a7015ee68f_terseLabel_en-US" xlink:label="lab_cgnx_LiabilityForUncertainTaxPositions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liability for uncertain tax positions</link:label>
    <link:label id="lab_cgnx_LiabilityForUncertainTaxPositions_label_en-US" xlink:label="lab_cgnx_LiabilityForUncertainTaxPositions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liability For Uncertain Tax Positions</link:label>
    <link:label id="lab_cgnx_LiabilityForUncertainTaxPositions_documentation_en-US" xlink:label="lab_cgnx_LiabilityForUncertainTaxPositions" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Liability for uncertain tax positions, total.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LiabilityForUncertainTaxPositions" xlink:href="cgnx-20240331.xsd#cgnx_LiabilityForUncertainTaxPositions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_LiabilityForUncertainTaxPositions" xlink:to="lab_cgnx_LiabilityForUncertainTaxPositions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherIntangibleAssetsMember_ef8db360-d39c-4929-a753-31c0e74a172e_terseLabel_en-US" xlink:label="lab_us-gaap_OtherIntangibleAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-compete agreements</link:label>
    <link:label id="lab_us-gaap_OtherIntangibleAssetsMember_label_en-US" xlink:label="lab_us-gaap_OtherIntangibleAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Intangible Assets [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIntangibleAssetsMember" xlink:to="lab_us-gaap_OtherIntangibleAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_cffeeb78-4e1b-45a1-838a-0d6ec80a165e_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxContingencyTable_d7610c5f-1c7e-40b6-ab1e-7f460b1f1917_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Table]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxContingencyTable_label_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxContingencyTable" xlink:to="lab_us-gaap_IncomeTaxContingencyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_f1a2f5db-f54d-478a-90b4-da54cb64f90c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting period for stock option plans</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredRevenueAdditions_38dc00f1-3f24-407d-acca-5990aad2056a_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueAdditions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferral of revenue billed in the current period, net of recognition</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueAdditions_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueAdditions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Additions</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueAdditions" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueAdditions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueAdditions" xlink:to="lab_us-gaap_DeferredRevenueAdditions" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ExecutiveCategoryAxis_terseLabel_en-US" xlink:label="lab_ecd_ExecutiveCategoryAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Executive Category:</link:label>
    <link:label id="lab_ecd_ExecutiveCategoryAxis_label_en-US" xlink:label="lab_ecd_ExecutiveCategoryAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Executive Category [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ExecutiveCategoryAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ExecutiveCategoryAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ExecutiveCategoryAxis" xlink:to="lab_ecd_ExecutiveCategoryAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_52773936-c909-4815-9ce6-eaf937eda473_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Calculation of Weighted-Average Shares</link:label>
    <link:label id="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Weighted Average Number of Shares [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_fb78643f-e348-49c6-9d00-9acbbbdcc50d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares (in thousands)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_c2d295f9-7330-42aa-a52e-e7f46a16dbf9_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_df6a033c-4f8c-4d43-9a3c-a18561ba8e30_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercised (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_b4948c1b-20f3-4dc9-b52b-a295d4191167_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MeasureName_terseLabel_en-US" xlink:label="lab_ecd_MeasureName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_MeasureName_label_en-US" xlink:label="lab_ecd_MeasureName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measure Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MeasureName" xlink:to="lab_ecd_MeasureName" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryIndName_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryIndName_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryIndName" xlink:to="lab_ecd_ForgoneRecoveryIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_GBP_73806492-42c6-4c90-9d9e-be33ecde5c71_terseLabel_en-US" xlink:label="lab_currency_GBP" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">British Pound</link:label>
    <link:label id="lab_currency_GBP_label_en-US" xlink:label="lab_currency_GBP" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">United Kingdom, Pounds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_GBP" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_GBP"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_GBP" xlink:to="lab_currency_GBP" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Goodwill_a832b5c4-9aef-4795-8430-0b2a2535e41f_terseLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_Goodwill_5ad7373a-208e-44db-a7a8-949fab0b691f_periodStartLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance as of December 31, 2023</link:label>
    <link:label id="lab_us-gaap_Goodwill_831df195-3ba9-4da2-ad7f-b700cc31b74d_periodEndLabel_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance as of March 31, 2024</link:label>
    <link:label id="lab_us-gaap_Goodwill_label_en-US" xlink:label="lab_us-gaap_Goodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Goodwill" xlink:to="lab_us-gaap_Goodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_50caf409-72e2-451e-a6b3-f778584962de_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_719c5407-d438-47ef-ab73-3fde2dc00705_terseLabel_en-US" xlink:label="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financial Instruments [Domain]</link:label>
    <link:label id="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_label_en-US" xlink:label="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Instruments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:to="lab_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_Additional402vDisclosureTextBlock_terseLabel_en-US" xlink:label="lab_ecd_Additional402vDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional 402(v) Disclosure</link:label>
    <link:label id="lab_ecd_Additional402vDisclosureTextBlock_label_en-US" xlink:label="lab_ecd_Additional402vDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional 402(v) Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Additional402vDisclosureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Additional402vDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_Additional402vDisclosureTextBlock" xlink:to="lab_ecd_Additional402vDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_c6c13001-6987-4f39-8141-c7a5d32d8d4d_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued expenses</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CertificatesOfDepositMember_928710aa-6817-42c7-a107-ed485d125d12_terseLabel_en-US" xlink:label="lab_us-gaap_CertificatesOfDepositMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Certificate of deposit</link:label>
    <link:label id="lab_us-gaap_CertificatesOfDepositMember_label_en-US" xlink:label="lab_us-gaap_CertificatesOfDepositMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Certificates of Deposit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CertificatesOfDepositMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CertificatesOfDepositMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CertificatesOfDepositMember" xlink:to="lab_us-gaap_CertificatesOfDepositMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_3221e3e6-5cfb-46d3-a99d-01170c4bc80f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares available for grant under stock option plans (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentTypeAxis_00ab685a-07dc-4a2c-9acd-04e4da0d2870_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:label id="lab_us-gaap_InvestmentTypeAxis_label_en-US" xlink:label="lab_us-gaap_InvestmentTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTypeAxis" xlink:to="lab_us-gaap_InvestmentTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_399741d6-17a2-4300-8cb7-ee74be8c8dea_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionTable_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Lease, Description [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable" xlink:to="lab_us-gaap_LesseeLeaseDescriptionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardUndrlygSecuritiesAmt_terseLabel_en-US" xlink:label="lab_ecd_AwardUndrlygSecuritiesAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Underlying Securities</link:label>
    <link:label id="lab_ecd_AwardUndrlygSecuritiesAmt_label_en-US" xlink:label="lab_ecd_AwardUndrlygSecuritiesAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Underlying Securities Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardUndrlygSecuritiesAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:to="lab_ecd_AwardUndrlygSecuritiesAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_11e80f6a-8525-4d38-b894-32ca9dc6c3ec_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_50468f65-169b-49bd-9563-6c09c31dd053_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2028</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentTypeCategorizationMember_8de023cb-5e7f-4b82-96f3-f5387e3b6c96_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTypeCategorizationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:label id="lab_us-gaap_InvestmentTypeCategorizationMember_label_en-US" xlink:label="lab_us-gaap_InvestmentTypeCategorizationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember" xlink:to="lab_us-gaap_InvestmentTypeCategorizationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_5066cfd0-157a-45d0-b615-a5aaceb32017_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_f6dd0e95-dd04-452f-a5ca-d78a4c3c9c82_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RecoveryOfErrCompDisclosureLineItems_label_en-US" xlink:label="lab_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Recovery of Erroneously Awarded Compensation Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RecoveryOfErrCompDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="lab_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease_36d0953a-f6f3-47c8-982c-45985ca8ab4b_terseLabel_en-US" xlink:label="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange rate changes</link:label>
    <link:label id="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease_label_en-US" xlink:label="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease)</link:label>
    <link:label id="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease_documentation_en-US" xlink:label="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" xlink:href="cgnx-20240331.xsd#cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" xlink:to="lab_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareDeclared_a2ae49b4-5758-4deb-9a87-33377ae0264c_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividends (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareDeclared_label_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Dividends, Per Share, Declared</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareDeclared" xlink:to="lab_us-gaap_CommonStockDividendsPerShareDeclared" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_01a9a38a-a8a4-4cf3-8b86-200549719b53_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative, Notional Amount</link:label>
    <link:label id="lab_us-gaap_DerivativeNotionalAmount_label_en-US" xlink:label="lab_us-gaap_DerivativeNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Notional Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeNotionalAmount" xlink:to="lab_us-gaap_DerivativeNotionalAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_55ab2d75-2e3b-4b92-9c5d-43a8975ef2dd_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net unrealized gain (loss) on available-for-sale investments, net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_15467f5d-61cf-4692-b86c-f67f6e62c599_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByMeasurementFrequencyAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:to="lab_us-gaap_FairValueByMeasurementFrequencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_1a265dbf-cd59-495a-bfba-b305bd73c7f9_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-current operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_b89b9284-adf3-453c-a12a-f3d2d16b16fa_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective Maturity Dates of Available-for-Sale Investments</link:label>
    <link:label id="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_label_en-US" xlink:label="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments Classified by Contractual Maturity Date [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:to="lab_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_0ffe4228-4d0b-4a4c-b54e-92b74ed6313c_terseLabel_en-US" xlink:label="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
    <link:label id="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_label_en-US" xlink:label="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customer [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:to="lab_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_8c21d4c8-a0fd-4ca1-a8d9-c18ec826320d_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs)</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Violation of Home Country Law, Amount</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Violation of Home Country Law, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:to="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Depreciation_f123f98c-2756-4408-bddd-a0e8f9ac1013_terseLabel_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation of property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_Depreciation_label_en-US" xlink:label="lab_us-gaap_Depreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Depreciation" xlink:to="lab_us-gaap_Depreciation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TrademarksMember_cbef7ac9-a356-43a2-a31e-d4bc4dcd0fb0_terseLabel_en-US" xlink:label="lab_us-gaap_TrademarksMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trademarks</link:label>
    <link:label id="lab_us-gaap_TrademarksMember_label_en-US" xlink:label="lab_us-gaap_TrademarksMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trademarks [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TrademarksMember" xlink:to="lab_us-gaap_TrademarksMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_d6819f93-0367-4a22-bc4c-8635487a2389_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_c0ec17fd-fd85-4593-a6bf-ebad086489ea_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts offset</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Liability, Subject to Master Netting Arrangement, Collateral, Right to Reclaim Cash Offset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:to="lab_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_8da101ab-49b3-4abe-a7b9-534c2adbb8ab_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_a6f73529-3c77-4d19-86e8-1247f0c19242_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of dilutive equity awards (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted, Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignExchangeForwardMember_636f86f1-b790-477a-8691-3dcebc0df158_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignExchangeForwardMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign Exchange Forward</link:label>
    <link:label id="lab_us-gaap_ForeignExchangeForwardMember_label_en-US" xlink:label="lab_us-gaap_ForeignExchangeForwardMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Exchange Forward [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignExchangeForwardMember" xlink:to="lab_us-gaap_ForeignExchangeForwardMember" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_EuropeMember_82f7bf48-760f-4c9f-a6a9-ff0a441ac92f_terseLabel_en-US" xlink:label="lab_srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Europe</link:label>
    <link:label id="lab_srt_EuropeMember_label_en-US" xlink:label="lab_srt_EuropeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Europe [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EuropeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EuropeMember" xlink:to="lab_srt_EuropeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnSaleOfInvestments_b98d9ff5-7a69-4020-94f5-55ff818d556a_negatedLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Realized (gain) loss on sale of investments</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfInvestments_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Sale of Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfInvestments" xlink:to="lab_us-gaap_GainLossOnSaleOfInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_4a9b703d-c922-4ddf-9b18-4ba868e4dc93_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued income taxes</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesCurrent_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Income Taxes, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesCurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_760e9ea3-f30f-407b-a7d3-bd568a63bfa9_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OtherPerfMeasureAmt_terseLabel_en-US" xlink:label="lab_ecd_OtherPerfMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Performance Measure, Amount</link:label>
    <link:label id="lab_ecd_OtherPerfMeasureAmt_label_en-US" xlink:label="lab_ecd_OtherPerfMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Performance Measure, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OtherPerfMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OtherPerfMeasureAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OtherPerfMeasureAmt" xlink:to="lab_ecd_OtherPerfMeasureAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrSecuritiesAggAvailAmt_terseLabel_en-US" xlink:label="lab_ecd_TrdArrSecuritiesAggAvailAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Available</link:label>
    <link:label id="lab_ecd_TrdArrSecuritiesAggAvailAmt_label_en-US" xlink:label="lab_ecd_TrdArrSecuritiesAggAvailAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement, Securities Aggregate Available Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrSecuritiesAggAvailAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:to="lab_ecd_TrdArrSecuritiesAggAvailAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_96e9fe30-b32e-46e9-a7ac-55eb142aa8e3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_609c8823-3129-486d-ad27-5ccd5da6b407_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net change related to available-for-sale investments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Available-for-Sale Securities Adjustment, Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_ae6ee865-b224-4c26-a0d9-573940acc760_terseLabel_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Research, development, and engineering</link:label>
    <link:label id="lab_us-gaap_ResearchAndDevelopmentExpenseMember_label_en-US" xlink:label="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Research and Development Expense [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:to="lab_us-gaap_ResearchAndDevelopmentExpenseMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_375b26cc-0c21-4ad7-92c7-9f37ac449ce6_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock_terseLabel_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Not Adopted</link:label>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock_label_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Not Adopted [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:to="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_613c785d-661a-43a2-9063-191ce691ed88_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Anti-dilutive securities excluded from computation of earnings per share (shares)</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_1dbf8b75-ec76-436d-90fd-5ad5782b2abd_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_987249d8-b740-4185-af90-78616bd00ab2_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c426e24b-7510-461e-bade-a2fe679d73c2_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_8b24a757-715c-4dea-9c56-c66ad2735c7a_terseLabel_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total fair values of stock options vest</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_label_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Vested Fair Value</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_documentation_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share based compensation arrangement by share based payment award options vested fair value.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:to="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameDomain_4d8dbdc2-1909-4df4-ab61-0a6b6ac4f3a3_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentQuarterlyReport_9aa15b75-e178-41b1-9a23-258bee95a8dc_terseLabel_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:label id="lab_dei_DocumentQuarterlyReport_label_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentQuarterlyReport" xlink:to="lab_dei_DocumentQuarterlyReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_e4466497-15d1-43f3-b405-2f91f85d0033_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts offset</link:label>
    <link:label id="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_label_en-US" xlink:label="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset, Subject to Master Netting Arrangement, Collateral, Obligation to Return Cash, Offset Against Derivative Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:to="lab_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c11297-c7ba-4c53-8e09-1450e8f8f5d2_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_7e79e2bf-d4f5-43ab-9a34-ef03f2c52980_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares auhtorised for grant under stock option plans (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_a55443fc-da56-4ee7-a6f4-3760c1750e8f_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationAxis_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Designation [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationAxis" xlink:to="lab_us-gaap_HedgingDesignationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ExcessAndObsoleteInventoryCharges_2de49067-2469-4a4b-a2a6-1fb220ede9b1_terseLabel_en-US" xlink:label="lab_cgnx_ExcessAndObsoleteInventoryCharges" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Excess and obsolete inventory charges</link:label>
    <link:label id="lab_cgnx_ExcessAndObsoleteInventoryCharges_label_en-US" xlink:label="lab_cgnx_ExcessAndObsoleteInventoryCharges" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Excess and Obsolete Inventory Charges</link:label>
    <link:label id="lab_cgnx_ExcessAndObsoleteInventoryCharges_documentation_en-US" xlink:label="lab_cgnx_ExcessAndObsoleteInventoryCharges" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Excess and Obsolete Inventory Charges</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ExcessAndObsoleteInventoryCharges" xlink:href="cgnx-20240331.xsd#cgnx_ExcessAndObsoleteInventoryCharges"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ExcessAndObsoleteInventoryCharges" xlink:to="lab_cgnx_ExcessAndObsoleteInventoryCharges" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_356e8ba4-2b2b-4c14-9389-181b367e1611_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_9ebfb5b0-86b6-4c8e-9cc3-e8030f773089_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_caf77637-9682-4a5b-84e7-bbf8fa2bea4b_verboseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Remainder of fiscal 2024</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TradingArrAxis_terseLabel_en-US" xlink:label="lab_ecd_TradingArrAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Arrangement:</link:label>
    <link:label id="lab_ecd_TradingArrAxis_label_en-US" xlink:label="lab_ecd_TradingArrAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TradingArrAxis" xlink:to="lab_ecd_TradingArrAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoActuallyPaidCompAmt_terseLabel_en-US" xlink:label="lab_ecd_PeoActuallyPaidCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO Actually Paid Compensation Amount</link:label>
    <link:label id="lab_ecd_PeoActuallyPaidCompAmt_label_en-US" xlink:label="lab_ecd_PeoActuallyPaidCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO Actually Paid Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoActuallyPaidCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoActuallyPaidCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoActuallyPaidCompAmt" xlink:to="lab_ecd_PeoActuallyPaidCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_fc77d5ca-b9d1-4f57-bf1e-1a1d8226d2e7_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivatives, Fair Value [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativesFairValueLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativesFairValueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivatives, Fair Value [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesFairValueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativesFairValueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativesFairValueLineItems" xlink:to="lab_us-gaap_DerivativesFairValueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_d284c29f-f99e-4c60-8142-a33f95481a15_terseLabel_en-US" xlink:label="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Gross, Offset to Tax Attributes</link:label>
    <link:label id="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_label_en-US" xlink:label="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Gross, Offset to Tax Attributes</link:label>
    <link:label id="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_documentation_en-US" xlink:label="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Gross, Offset to Tax Attributes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" xlink:href="cgnx-20240331.xsd#cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" xlink:to="lab_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_9b3f80b0-63da-4e85-af8a-c1f4a199129f_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_c8d3be5b-d335-44b5-84c1-69b8c250136c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, after Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_90830468-8ca5-4add-9dc5-11b1b056138a_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss_8a993c9d-88d9-4ae7-9041-05eccaeb51a0_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt securities, available-for-sale, allowance for credit loss</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_9b295de6-0deb-4ffe-a4e5-e289320875cc_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization of intangible assets</link:label>
    <link:label id="lab_us-gaap_AmortizationOfIntangibleAssets_label_en-US" xlink:label="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of Intangible Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfIntangibleAssets" xlink:to="lab_us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValueOutstanding_5479a685-bb36-403f-a578-713c6d603a92_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValueOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock, $.01 par value &#8211; Authorized: 400 shares in 2024 and 2023, respectively; no shares issued and outstanding</link:label>
    <link:label id="lab_us-gaap_PreferredStockValueOutstanding_label_en-US" xlink:label="lab_us-gaap_PreferredStockValueOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Value, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValueOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValueOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValueOutstanding" xlink:to="lab_us-gaap_PreferredStockValueOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_853a4feb-2297-4b25-8443-efeaeae630f8_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_d0182cae-8ef1-445f-bf8f-a283b1862d7c_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermInvestments_5a1fc31e-37bc-42fc-bd10-35288c836c71_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-current investments, amortized cost of $285,376 and $250,790 in 2024 and 2023, respectively, allowance for credit losses of $0 in 2024 and 2023</link:label>
    <link:label id="lab_us-gaap_LongTermInvestments_b6482aac-dcd3-48c1-bf10-87c0bceec28c_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Non-current investments</link:label>
    <link:label id="lab_us-gaap_LongTermInvestments_label_en-US" xlink:label="lab_us-gaap_LongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermInvestments" xlink:to="lab_us-gaap_LongTermInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_116c6388-f78b-4447-aa78-9b03686a630f_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAcquireeDomain_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition, Acquiree [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:to="lab_us-gaap_BusinessAcquisitionAcquireeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_SGD_f44e93d4-cedf-4a8c-a87a-386b59a5ffb1_terseLabel_en-US" xlink:label="lab_currency_SGD" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Singapore Dollar</link:label>
    <link:label id="lab_currency_SGD_label_en-US" xlink:label="lab_currency_SGD" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Singapore, Dollars</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_SGD" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_SGD"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_SGD" xlink:to="lab_currency_SGD" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_fe1e5c3b-5cad-44f1-8c10-50a61cd5dab8_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_dd7eb40a-b955-402c-9cee-37cd5d899c23_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible assets, net</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_5f331917-d0ca-4adf-bf15-5f64750922b2_totalLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net Carrying Value</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsNet_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RestatementDeterminationDate_terseLabel_en-US" xlink:label="lab_ecd_RestatementDeterminationDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement Determination Date</link:label>
    <link:label id="lab_ecd_RestatementDeterminationDate_label_en-US" xlink:label="lab_ecd_RestatementDeterminationDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Determination Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDeterminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDeterminationDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RestatementDeterminationDate" xlink:to="lab_ecd_RestatementDeterminationDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnbilledReceivablesCurrent_0d38b2cc-4569-485d-9752-024e782879d2_terseLabel_en-US" xlink:label="lab_us-gaap_UnbilledReceivablesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unbilled revenue</link:label>
    <link:label id="lab_us-gaap_UnbilledReceivablesCurrent_label_en-US" xlink:label="lab_us-gaap_UnbilledReceivablesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unbilled Receivables, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnbilledReceivablesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnbilledReceivablesCurrent" xlink:to="lab_us-gaap_UnbilledReceivablesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_Rule10b51ArrAdoptedFlag_terseLabel_en-US" xlink:label="lab_ecd_Rule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Adopted</link:label>
    <link:label id="lab_ecd_Rule10b51ArrAdoptedFlag_label_en-US" xlink:label="lab_ecd_Rule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Adopted [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrAdoptedFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:to="lab_ecd_Rule10b51ArrAdoptedFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeAssetNotionalAmount_69681775-c2ca-45b6-8eba-28f60ea5c6be_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssetNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding forward contracts</link:label>
    <link:label id="lab_us-gaap_DerivativeAssetNotionalAmount_label_en-US" xlink:label="lab_us-gaap_DerivativeAssetNotionalAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset, Notional Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetNotionalAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssetNotionalAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssetNotionalAmount" xlink:to="lab_us-gaap_DerivativeAssetNotionalAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_12aefc0f-642c-4981-9932-3145701a04b1_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_cff78102-2ebb-4934-a359-3e5f0ae1d8f6_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_8782000d-1340-4cd8-8449-12aa46e0947e_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CustomerContractsAndRelationshipsMember_a975aaf3-ad2c-474d-8c53-9db28ed014bb_terseLabel_en-US" xlink:label="lab_cgnx_CustomerContractsAndRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Customer relationships</link:label>
    <link:label id="lab_cgnx_CustomerContractsAndRelationshipsMember_label_en-US" xlink:label="lab_cgnx_CustomerContractsAndRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Contracts And Relationships [Member]</link:label>
    <link:label id="lab_cgnx_CustomerContractsAndRelationshipsMember_documentation_en-US" xlink:label="lab_cgnx_CustomerContractsAndRelationshipsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Customer Contracts And Relationships [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CustomerContractsAndRelationshipsMember" xlink:href="cgnx-20240331.xsd#cgnx_CustomerContractsAndRelationshipsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CustomerContractsAndRelationshipsMember" xlink:to="lab_cgnx_CustomerContractsAndRelationshipsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_b6e8048e-eea0-472a-a36e-4f749057dc7f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_A88000SquareFootPremisesMember_cd353b74-170a-4eaa-9819-e91e5da7570f_terseLabel_en-US" xlink:label="lab_cgnx_A88000SquareFootPremisesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">88,000 square-foot premises</link:label>
    <link:label id="lab_cgnx_A88000SquareFootPremisesMember_label_en-US" xlink:label="lab_cgnx_A88000SquareFootPremisesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">88,000 Square-Foot Premises [Member]</link:label>
    <link:label id="lab_cgnx_A88000SquareFootPremisesMember_documentation_en-US" xlink:label="lab_cgnx_A88000SquareFootPremisesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">88,000 Square-Foot Premises</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_A88000SquareFootPremisesMember" xlink:href="cgnx-20240331.xsd#cgnx_A88000SquareFootPremisesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_A88000SquareFootPremisesMember" xlink:to="lab_cgnx_A88000SquareFootPremisesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock_terseLabel_en-US" xlink:label="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Price or TSR Estimation Method</link:label>
    <link:label id="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock_label_en-US" xlink:label="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Price or TSR Estimation Method [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_StkPrcOrTsrEstimationMethodTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:to="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseCost_80d7f99e-1687-41b4-98f0-83076988257b_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease, cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost" xlink:to="lab_us-gaap_OperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_e65073d4-146c-4789-89a0-2c7d28193566_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair value, 12 months or greater</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_2208127e-8767-4c19-b687-a92404eeb9ec_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_08b80121-eea7-4ff5-8df0-b55fe7d06f13_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_85186244-916c-421b-a860-68197f7003ba_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending Balance (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock_9244b7c5-ff4b-47c3-b196-a92e78e9699e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Nonvested Restricted Stock Units Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Nonvested Restricted Stock Units Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_8b6a52ef-f71f-438d-a6f0-a28f826ce85c_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationConsiderationTransferred1_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination, Consideration Transferred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:to="lab_us-gaap_BusinessCombinationConsiderationTransferred1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8bc29d81-24ab-4e5d-85f2-99485a933d35_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_c488179b-73a7-4fe0-b29f-ceede9df1ead_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Vested (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_b82a24f5-2dda-48b2-bf8d-409c2b0d3ff3_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maturities and sales of investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale, Maturity and Collection of Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:to="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_fb22ecbb-2015-42c7-9856-b72b9a7481d9_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross margin</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_0b928e9c-29ba-4c9b-bdd7-09cc82e32855_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue and customer deposits</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:to="lab_us-gaap_ContractWithCustomerLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_9199988b-92e7-4d71-805d-147167b09658_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SovereignDebtMember_f70656d7-2c75-4a25-a36b-b87b7813d44b_terseLabel_en-US" xlink:label="lab_us-gaap_SovereignDebtMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sovereign bonds</link:label>
    <link:label id="lab_us-gaap_SovereignDebtMember_label_en-US" xlink:label="lab_us-gaap_SovereignDebtMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sovereign Debt [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SovereignDebtMember" xlink:to="lab_us-gaap_SovereignDebtMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_72174589-bca8-4ddf-9e6a-dec4ea3e89b6_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_b180f69e-e7a0-419b-8f4c-169c029a34f1_negatedTotalLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" xlink:role="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="resource" xml:lang="en-US">Total unrealized Losses</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Unrealized Loss Position, Accumulated Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_a7dab61a-cf12-4423-82cd-b39920ec910e_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, general, and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_fd0d97d1-9e33-4467-8fc7-e2db96c77559_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive loss, net of tax</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_CHF_bbb8a7f2-8846-4039-9a8c-69613e1a6a09_terseLabel_en-US" xlink:label="lab_currency_CHF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Swiss Franc</link:label>
    <link:label id="lab_currency_CHF_label_en-US" xlink:label="lab_currency_CHF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Switzerland, Francs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CHF" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CHF"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CHF" xlink:to="lab_currency_CHF" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_453855a7-8756-453a-8667-215248b964b8_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Stock Option</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Stock Option [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_68e85aac-3238-40fb-9c89-8366d767952d_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_61cf33f7-ca08-4f00-921e-f9a53a6d0540_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Economic hedge forward contracts</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Contract, Asset, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyContractAssetFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:to="lab_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_b736abd8-3359-43b2-89ff-baf9d6f06a9d_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_c4715aaa-7877-49d8-8a18-06c075db566a_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total comprehensive income (loss)</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_77485c82-e7ec-42f1-8abb-685fca4c0ba0_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized compensation expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_a87347ff-8a18-4c87-973a-21de92a47904_terseLabel_en-US" xlink:label="lab_cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Groups within the employee population</link:label>
    <link:label id="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_label_en-US" xlink:label="lab_cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number Of Groups Within Employee Population</link:label>
    <link:label id="lab_cgnx_NumberOfGroupsWithinEmployeePopulation_documentation_en-US" xlink:label="lab_cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of groups within employee population.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:href="cgnx-20240331.xsd#cgnx_NumberOfGroupsWithinEmployeePopulation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:to="lab_cgnx_NumberOfGroupsWithinEmployeePopulation" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_8392724c-548e-43e7-af12-5015abacf3fb_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2-3 Years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Two Years Before Three Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available-for-sale securities, debt maturities after second year but before third year, fair value.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_1562b9b0-853e-4214-b558-451a3f46c9ae_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxContingencies_63bf2a94-2115-41ff-9bd6-24cf485495fb_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in tax expense, tax reserves</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxContingencies_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Contingency, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TabularListTableTextBlock_terseLabel_en-US" xlink:label="lab_ecd_TabularListTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tabular List, Table</link:label>
    <link:label id="lab_ecd_TabularListTableTextBlock_label_en-US" xlink:label="lab_ecd_TabularListTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tabular List [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TabularListTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TabularListTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TabularListTableTextBlock" xlink:to="lab_ecd_TabularListTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DomesticCountryMember_1f6b686c-012c-4bd4-a1b2-3bf6587c3ab6_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Domestic Tax Authority</link:label>
    <link:label id="lab_us-gaap_DomesticCountryMember_label_en-US" xlink:label="lab_us-gaap_DomesticCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Domestic Tax Authority [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DomesticCountryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticCountryMember" xlink:to="lab_us-gaap_DomesticCountryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_TreasuryStockAdditionalSharesAcquired_89ad363f-3f0c-465a-a846-b861ba348d4f_terseLabel_en-US" xlink:label="lab_cgnx_TreasuryStockAdditionalSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional shares repurchased (in shares)</link:label>
    <link:label id="lab_cgnx_TreasuryStockAdditionalSharesAcquired_label_en-US" xlink:label="lab_cgnx_TreasuryStockAdditionalSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Additional Shares, Acquired</link:label>
    <link:label id="lab_cgnx_TreasuryStockAdditionalSharesAcquired_documentation_en-US" xlink:label="lab_cgnx_TreasuryStockAdditionalSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Treasury Stock, Additional Shares, Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_TreasuryStockAdditionalSharesAcquired" xlink:href="cgnx-20240331.xsd#cgnx_TreasuryStockAdditionalSharesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_TreasuryStockAdditionalSharesAcquired" xlink:to="lab_cgnx_TreasuryStockAdditionalSharesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_dd9c89a9-6526-47a7-87a0-1c2654a54a42_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_710a3b65-5c7b-458b-8a65-32cab4105d40_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Value of shares repurchased at cost</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValueAcquiredCostMethod_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Value, Acquired, Cost Method</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:to="lab_us-gaap_TreasuryStockValueAcquiredCostMethod" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_3246b019-7846-4715-a778-8f1a8dd5a7ea_terseLabel_en-US" xlink:label="lab_cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Application-specific customer solutions</link:label>
    <link:label id="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_label_en-US" xlink:label="lab_cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Application-Specific Customer Solutions [Member]</link:label>
    <link:label id="lab_cgnx_ApplicationSpecificCustomerSolutionsMember_documentation_en-US" xlink:label="lab_cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Application-Specific Customer Solutions [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:href="cgnx-20240331.xsd#cgnx_ApplicationSpecificCustomerSolutionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:to="lab_cgnx_ApplicationSpecificCustomerSolutionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesNameDomain_dc7dfa6c-5867-4563-9c1d-c18dc06e52ae_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive Securities, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesNameDomain_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="lab_us-gaap_AntidilutiveSecuritiesNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTable_c26311d0-0467-48fe-8ada-cce7e7719ce3_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTable_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTable" xlink:to="lab_us-gaap_SubsequentEventTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted_1d51eb9b-9966-4eca-8470-8878cde53b10_terseLabel_en-US" xlink:label="lab_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding purchase orders</link:label>
    <link:label id="lab_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted_label_en-US" xlink:label="lab_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Purchase Commitment, Remaining Minimum Amount Committed</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted" xlink:to="lab_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock_c51e3afc-b833-40dd-8c35-945f581a1aca_terseLabel_en-US" xlink:label="lab_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Realized Gain (Loss) on Investments</link:label>
    <link:label id="lab_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Realized Gain (Loss) on Investments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RealizedGainLossOnInvestmentsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock" xlink:to="lab_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d0589fb1-e038-4334-8a47-a215b4f86675_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted- Average Exercise Price</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_112db24d-8f28-4561-aa62-4f600701db81_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:label id="lab_us-gaap_BusinessAcquisitionAxis_label_en-US" xlink:label="lab_us-gaap_BusinessAcquisitionAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Acquisition [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessAcquisitionAxis" xlink:to="lab_us-gaap_BusinessAcquisitionAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_6c0dadbe-70a0-42ba-9317-d0a4fcd32ec2_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for credit losses, current</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventMember_7b25df0c-e28a-45b6-88bd-40d4ece0a448_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeTable_09ff9558-2a25-4e3e-a7c6-ada59a9584d6_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeTable_label_en-US" xlink:label="lab_us-gaap_DerivativeTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeTable" xlink:to="lab_us-gaap_DerivativeTable" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_NonCurrentAssetsMember_bb3886a5-fc53-4eed-9470-b834f98f620f_terseLabel_en-US" xlink:label="lab_cgnx_NonCurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-current assets</link:label>
    <link:label id="lab_cgnx_NonCurrentAssetsMember_label_en-US" xlink:label="lab_cgnx_NonCurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-current Assets [Member]</link:label>
    <link:label id="lab_cgnx_NonCurrentAssetsMember_documentation_en-US" xlink:label="lab_cgnx_NonCurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Non-current Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_NonCurrentAssetsMember" xlink:href="cgnx-20240331.xsd#cgnx_NonCurrentAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_NonCurrentAssetsMember" xlink:to="lab_cgnx_NonCurrentAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_eecf4757-c811-441f-9f50-17cf181b1433_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Intangible Assets</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashMember_87130194-e551-4075-97bc-39eb72fb8d07_terseLabel_en-US" xlink:label="lab_us-gaap_CashMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_CashMember_label_en-US" xlink:label="lab_us-gaap_CashMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashMember" xlink:to="lab_us-gaap_CashMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_b1d39478-b78a-4c4c-9a70-88069fbb7f7e_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_fb2c5fba-7689-4772-b69a-3109e58787e2_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Raw Materials, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_f7a17cd2-74a8-445b-ba6d-94c69a10b207_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag_terseLabel_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Adopted</link:label>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag_label_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Adopted [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcAdoptedFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:to="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_ea73199c-f4a4-4e5e-844f-20990788a407_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:to="lab_us-gaap_CashAndCashEquivalentsFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease_a3ff9ea8-a449-49a7-98b5-ba535804e640_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Credit loss on investments</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Allowance for Credit Loss, Period Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_3f7cdc8f-7d46-4f2b-9387-b081a64af981_terseLabel_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Business Combinations</link:label>
    <link:label id="lab_us-gaap_BusinessCombinationDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:to="lab_us-gaap_BusinessCombinationDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLiabilities_eb8aab95-3d30-4696-b888-821c19dd6851_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative liability</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilities_75984e99-9841-4570-9769-c01846026c0b_totalLabel_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net amount of liabilities presented</link:label>
    <link:label id="lab_us-gaap_DerivativeLiabilities_label_en-US" xlink:label="lab_us-gaap_DerivativeLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLiabilities" xlink:to="lab_us-gaap_DerivativeLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AggtErrCompNotYetDeterminedTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Not Yet Determined</link:label>
    <link:label id="lab_ecd_AggtErrCompNotYetDeterminedTextBlock_label_en-US" xlink:label="lab_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Not Yet Determined [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompNotYetDeterminedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:to="lab_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_66e8bdbe-3434-474c-b262-feec51d9b29c_terseLabel_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Estimated forfeiture rate for unvested options for CEO</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_label_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Estimated Forfeiture Rate for Unvested Options for CEO</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_documentation_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Estimated Forfeiture Rate for Unvested Options for CEO</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" xlink:to="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_fbabab88-690b-4314-a46a-b01f374a8462_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Nonvested as of beginning of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_1773f4a1-dae0-485e-852f-2d5d7cb3618a_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Nonvested as of end of period (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_d418acd4-7e7e-4c7b-aa91-bbaf51e70ae9_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Expense of Enforcement, Amount</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Expense of Enforcement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:to="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_a7448ac1-832e-424c-9960-ad2bf524c656_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax effect of unrealized gain (loss) on available-for-sale investments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_1fc92faa-7fea-4137-9374-732f2ac141ed_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income per weighted-average common and common-equivalent share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract" xlink:to="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_2535ec60-9668-455b-ae87-bca4d29902e2_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_91b65854-3b85-49f7-96b3-f49d8195ea68_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_cb67e2a9-5770-4337-bffa-dcfe1d29bf4b_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange rate changes</link:label>
    <link:label id="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_label_en-US" xlink:label="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill, Foreign Currency Translation Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:to="lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_62d400a3-30ca-4399-b41a-f6bd11369de2_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_0a2bc758-6f4b-470d-903a-c342c014ff0d_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_00b942d6-b17c-4369-bed6-dd4e421d69d9_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lease, cost</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_f7f0d78d-33c6-48a5-96be-72186eb03773_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_d22454c9-0f65-4e76-82fb-37a35f85422a_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationDomain_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationDomain" xlink:to="lab_us-gaap_BalanceSheetLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinancialInstrumentAxis_2f23f23a-c8ec-4853-a605-6be92930b533_terseLabel_en-US" xlink:label="lab_us-gaap_FinancialInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financial Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_FinancialInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_FinancialInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Financial Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinancialInstrumentAxis" xlink:to="lab_us-gaap_FinancialInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_d3c820eb-23b3-4033-b471-52fc4d92839e_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestReceivable_05e208de-aa9b-4b7a-b6a7-d6ebd2d338b1_terseLabel_en-US" xlink:label="lab_us-gaap_InterestReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued interest receivable</link:label>
    <link:label id="lab_us-gaap_InterestReceivable_label_en-US" xlink:label="lab_us-gaap_InterestReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestReceivable" xlink:to="lab_us-gaap_InterestReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_c101652e-3c87-4aac-acf3-0286c6eaf687_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_f3eb438c-a0ac-4a24-9374-78769f5e7d4b_terseLabel_en-US" xlink:label="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax years open to examination by various taxing authorities for other entities</link:label>
    <link:label id="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_label_en-US" xlink:label="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Examination Years Under Examination Other Entities</link:label>
    <link:label id="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_documentation_en-US" xlink:label="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The tax year(s) being audited in connection with the income tax examination for other entities.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:href="cgnx-20240331.xsd#cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:to="lab_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TotalShareholderRtnAmt_terseLabel_en-US" xlink:label="lab_ecd_TotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Amount</link:label>
    <link:label id="lab_ecd_TotalShareholderRtnAmt_label_en-US" xlink:label="lab_ecd_TotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TotalShareholderRtnAmt" xlink:to="lab_ecd_TotalShareholderRtnAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_d7004139-29e0-42fc-addb-789dbf30d9f4_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock</link:label>
    <link:label id="lab_us-gaap_PaymentsForRepurchaseOfCommonStock_label_en-US" xlink:label="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for Repurchase of Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="lab_us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_c01ba4bd-0b42-4e1b-a1a6-453f79a9776a_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToPeoCompFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AdjToPeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment To PEO Compensation, Footnote</link:label>
    <link:label id="lab_ecd_AdjToPeoCompFnTextBlock_label_en-US" xlink:label="lab_ecd_AdjToPeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment To PEO Compensation, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToPeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToPeoCompFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToPeoCompFnTextBlock" xlink:to="lab_ecd_AdjToPeoCompFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_JPY_dfca7ba4-4566-4f96-bbd0-c1e1ebc4ad13_terseLabel_en-US" xlink:label="lab_currency_JPY" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Japanese Yen</link:label>
    <link:label id="lab_currency_JPY_label_en-US" xlink:label="lab_currency_JPY" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Japan, Yen</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_JPY" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_JPY"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_JPY" xlink:to="lab_currency_JPY" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_95eafbd9-b68d-4bcb-80f9-53600ae6ab1e_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_86c318b1-56f6-4287-a89f-7415cd691f96_terseLabel_en-US" xlink:label="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remaining maturity of foreign currency derivatives (up to)</link:label>
    <link:label id="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_label_en-US" xlink:label="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum Remaining Maturity of Foreign Currency Derivatives</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:to="lab_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_db8c634f-5ddd-479e-93bc-cb656340372c_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_bcb33ee7-1cdb-4b19-9d4b-2db38e4ee107_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">3-4 Years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Three Years Before Four Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available-for-sale securities, debt maturities after third year but before fourth year, fair value.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_3d86afaa-a045-40f4-9f5b-a1b87e19139d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_c000b2cc-0b5d-490b-81e6-1ee1df7c881e_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">5-8 Years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Five Years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Five Years</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_99b4da37-0010-4c70-b11b-49fab3740f85_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MeasureAxis_terseLabel_en-US" xlink:label="lab_ecd_MeasureAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Measure:</link:label>
    <link:label id="lab_ecd_MeasureAxis_label_en-US" xlink:label="lab_ecd_MeasureAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measure [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MeasureAxis" xlink:to="lab_ecd_MeasureAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_c24d54d0-c494-4121-90bd-896cf8a6d89c_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OutstandingRecoveryIndName_terseLabel_en-US" xlink:label="lab_ecd_OutstandingRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_OutstandingRecoveryIndName_label_en-US" xlink:label="lab_ecd_OutstandingRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Recovery, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OutstandingRecoveryIndName" xlink:to="lab_ecd_OutstandingRecoveryIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_StandardProductsandServicesMember_5b3b8e41-7a58-4f0b-991b-8cdcaa32c780_terseLabel_en-US" xlink:label="lab_cgnx_StandardProductsandServicesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Standard products and services</link:label>
    <link:label id="lab_cgnx_StandardProductsandServicesMember_label_en-US" xlink:label="lab_cgnx_StandardProductsandServicesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Products and Services [Member]</link:label>
    <link:label id="lab_cgnx_StandardProductsandServicesMember_documentation_en-US" xlink:label="lab_cgnx_StandardProductsandServicesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Standard Products and Services [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StandardProductsandServicesMember" xlink:href="cgnx-20240331.xsd#cgnx_StandardProductsandServicesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_StandardProductsandServicesMember" xlink:to="lab_cgnx_StandardProductsandServicesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_ff8832aa-8fd1-4f87-9350-6f52d0ccc7af_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_MXN_c92ea95e-2861-475c-b98d-eaed95eea1a5_terseLabel_en-US" xlink:label="lab_currency_MXN" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Mexican Peso</link:label>
    <link:label id="lab_currency_MXN_label_en-US" xlink:label="lab_currency_MXN" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Mexico, Pesos</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_MXN" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_MXN"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_MXN" xlink:to="lab_currency_MXN" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_e4e1560d-da57-416f-a3c3-147aa86f4d62_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_299b67dd-7485-4907-aaf9-ce7f9283fe94_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:to="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_2b796f5c-bad8-46b6-9192-e6951b6a003b_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_d5230391-5de9-42ef-8125-e0af5ab55371_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Total Shareholder Return</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Total Shareholder Return [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_fba7ce50-aca2-4a7e-9368-2b3c14e6a4f9_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_54797b1c-c83b-47f8-938c-02f99e843ef4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeasePayments_9e9f2cc1-28c8-4327-956e-64540f299093_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease, payments</link:label>
    <link:label id="lab_us-gaap_OperatingLeasePayments_label_en-US" xlink:label="lab_us-gaap_OperatingLeasePayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeasePayments" xlink:to="lab_us-gaap_OperatingLeasePayments" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_b373020e-bad0-41a0-806c-51f4d4de6dd2_terseLabel_en-US" xlink:label="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average period to be recognized</link:label>
    <link:label id="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_label_en-US" xlink:label="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition</link:label>
    <link:label id="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_documentation_en-US" xlink:label="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:href="cgnx-20240331.xsd#cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:to="lab_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_f598f81b-df0b-4ff7-85e3-52eae7d40a87_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalizedContractCostGross_64c9c95f-261d-44cd-af84-179e0f27352e_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Costs to fulfill contract</link:label>
    <link:label id="lab_us-gaap_CapitalizedContractCostGross_label_en-US" xlink:label="lab_us-gaap_CapitalizedContractCostGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capitalized Contract Cost, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalizedContractCostGross" xlink:to="lab_us-gaap_CapitalizedContractCostGross" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoMember_terseLabel_en-US" xlink:label="lab_ecd_PeoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO</link:label>
    <link:label id="lab_ecd_PeoMember_label_en-US" xlink:label="lab_ecd_PeoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoMember" xlink:to="lab_ecd_PeoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_fb2e4a47-37d8-44d2-a72c-e9d178223de1_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in tax expense related to state income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:to="lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_3e45d73a-b18b-4c1c-9d5d-333239b95006_verboseLabel_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Gross amounts of recognized assets</link:label>
    <link:label id="lab_us-gaap_DerivativeFairValueOfDerivativeAsset_label_en-US" xlink:label="lab_us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset, Subject to Master Netting Arrangement, before Offset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFairValueOfDerivativeAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:to="lab_us-gaap_DerivativeFairValueOfDerivativeAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_86cb1f5b-6a61-4852-9ef4-7de38280390d_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_7bb44d5a-aee5-448b-bb84-c9bf4c89df45_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net change related to foreign currency translation adjustments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_42002c18-0762-4c19-ae59-70045c8ac41b_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_USTreasuryBillSecuritiesMember_f5871baa-f2ed-4718-8c40-7f277c560f8a_terseLabel_en-US" xlink:label="lab_us-gaap_USTreasuryBillSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury bills</link:label>
    <link:label id="lab_us-gaap_USTreasuryBillSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_USTreasuryBillSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">US Treasury Bill Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_USTreasuryBillSecuritiesMember" xlink:to="lab_us-gaap_USTreasuryBillSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_0578d10d-360b-4fe2-9f59-788df71f3853_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Inventories</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_9da1f418-8361-4d43-8ceb-68a4f3039a6b_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares (in&#160;thousands)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OutstandingAggtErrCompAmt_terseLabel_en-US" xlink:label="lab_ecd_OutstandingAggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding Aggregate Erroneous Compensation Amount</link:label>
    <link:label id="lab_ecd_OutstandingAggtErrCompAmt_label_en-US" xlink:label="lab_ecd_OutstandingAggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Aggregate Erroneous Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingAggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingAggtErrCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OutstandingAggtErrCompAmt" xlink:to="lab_ecd_OutstandingAggtErrCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_d0625940-6d2f-4aad-9274-51b10c9534b9_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effective tax rate</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueCommissionersIrelandMember_18feb6a9-b878-477c-acd6-adface374cb6_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueCommissionersIrelandMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Ireland</link:label>
    <link:label id="lab_us-gaap_RevenueCommissionersIrelandMember_label_en-US" xlink:label="lab_us-gaap_RevenueCommissionersIrelandMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Commissioners, Ireland [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueCommissionersIrelandMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueCommissionersIrelandMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueCommissionersIrelandMember" xlink:to="lab_us-gaap_RevenueCommissionersIrelandMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_857c3903-62c7-4841-a883-d90b72bfec40_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liability</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_69e2e573-e635-45a4-bee4-fbcd7ca8ebdf_terseLabel_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Estimated annual forfeiture rate for unvested options for senior management</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_label_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Estimated Forfeiture Rate For Unvested Options For Senior Management</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_documentation_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Estimated forfeiture rate for unvested options for senior management.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:to="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_47eb4bcc-4641-4e4a-b13a-c9a1868b7da4_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reserve for income taxes</link:label>
    <link:label id="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_label_en-US" xlink:label="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liability for Uncertainty in Income Taxes, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:to="lab_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SovereignDebtSecuritiesMember_e83991ae-0165-4f07-8595-e9a4a05f1b8e_terseLabel_en-US" xlink:label="lab_us-gaap_SovereignDebtSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Sovereign bonds</link:label>
    <link:label id="lab_us-gaap_SovereignDebtSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_SovereignDebtSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Sovereign Debt Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SovereignDebtSecuritiesMember" xlink:to="lab_us-gaap_SovereignDebtSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Liabilities_27251144-553c-4174-9908-594bbcdc8a51_totalLabel_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities</link:label>
    <link:label id="lab_us-gaap_Liabilities_label_en-US" xlink:label="lab_us-gaap_Liabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Liabilities" xlink:to="lab_us-gaap_Liabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_bc52c49d-a8b6-4772-97c2-5258647b939a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected volatility</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Volatility Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock_terseLabel_en-US" xlink:label="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Vs Peer Group</link:label>
    <link:label id="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock_label_en-US" xlink:label="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Vs Peer Group [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnVsPeerGroupTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:to="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_2e0baafa-5544-4a12-ab7d-40f4e314ca3d_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_4cd74c26-5696-4f99-b2ba-f7e88be65e43_terseLabel_en-US" xlink:label="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-Based Compensation Expense</link:label>
    <link:label id="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_label_en-US" xlink:label="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shareholders' Equity and Share-Based Payments [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_SellingGeneralAndAdministrativeMember_d44b709c-e435-4b73-914d-9e8452c53b1d_terseLabel_en-US" xlink:label="lab_cgnx_SellingGeneralAndAdministrativeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Selling, general, and administrative</link:label>
    <link:label id="lab_cgnx_SellingGeneralAndAdministrativeMember_label_en-US" xlink:label="lab_cgnx_SellingGeneralAndAdministrativeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling General And Administrative [Member]</link:label>
    <link:label id="lab_cgnx_SellingGeneralAndAdministrativeMember_documentation_en-US" xlink:label="lab_cgnx_SellingGeneralAndAdministrativeMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Selling, general, and administrative.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SellingGeneralAndAdministrativeMember" xlink:href="cgnx-20240331.xsd#cgnx_SellingGeneralAndAdministrativeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_SellingGeneralAndAdministrativeMember" xlink:to="lab_cgnx_SellingGeneralAndAdministrativeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_092fe1a8-32f7-4c39-b228-a555b8c1b5e2_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_c263e1b6-a481-476b-abd1-332dea8b515b_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AggtErrCompAmt_terseLabel_en-US" xlink:label="lab_ecd_AggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Amount</link:label>
    <link:label id="lab_ecd_AggtErrCompAmt_label_en-US" xlink:label="lab_ecd_AggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AggtErrCompAmt" xlink:to="lab_ecd_AggtErrCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_28c38e9b-571a-42f9-b7c0-10236e8e6dbc_totalLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total fair value</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Unrealized Loss Position</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_235e44ff-b97d-4230-b27f-b212a221ac9f_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementFrequencyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measurement Frequency [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain" xlink:to="lab_us-gaap_FairValueMeasurementFrequencyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllExecutiveCategoriesMember_terseLabel_en-US" xlink:label="lab_ecd_AllExecutiveCategoriesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Executive Categories</link:label>
    <link:label id="lab_ecd_AllExecutiveCategoriesMember_label_en-US" xlink:label="lab_ecd_AllExecutiveCategoriesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Executive Categories [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllExecutiveCategoriesMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllExecutiveCategoriesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllExecutiveCategoriesMember" xlink:to="lab_ecd_AllExecutiveCategoriesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_c493e97a-ff68-4f8b-b455-50e81dde8b30_totalLabel_en-US" xlink:label="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label id="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_label_en-US" xlink:label="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash Cash Equivalents Short Term And Long Term Investments</link:label>
    <link:label id="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_documentation_en-US" xlink:label="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cash, cash equivalents, short term and long term investments.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:href="cgnx-20240331.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:to="lab_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_f36573ec-2bb4-4701-bce8-bc8088752475_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in tax expense related to transfer pricing and return-to-provision adjustments</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:to="lab_us-gaap_IncomeTaxReconciliationOtherAdjustments" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonRule10b51ArrAdoptedFlag_terseLabel_en-US" xlink:label="lab_ecd_NonRule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Adopted</link:label>
    <link:label id="lab_ecd_NonRule10b51ArrAdoptedFlag_label_en-US" xlink:label="lab_ecd_NonRule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Adopted [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrAdoptedFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:to="lab_ecd_NonRule10b51ArrAdoptedFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_7b10ce5f-dcef-483f-a32c-2bea08dc8a24_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent_c83cb810-fa59-440b-a926-d10ad31328b7_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortized cost of non-current investments</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Amortized Cost, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_763840f8-1fa6-4ae5-baa9-f46230c4911e_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_07b68b2f-5cfb-4f65-b89f-4d257455e6f2_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax benefit from compensation expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense, Tax Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_0cb360e6-02ab-4a0d-92b6-e24a9c0cf569_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxes_792a4c17-49eb-4afb-bb2e-a3ec876c65cd_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-current accrued income taxes</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Income Taxes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxes" xlink:to="lab_us-gaap_AccruedIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_fbee1872-d3cd-4f2a-b915-581d6789376f_terseLabel_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]</link:label>
    <link:label id="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_label_en-US" xlink:label="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:to="lab_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_e296dce0-acb9-42cf-91c4-b7f408a6d36d_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventLineItems_label_en-US" xlink:label="lab_us-gaap_SubsequentEventLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventLineItems" xlink:to="lab_us-gaap_SubsequentEventLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockOptionPlanExpense_badee3b9-0676-4407-a43e-870aa3294ef1_terseLabel_en-US" xlink:label="lab_us-gaap_StockOptionPlanExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_StockOptionPlanExpense_label_en-US" xlink:label="lab_us-gaap_StockOptionPlanExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock or Unit Option Plan Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionPlanExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockOptionPlanExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockOptionPlanExpense" xlink:to="lab_us-gaap_StockOptionPlanExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_3daa1865-8bdb-4d5f-94ca-d1432bb4e936_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair value, less than 12 months</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months" xlink:type="arc" order="1"/>
    <link:label id="lab_country_CN_1dd6c648-0609-4002-a66c-43cb341148db_terseLabel_en-US" xlink:label="lab_country_CN" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Greater China</link:label>
    <link:label id="lab_country_CN_label_en-US" xlink:label="lab_country_CN" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">CHINA</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_CN" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CN"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_CN" xlink:to="lab_country_CN" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_73185c4f-d0ef-446b-91cc-eb75b4418de9_terseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_6401db6d-470f-4e91-96d4-97effc0ce010_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross Unrealized Losses and Fair Values for Available-for-Sale Investments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Unrealized Loss on Investments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures, Table</link:label>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock_label_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:to="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_c8a1568d-b3f4-4bdb-88f5-0821f05b69b4_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_7939eb37-902a-4b63-8c4b-1457cbeffec5_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllIndividualsMember_terseLabel_en-US" xlink:label="lab_ecd_AllIndividualsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Individuals</link:label>
    <link:label id="lab_ecd_AllIndividualsMember_label_en-US" xlink:label="lab_ecd_AllIndividualsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Individuals [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllIndividualsMember" xlink:to="lab_ecd_AllIndividualsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_fb300f60-88fd-4637-a2f1-118a9962c35d_terseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other income (expense)</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_9d23c89a-314c-4c8f-84fa-2b2a4f26600c_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonPeoNeoAvgTotalCompAmt_terseLabel_en-US" xlink:label="lab_ecd_NonPeoNeoAvgTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Total Compensation Amount</link:label>
    <link:label id="lab_ecd_NonPeoNeoAvgTotalCompAmt_label_en-US" xlink:label="lab_ecd_NonPeoNeoAvgTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Total Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgTotalCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:to="lab_ecd_NonPeoNeoAvgTotalCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_da7580c8-eaa1-4ec7-9d97-e3295ab6b422_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_country_JP_aadbc0a1-4806-4fd4-8dcd-93e937c908a5_terseLabel_en-US" xlink:label="lab_country_JP" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">JAPAN</link:label>
    <link:label id="lab_country_JP_label_en-US" xlink:label="lab_country_JP" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">JAPAN</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_JP"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_JP" xlink:to="lab_country_JP" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_36471ded-1bbc-435d-b9e0-ed6aa6773eb8_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_926b1fdb-a3e5-4764-a077-71063329504c_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock repurchase program, authorized amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Authorized Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramAuthorizedAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_114fc7a4-fd69-421c-81de-f247d2b8b654_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_9cad969a-cd23-43f7-9b77-1be0402ba7b3_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_66765773-6fe5-4327-a1ff-631753ed7492_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Repurchase of common stock (in shares)</link:label>
    <link:label id="lab_us-gaap_StockRepurchasedDuringPeriodShares_label_en-US" xlink:label="lab_us-gaap_StockRepurchasedDuringPeriodShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Period, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="lab_us-gaap_StockRepurchasedDuringPeriodShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_e9cbf781-527e-459e-84b2-44e471a9dea4_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in tax expense related to stock-based compensation</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_7d8cea73-26b8-4087-92d0-07e47d5889d5_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityAxis_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoName_terseLabel_en-US" xlink:label="lab_ecd_PeoName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO Name</link:label>
    <link:label id="lab_ecd_PeoName_label_en-US" xlink:label="lab_ecd_PeoName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoName" xlink:to="lab_ecd_PeoName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_474eeb4e-6aff-43a6-8af0-d58b9663a18e_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_ab826f75-a5fc-43b7-b620-90b7a0a25964_terseLabel_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Intrinsic Value (in&#160;thousands)</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_label_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Based Compensation Arrangement By Share Based Payment Award Options Additional Disclosures1 [Abstract]</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_documentation_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1 [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:to="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_a64cf925-de8a-4111-ab8f-0c6af65b1e82_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_0e45a654-b3e6-435f-8f28-1a39cf175de4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2029</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_c23f93a2-6863-48da-9efe-6b92a1c43704_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Goodwill</link:label>
    <link:label id="lab_us-gaap_ScheduleOfGoodwillTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Goodwill [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfGoodwillTextBlock" xlink:to="lab_us-gaap_ScheduleOfGoodwillTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_d8967292-e2e8-4906-93ea-8cfdbf445f7f_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_OutstandingForwardContractsTableTextBlock_ea649c85-c5bf-4faf-8ab7-f53cecd13fe7_terseLabel_en-US" xlink:label="lab_cgnx_OutstandingForwardContractsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding Forward Contracts Table</link:label>
    <link:label id="lab_cgnx_OutstandingForwardContractsTableTextBlock_label_en-US" xlink:label="lab_cgnx_OutstandingForwardContractsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Forward Contracts [Table Text Block]</link:label>
    <link:label id="lab_cgnx_OutstandingForwardContractsTableTextBlock_documentation_en-US" xlink:label="lab_cgnx_OutstandingForwardContractsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Outstanding forward contracts table.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_OutstandingForwardContractsTableTextBlock" xlink:href="cgnx-20240331.xsd#cgnx_OutstandingForwardContractsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_OutstandingForwardContractsTableTextBlock" xlink:to="lab_cgnx_OutstandingForwardContractsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetBackedSecuritiesMember_a8e6c640-dea8-4af3-8ebb-0e53b1b7d5fa_terseLabel_en-US" xlink:label="lab_us-gaap_AssetBackedSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset-backed securities</link:label>
    <link:label id="lab_us-gaap_AssetBackedSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_AssetBackedSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset-Backed Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetBackedSecuritiesMember" xlink:to="lab_us-gaap_AssetBackedSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_691fa2c7-1a64-4640-980c-d45a2f275652_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_2a90c49a-1178-46b3-8ada-282b6eb9dac1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Intangible Assets, Future Amortization Expense</link:label>
    <link:label id="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:to="lab_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss_493e6296-b9a5-427b-b218-b656b235c046_terseLabel_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual, Foreign Currency Translation Gain (Loss)</link:label>
    <link:label id="lab_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss_label_en-US" xlink:label="lab_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Product Warranty Accrual, Foreign Currency Translation Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:to="lab_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_4502c81d-dbaf-4faf-a7f0-fdd38951ec9a_terseLabel_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Estimated annual forfeiture rate for unvested options for all other employees</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_label_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Estimated Forfeiture Rate For Unvested Options For All Non Senior Management</link:label>
    <link:label id="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_documentation_en-US" xlink:label="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Estimated forfeiture rate for unvested options for all non-senior management.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:to="lab_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_94ba3ac5-dc5e-41a6-93e2-bf22dcd618d8_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">1-2 Years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After One Year Before Two Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">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.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ErrCompRecoveryTable_terseLabel_en-US" xlink:label="lab_ecd_ErrCompRecoveryTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Erroneously Awarded Compensation Recovery</link:label>
    <link:label id="lab_ecd_ErrCompRecoveryTable_label_en-US" xlink:label="lab_ecd_ErrCompRecoveryTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Erroneously Awarded Compensation Recovery [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompRecoveryTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompRecoveryTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ErrCompRecoveryTable" xlink:to="lab_ecd_ErrCompRecoveryTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_ba1cfc78-3e57-4ce5-b359-ab6e94c5e50a_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current investments, amortized cost of $141,876 and $132,799 in 2024 and 2023, respectively, allowance for credit losses of $0 in 2024 and 2023</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_f3d4a5bf-01c3-482c-bd77-c6d1dab090e2_verboseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Current investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_ba0d9942-e6b9-4316-b2c3-c5a14d6f09fc_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Other Operating Assets and Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_EUR_e36a091b-6278-4970-93ec-e256075a24c2_terseLabel_en-US" xlink:label="lab_currency_EUR" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Euro</link:label>
    <link:label id="lab_currency_EUR_label_en-US" xlink:label="lab_currency_EUR" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Euro Member Countries, Euro</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_EUR"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_EUR" xlink:to="lab_currency_EUR" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing, How MNPI Considered</link:label>
    <link:label id="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock_label_en-US" xlink:label="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing, How MNPI Considered [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgHowMnpiCnsdrdTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:to="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_2e661d3f-d403-450c-93d7-4618ad682a0e_periodStartLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_341d8037-d300-478e-9197-3000585a8af0_periodEndLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrual" xlink:to="lab_us-gaap_ProductWarrantyAccrual" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_63b5a949-4320-4bbd-a2fc-e68b40b61fd0_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent_1aab2464-5ff4-4641-953c-c840a63d8c68_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for credit losses</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_label_en-US" xlink:label="lab_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Business Combination and Asset Acquisition [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:to="lab_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_f506ea85-806d-424b-a2df-ae1aa8692ce2_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_e74f5835-762f-4177-a442-ed740cd1a467_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_150af368-ccca-49c8-9daa-ada6563fa070_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending Balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredRevenueRevenueRecognized1_3e78147d-ece3-4c3e-871c-3bbd1b781299_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueRevenueRecognized1" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Recognition of revenue deferred in prior period</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueRevenueRecognized1_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueRevenueRecognized1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Revenue Recognized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueRevenueRecognized1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueRevenueRecognized1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueRevenueRecognized1" xlink:to="lab_us-gaap_DeferredRevenueRevenueRecognized1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_ba928859-dafe-4a63-9ae4-189d0675b418_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross realized gains</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Realized Gain</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedGain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_c2e35144-dbcb-4033-adc6-d777c74f1508_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions_1dec841d-6bd3-41f9-9fcc-9b848280e8b4_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Exercise of Option, Tax Benefit</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Exercise of Option, Tax Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_c10b7a10-7a25-423b-a82b-2a4b5b660a53_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue and customer deposits</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredRevenue_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Deferred Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockMember_4d528170-0af6-4dcf-b0c7-240d6ccf1751_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Stock</link:label>
    <link:label id="lab_us-gaap_RestrictedStockMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockMember" xlink:to="lab_us-gaap_RestrictedStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_bdfcc9c2-13f3-4cf0-8535-2ee8c1af41e3_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_b44998f4-35e7-4289-8c4e-3b2626975039_terseLabel_en-US" xlink:label="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net payments from issuance of common stock under stock plans</link:label>
    <link:label id="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_label_en-US" xlink:label="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net</link:label>
    <link:label id="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_documentation_en-US" xlink:label="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" xlink:href="cgnx-20240331.xsd#cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" xlink:to="lab_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_32478f34-1894-4737-a213-fae1829883bb_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_41cec5cc-58c4-4615-9a04-9977ec5c2b87_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_12d1775c-b70c-4c18-a012-c05c3a2f9aee_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustment</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_c6ae73fa-6527-4784-8483-83fb73e83b6e_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expected term (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_1368cf19-4213-48a9-9b81-5d8db66a2b07_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract" xlink:to="lab_us-gaap_SubsequentEventsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_258ba620-ef7b-484d-9040-a64dc1724518_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income before income tax expense</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NondesignatedMember_678d432a-8940-49f6-ad9d-6023c6e4c877_terseLabel_en-US" xlink:label="lab_us-gaap_NondesignatedMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Not Designated as Hedging Instrument</link:label>
    <link:label id="lab_us-gaap_NondesignatedMember_label_en-US" xlink:label="lab_us-gaap_NondesignatedMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Not Designated as Hedging Instrument [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NondesignatedMember" xlink:to="lab_us-gaap_NondesignatedMember" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_545ddea2-8d46-4f96-9cbf-d0746ee63d92_terseLabel_en-US" xlink:label="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in compensation expense due to revised estimated forfeiture rates</link:label>
    <link:label id="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_label_en-US" xlink:label="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase In Compensation Expense Due To Revised Estimated Forfeiture Rates</link:label>
    <link:label id="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_documentation_en-US" xlink:label="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Increase (decrease) in compensation expense due to revised estimated forfeiture rates.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:href="cgnx-20240331.xsd#cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:to="lab_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_6b238cb8-aee9-4f63-9e5c-7338d1e2a67e_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Lived Tangible Asset [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_346cedbc-bc0c-4738-9f7f-8b25a99144f7_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred stock shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_3150c06c-c1f9-4705-bbc4-13326c6e7e0b_terseLabel_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:label id="lab_us-gaap_HedgingDesignationDomain_label_en-US" xlink:label="lab_us-gaap_HedgingDesignationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hedging Designation [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_HedgingDesignationDomain" xlink:to="lab_us-gaap_HedgingDesignationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_a3be1a92-fa81-475f-acaa-8e74f63212df_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Significant Other Observable Inputs (Level 2)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_0db41ed5-555f-4ed0-8cc5-648887c76b54_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CertificateOfDepositFairValueDisclosure_78e17ad7-c233-4a71-a98e-3881077f2593_terseLabel_en-US" xlink:label="lab_cgnx_CertificateOfDepositFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Certificate of deposit</link:label>
    <link:label id="lab_cgnx_CertificateOfDepositFairValueDisclosure_label_en-US" xlink:label="lab_cgnx_CertificateOfDepositFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Certificate Of Deposit, Fair Value Disclosure</link:label>
    <link:label id="lab_cgnx_CertificateOfDepositFairValueDisclosure_documentation_en-US" xlink:label="lab_cgnx_CertificateOfDepositFairValueDisclosure" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Certificate Of Deposit, Fair Value Disclosure</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CertificateOfDepositFairValueDisclosure" xlink:href="cgnx-20240331.xsd#cgnx_CertificateOfDepositFairValueDisclosure"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CertificateOfDepositFairValueDisclosure" xlink:to="lab_cgnx_CertificateOfDepositFairValueDisclosure" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_51276055-a2c1-4921-a7f7-6f13de992e3d_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changes in Warranty Obligations</link:label>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_bd12fd36-1c8b-4a08-9528-54cb0f9ef530_terseLabel_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">4-5 Years</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_label_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Available For Sale Securities Debt Maturities After Four Years Before Five Years Fair Value</link:label>
    <link:label id="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_documentation_en-US" xlink:label="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Available-for-sale securities, debt maturities after fourth year but before fifth year, fair value.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:to="lab_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_726fc256-9105-417d-b0a8-7e17debac385_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss)</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments, Gain (Loss) [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_6eec80f2-b665-4a14-ac2b-306cd36fbfc7_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NamedExecutiveOfficersFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_NamedExecutiveOfficersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Named Executive Officers, Footnote</link:label>
    <link:label id="lab_ecd_NamedExecutiveOfficersFnTextBlock_label_en-US" xlink:label="lab_ecd_NamedExecutiveOfficersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Named Executive Officers, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NamedExecutiveOfficersFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:to="lab_ecd_NamedExecutiveOfficersFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_d0ca2fa6-fd0b-4980-a6e6-7b748dbeb231_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_GeneralStockOptionPlanMember_c46dc030-8c3e-44e2-9775-ecf1cbc109ee_terseLabel_en-US" xlink:label="lab_cgnx_GeneralStockOptionPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">General Stock Option Plan</link:label>
    <link:label id="lab_cgnx_GeneralStockOptionPlanMember_label_en-US" xlink:label="lab_cgnx_GeneralStockOptionPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General Stock Option Plan [Member]</link:label>
    <link:label id="lab_cgnx_GeneralStockOptionPlanMember_documentation_en-US" xlink:label="lab_cgnx_GeneralStockOptionPlanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">General stock option plan.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_GeneralStockOptionPlanMember" xlink:href="cgnx-20240331.xsd#cgnx_GeneralStockOptionPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_GeneralStockOptionPlanMember" xlink:to="lab_cgnx_GeneralStockOptionPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_f51a7bba-486e-4dea-902b-2de87ebae302_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PvpTableTextBlock_terseLabel_en-US" xlink:label="lab_ecd_PvpTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure, Table</link:label>
    <link:label id="lab_ecd_PvpTableTextBlock_label_en-US" xlink:label="lab_ecd_PvpTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pay vs Performance [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PvpTableTextBlock" xlink:to="lab_ecd_PvpTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_c52aa6ef-b064-40cf-9755-f869547628fb_terseLabel_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive Securities [Axis]</link:label>
    <link:label id="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_label_en-US" xlink:label="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Antidilutive Securities [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="lab_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_4b722a94-6ad8-4bef-857d-bf117645d174_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2028</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrIndTitle_terseLabel_en-US" xlink:label="lab_ecd_TrdArrIndTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title</link:label>
    <link:label id="lab_ecd_TrdArrIndTitle_label_en-US" xlink:label="lab_ecd_TrdArrIndTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement, Individual Title</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndTitle" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrIndTitle" xlink:to="lab_ecd_TrdArrIndTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_be828065-aca9-4d84-b68e-f8209ee02f63_periodStartLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_165aa155-67c5-4def-93c6-85502b56de2a_periodEndLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Outstanding (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_17241aec-e60b-490a-8822-e430fc87a054_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Geographic Areas</link:label>
    <link:label id="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Geographic Areas [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:to="lab_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_8c7e7148-2bbc-4c2b-838c-3ce5f1b0348d_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCountryMember_d52a4cde-9229-437d-9036-1bf558e76080_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCountryMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign Tax Authority</link:label>
    <link:label id="lab_us-gaap_ForeignCountryMember_label_en-US" xlink:label="lab_us-gaap_ForeignCountryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Tax Authority [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCountryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCountryMember" xlink:to="lab_us-gaap_ForeignCountryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_91fc5d09-065e-4862-8fa1-7d75bbfd398f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Granted (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_c86045fa-07b3-432f-be3c-22c7333383e7_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term investments</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_IndividualAxis_terseLabel_en-US" xlink:label="lab_ecd_IndividualAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Individual:</link:label>
    <link:label id="lab_ecd_IndividualAxis_label_en-US" xlink:label="lab_ecd_IndividualAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Individual [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_IndividualAxis" xlink:to="lab_ecd_IndividualAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_a3a639f0-eda3-496d-b5d5-9c77df897c95_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_7458fe66-7145-47f6-a3ba-6f0554a8b327_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_26b8196e-7f66-48f7-a77a-4f7c9eba70fe_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_456c5c78-cc77-4a6a-98df-685b895bced8_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-Average Shares</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_e5031fe6-d211-4af0-ad4f-90005ecda314_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_e8709017-2ae2-4f23-932a-9833e2b68b55_terseLabel_en-US" xlink:label="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign exchange rate changes</link:label>
    <link:label id="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_label_en-US" xlink:label="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Foreign Currency Exchange Adjustment</link:label>
    <link:label id="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_documentation_en-US" xlink:label="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Foreign Currency Exchange Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:href="cgnx-20240331.xsd#cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:to="lab_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_95b34aba-3dcb-4c19-a178-bff3b73303a5_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_SegmentGeographicalDomain_4f7531a1-cf12-44c4-9b3e-1b192406c07e_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_46ff3171-e7d7-4bf2-8bea-0c7e333e01af_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Term of contract</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseTermOfContract_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Term of Contract</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:to="lab_us-gaap_LesseeOperatingLeaseTermOfContract" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_HUF_349183b0-f87f-405b-add8-c9840b7c64d6_terseLabel_en-US" xlink:label="lab_currency_HUF" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hungarian Forint</link:label>
    <link:label id="lab_currency_HUF_label_en-US" xlink:label="lab_currency_HUF" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Hungary, Forint</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_HUF" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_HUF"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_HUF" xlink:to="lab_currency_HUF" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_9bb0ea7f-4c7e-4f67-a1fb-c28278784633_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_d341ba02-4091-40c2-8f28-5c179a1d1d41_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, plant, and equipment, net</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_ef54ef82-987d-4c05-9e3c-3782d3fba79b_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted-average common and common-equivalent shares outstanding:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareRepurchaseProgramDomain_b697c794-8ccf-4552-8196-873f8e22fc72_terseLabel_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareRepurchaseProgramDomain_label_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain" xlink:to="lab_us-gaap_ShareRepurchaseProgramDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_6fd8a7ea-036f-481e-a8a4-7bfc8c352c2c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Stock Option Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Option, Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardExrcPrice_terseLabel_en-US" xlink:label="lab_ecd_AwardExrcPrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercise Price</link:label>
    <link:label id="lab_ecd_AwardExrcPrice_label_en-US" xlink:label="lab_ecd_AwardExrcPrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardExrcPrice" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardExrcPrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardExrcPrice" xlink:to="lab_ecd_AwardExrcPrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_76b51315-3e68-4039-b9a0-a9f30c775460_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareCashPaid_2e0f98f5-c746-4444-877a-368c4b92a693_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash dividends per common share (usd per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockDividendsPerShareCashPaid_label_en-US" xlink:label="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Dividends, Per Share, Cash Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:to="lab_us-gaap_CommonStockDividendsPerShareCashPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery_c0e72191-05fd-492d-bdb1-616119d9127a_negatedTerseLabel_en-US" xlink:label="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Write-offs, net of recoveries</link:label>
    <link:label id="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery_label_en-US" xlink:label="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Writeoff (Recovery)</link:label>
    <link:label id="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery_documentation_en-US" xlink:label="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Writeoff (Recovery)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" xlink:href="cgnx-20240331.xsd#cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" xlink:to="lab_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_57f95137-1e2e-4c38-ab5e-44b22bbf3a65_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityClassOfTreasuryStockLineItems_3120bf88-007a-4ce3-a8ef-f42dd61524be_terseLabel_en-US" xlink:label="lab_us-gaap_EquityClassOfTreasuryStockLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity, Class of Treasury Stock [Line Items]</link:label>
    <link:label id="lab_us-gaap_EquityClassOfTreasuryStockLineItems_label_en-US" xlink:label="lab_us-gaap_EquityClassOfTreasuryStockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Class of Treasury Stock [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityClassOfTreasuryStockLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityClassOfTreasuryStockLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="lab_us-gaap_EquityClassOfTreasuryStockLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_8a19b94d-3ced-43b9-93bb-c18f4471a202_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgMnpiDiscTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgMnpiDiscTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Disclosure</link:label>
    <link:label id="lab_ecd_AwardTmgMnpiDiscTextBlock_label_en-US" xlink:label="lab_ecd_AwardTmgMnpiDiscTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiDiscTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:to="lab_ecd_AwardTmgMnpiDiscTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_23792ccc-26eb-495f-824e-699d1e880362_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="lab_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_4f32727d-ef69-4e97-8499-41115c1937f8_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Derivative Instruments in Statement of Financial Position, Fair Value</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Derivative Instruments in Statement of Financial Position, Fair Value [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:to="lab_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_0223dd6c-1ad6-4d9b-a2f5-d9cae23b8eff_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency gain (loss)</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss), Foreign Currency Transaction, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:to="lab_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_aaaa0a04-8d37-496a-8046-0650d489eaaa_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Payment, Tax Withholding, Share-Based Payment Arrangement</link:label>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payment, Tax Withholding, Share-Based Payment Arrangement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherCurrentAssetsMember_e15e003e-5622-4d85-9f87-43b87d9e6be9_terseLabel_en-US" xlink:label="lab_us-gaap_OtherCurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other current assets</link:label>
    <link:label id="lab_us-gaap_OtherCurrentAssetsMember_label_en-US" xlink:label="lab_us-gaap_OtherCurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Current Assets [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCurrentAssetsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherCurrentAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherCurrentAssetsMember" xlink:to="lab_us-gaap_OtherCurrentAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_USTreasurySecuritiesMember_b452facc-2a57-4a12-b156-78381d9d9b3f_terseLabel_en-US" xlink:label="lab_us-gaap_USTreasurySecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury notes</link:label>
    <link:label id="lab_us-gaap_USTreasurySecuritiesMember_label_en-US" xlink:label="lab_us-gaap_USTreasurySecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">US Treasury Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_USTreasurySecuritiesMember" xlink:to="lab_us-gaap_USTreasurySecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_ae98151b-4697-4328-8056-2edeab8de2a3_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_afa80811-54dc-4355-bc18-49243b77bf95_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_316ad7c2-1e4d-4494-b3b6-1d7c933ea78f_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:label id="lab_us-gaap_LesseeLeaseDescriptionLineItems_label_en-US" xlink:label="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Lease, Description [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems" xlink:to="lab_us-gaap_LesseeLeaseDescriptionLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_00743e96-a340-4b84-8d2e-e23864680cb6_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DevelopedTechnologyRightsMember_2063b215-9d95-4f12-b965-d6e69c4cc72b_terseLabel_en-US" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Completed technologies</link:label>
    <link:label id="lab_us-gaap_DevelopedTechnologyRightsMember_label_en-US" xlink:label="lab_us-gaap_DevelopedTechnologyRightsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Developed Technology Rights [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DevelopedTechnologyRightsMember" xlink:to="lab_us-gaap_DevelopedTechnologyRightsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_93fc53e6-5f08-47b5-9142-466a69599684_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained Earnings</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_f24874d0-c5b7-4e56-b8e5-ed53082e5ec5_verboseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToNonPeoNeoCompFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment to Non-PEO NEO Compensation Footnote</link:label>
    <link:label id="lab_ecd_AdjToNonPeoNeoCompFnTextBlock_label_en-US" xlink:label="lab_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Non-PEO NEO Compensation Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToNonPeoNeoCompFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:to="lab_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_832d4276-5e7b-4769-956a-8c80e07d7748_negatedLabel_en-US" xlink:label="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Amortization of discounts or premiums on investments</link:label>
    <link:label id="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_label_en-US" xlink:label="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accretion (Amortization) of Discounts and Premiums, Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:to="lab_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_ad80e1bb-6ed6-4880-ba32-86bf9152e785_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and shareholders' equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_e6d3dedd-3c3d-4805-ad70-d77fecbd9cba_totalLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Amortized Cost</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Amortized Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_f7f824a6-a9c4-4643-9b3a-4cbf1f4f1fb0_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeerGroupTotalShareholderRtnAmt_terseLabel_en-US" xlink:label="lab_ecd_PeerGroupTotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Peer Group Total Shareholder Return Amount</link:label>
    <link:label id="lab_ecd_PeerGroupTotalShareholderRtnAmt_label_en-US" xlink:label="lab_ecd_PeerGroupTotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Peer Group Total Shareholder Return Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupTotalShareholderRtnAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:to="lab_ecd_PeerGroupTotalShareholderRtnAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_1cbf3cb0-8bd4-4891-82ac-611ebb8cde91_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Risk-free rate</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_767a4d5c-8a04-4637-b4e5-c23b9b097352_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_9e1e529d-7896-4b7f-8db4-bd3096f8cc5d_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_65840b0e-fb20-4990-9235-12ac181c4c4b_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfTreasuryStockTable_5ab9e895-db9f-4eeb-8e84-a79b4487490a_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfTreasuryStockTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Treasury Stock [Table]</link:label>
    <link:label id="lab_us-gaap_ClassOfTreasuryStockTable_label_en-US" xlink:label="lab_us-gaap_ClassOfTreasuryStockTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Treasury Stock [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfTreasuryStockTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfTreasuryStockTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable" xlink:to="lab_us-gaap_ClassOfTreasuryStockTable" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Valuation Assumption Difference, Footnote</link:label>
    <link:label id="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock_label_en-US" xlink:label="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Valuation Assumption Difference, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_EquityValuationAssumptionDifferenceFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:to="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StateAdministrationOfTaxationChinaMember_7b250a47-00d8-41a2-8532-9129c8f106ee_terseLabel_en-US" xlink:label="lab_us-gaap_StateAdministrationOfTaxationChinaMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">China</link:label>
    <link:label id="lab_us-gaap_StateAdministrationOfTaxationChinaMember_label_en-US" xlink:label="lab_us-gaap_StateAdministrationOfTaxationChinaMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">State Administration of Taxation, China [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAdministrationOfTaxationChinaMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StateAdministrationOfTaxationChinaMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StateAdministrationOfTaxationChinaMember" xlink:to="lab_us-gaap_StateAdministrationOfTaxationChinaMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ErrCompAnalysisTextBlock_terseLabel_en-US" xlink:label="lab_ecd_ErrCompAnalysisTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Erroneous Compensation Analysis</link:label>
    <link:label id="lab_ecd_ErrCompAnalysisTextBlock_label_en-US" xlink:label="lab_ecd_ErrCompAnalysisTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Erroneous Compensation Analysis [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompAnalysisTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompAnalysisTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ErrCompAnalysisTextBlock" xlink:to="lab_ecd_ErrCompAnalysisTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_8c17b4ed-bd53-457d-899b-d4b4fd5423d8_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Warranty Obligations</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_CurrencyAxis_fdae3637-7444-4826-9a4d-b0abc6f91afb_terseLabel_en-US" xlink:label="lab_srt_CurrencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Currency [Axis]</link:label>
    <link:label id="lab_srt_CurrencyAxis_label_en-US" xlink:label="lab_srt_CurrencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Currency [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CurrencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_CurrencyAxis" xlink:to="lab_srt_CurrencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_e0faa231-247b-4350-94da-be65391eff6d_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remainder of fiscal 2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_39fe921c-588a-464b-a401-0d64acaf621b_terseLabel_en-US" xlink:label="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Prior Period, Settled in Current Period</link:label>
    <link:label id="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_label_en-US" xlink:label="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Prior Period, Settled in Current Period</link:label>
    <link:label id="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_documentation_en-US" xlink:label="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Stock Repurchased During Prior Period, Settled in Current Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" xlink:href="cgnx-20240331.xsd#cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" xlink:to="lab_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrDuration_terseLabel_en-US" xlink:label="lab_ecd_TrdArrDuration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Arrangement Duration</link:label>
    <link:label id="lab_ecd_TrdArrDuration_label_en-US" xlink:label="lab_ecd_TrdArrDuration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement Duration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrDuration" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrDuration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrDuration" xlink:to="lab_ecd_TrdArrDuration" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_116963c4-0ece-475c-9613-160263406f4e_terseLabel_en-US" xlink:label="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Components of Cash, Cash Equivalents, and Investments</link:label>
    <link:label id="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_label_en-US" xlink:label="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Components Of Cash Cash Equivalents And Investments [Table Text Block]</link:label>
    <link:label id="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_documentation_en-US" xlink:label="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Components of cash cash equivalents and investments.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:href="cgnx-20240331.xsd#cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:to="lab_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_51980c08-77b7-43c5-8640-593222fa27b7_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgMnpiCnsdrdFlag_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgMnpiCnsdrdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Considered</link:label>
    <link:label id="lab_ecd_AwardTmgMnpiCnsdrdFlag_label_en-US" xlink:label="lab_ecd_AwardTmgMnpiCnsdrdFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Considered [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiCnsdrdFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:to="lab_ecd_AwardTmgMnpiCnsdrdFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_b37cc83e-9c5e-49f4-a394-f30ead8d9b16_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options vested or expected to vest (in years)</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_051fcd87-8cfd-436a-a159-9a89ef2a5fbc_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Options vested or expected to vest as of reporting date (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfCashAndCashEquivalentsTable_4f729d1c-f719-48fb-9fa6-267f5638bdde_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Cash and Cash Equivalents [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfCashAndCashEquivalentsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Cash and Cash Equivalents [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:to="lab_us-gaap_ScheduleOfCashAndCashEquivalentsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_d5e08548-afe0-41be-b613-ca82478885e1_terseLabel_en-US" xlink:label="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Option to renew, term of contract</link:label>
    <link:label id="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_label_en-US" xlink:label="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Option to Renew, Term of Contract</link:label>
    <link:label id="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_documentation_en-US" xlink:label="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Option to Renew, Term of Contract</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" xlink:href="cgnx-20240331.xsd#cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" xlink:to="lab_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract" xlink:type="arc" order="1"/>
    <link:label id="lab_currency_CNY_81fead81-9b74-4b0d-95f0-2cab6bb025cc_terseLabel_en-US" xlink:label="lab_currency_CNY" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Chinese Renminbi</link:label>
    <link:label id="lab_currency_CNY_label_en-US" xlink:label="lab_currency_CNY" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">China, Yuan Renminbi</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CNY" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CNY"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_currency_CNY" xlink:to="lab_currency_CNY" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_2e1912e7-7cf6-4122-a98a-22c6fdfebc90_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgPredtrmndFlag_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgPredtrmndFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing Predetermined</link:label>
    <link:label id="lab_ecd_AwardTmgPredtrmndFlag_label_en-US" xlink:label="lab_ecd_AwardTmgPredtrmndFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing Predetermined [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgPredtrmndFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgPredtrmndFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgPredtrmndFlag" xlink:to="lab_ecd_AwardTmgPredtrmndFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_49f974ed-b88d-41b5-beb3-ba1d10b47861_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Business Acquisitions, by Acquisition [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:to="lab_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_c3698752-73d9-408d-aef3-b789fd8e7a31_terseLabel_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Remaining authorized repurchase amount</link:label>
    <link:label id="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_label_en-US" xlink:label="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Repurchase Program, Remaining Authorized Repurchase Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="lab_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_be51bc4a-b45a-4e49-beb6-6ed0663d1f2e_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instruments and Hedging Activities Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:to="lab_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrTerminationDate_terseLabel_en-US" xlink:label="lab_ecd_TrdArrTerminationDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Termination Date</link:label>
    <link:label id="lab_ecd_TrdArrTerminationDate_label_en-US" xlink:label="lab_ecd_TrdArrTerminationDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement Termination Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrTerminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrTerminationDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrTerminationDate" xlink:to="lab_ecd_TrdArrTerminationDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsTotalMember_9a34ba7d-3d75-46f2-83cc-5f87261b92ed_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsTotalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenue</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsTotalMember_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsTotalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Goods and Service Benchmark [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsTotalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsTotalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsTotalMember" xlink:to="lab_us-gaap_CostOfGoodsTotalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_e4500507-09e4-48b4-a7e7-2364f130ea51_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_90b2bf46-2859-4052-b20f-865e45fd6ce7_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_AmericasMember_4bfec6bb-2b5d-4600-9450-61b4a2f62658_terseLabel_en-US" xlink:label="lab_srt_AmericasMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Americas</link:label>
    <link:label id="lab_srt_AmericasMember_label_en-US" xlink:label="lab_srt_AmericasMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Americas [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AmericasMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_AmericasMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_AmericasMember" xlink:to="lab_srt_AmericasMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_45f0db52-e599-4be4-90a0-fa0b3946aed1_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financial assets at fair value</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_0b41e7d3-1df1-4b0b-8aea-b984c7281798_verboseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Fair&#160;Value</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_74c8a96f-caf1-46cc-a85a-82b49b635b5d_totalLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtSecurities" xlink:type="arc" order="1"/>
    <link:label id="lab_country_KP_2e678146-e737-4073-9393-884140f8b57a_terseLabel_en-US" xlink:label="lab_country_KP" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Korea</link:label>
    <link:label id="lab_country_KP_label_en-US" xlink:label="lab_country_KP" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_KP" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_KP"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_KP" xlink:to="lab_country_KP" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_LesseeOperatingLeaseComponents_d8c0f121-01e1-4342-a523-8d8fc2164531_terseLabel_en-US" xlink:label="lab_cgnx_LesseeOperatingLeaseComponents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lease components</link:label>
    <link:label id="lab_cgnx_LesseeOperatingLeaseComponents_label_en-US" xlink:label="lab_cgnx_LesseeOperatingLeaseComponents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Components</link:label>
    <link:label id="lab_cgnx_LesseeOperatingLeaseComponents_documentation_en-US" xlink:label="lab_cgnx_LesseeOperatingLeaseComponents" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Components</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LesseeOperatingLeaseComponents" xlink:href="cgnx-20240331.xsd#cgnx_LesseeOperatingLeaseComponents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_LesseeOperatingLeaseComponents" xlink:to="lab_cgnx_LesseeOperatingLeaseComponents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_7fe96ad0-bb55-4629-993d-1719cf742592_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross Unrealized Gains</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:to="lab_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_768aee7e-d17c-4096-ac3a-301fcdc0b76b_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermInvestmentsMember_afc7ba4f-eeda-4be9-a91a-a85209f51f33_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermInvestmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Short-Term Investments</link:label>
    <link:label id="lab_us-gaap_ShortTermInvestmentsMember_label_en-US" xlink:label="lab_us-gaap_ShortTermInvestmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Short-Term Investments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermInvestmentsMember" xlink:to="lab_us-gaap_ShortTermInvestmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_da21db7a-d31f-4057-86f4-ca775e6809b5_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DerivativeInstrumentRiskAxis_label_en-US" xlink:label="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis" xlink:to="lab_us-gaap_DerivativeInstrumentRiskAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_4542f1b9-6215-4b5e-a487-fda39526c35a_terseLabel_en-US" xlink:label="lab_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase in tax expense to establish reserve against certain deferred tax assets</link:label>
    <link:label id="lab_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_label_en-US" xlink:label="lab_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:to="lab_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_09f673de-cd52-441d-8694-093d10d51526_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income to net cash provided by (used in) operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllTradingArrangementsMember_terseLabel_en-US" xlink:label="lab_ecd_AllTradingArrangementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Trading Arrangements</link:label>
    <link:label id="lab_ecd_AllTradingArrangementsMember_label_en-US" xlink:label="lab_ecd_AllTradingArrangementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Trading Arrangements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllTradingArrangementsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllTradingArrangementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllTradingArrangementsMember" xlink:to="lab_ecd_AllTradingArrangementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllAdjToCompMember_terseLabel_en-US" xlink:label="lab_ecd_AllAdjToCompMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Adjustments to Compensation</link:label>
    <link:label id="lab_ecd_AllAdjToCompMember_label_en-US" xlink:label="lab_ecd_AllAdjToCompMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Adjustments to Compensation [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllAdjToCompMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllAdjToCompMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllAdjToCompMember" xlink:to="lab_ecd_AllAdjToCompMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeLineItems_fda078f0-0a35-4c64-b820-a7ee5a6234f8_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative [Line Items]</link:label>
    <link:label id="lab_us-gaap_DerivativeLineItems_label_en-US" xlink:label="lab_us-gaap_DerivativeLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeLineItems" xlink:to="lab_us-gaap_DerivativeLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValueOutstanding_fa204b23-4e1a-4d83-a01a-151c911777ea_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValueOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, $.002 par value &#8211; Authorized: 300,000 shares in 2024 and 2023, respectively; issued and outstanding: 171,662 and 171,599 shares in 2024 and 2023, respectively</link:label>
    <link:label id="lab_us-gaap_CommonStockValueOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockValueOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Value, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValueOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValueOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValueOutstanding" xlink:to="lab_us-gaap_CommonStockValueOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgDiscLineItems_label_en-US" xlink:label="lab_ecd_AwardTmgDiscLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing Disclosures [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgDiscLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgDiscLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="lab_ecd_AwardTmgDiscLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CurrentAssetsMember_ed28f8f8-8bde-4c38-ad05-acb2127e0fd6_terseLabel_en-US" xlink:label="lab_cgnx_CurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current assets</link:label>
    <link:label id="lab_cgnx_CurrentAssetsMember_label_en-US" xlink:label="lab_cgnx_CurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Assets [Member]</link:label>
    <link:label id="lab_cgnx_CurrentAssetsMember_documentation_en-US" xlink:label="lab_cgnx_CurrentAssetsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Current Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CurrentAssetsMember" xlink:href="cgnx-20240331.xsd#cgnx_CurrentAssetsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CurrentAssetsMember" xlink:to="lab_cgnx_CurrentAssetsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OutstandingRecoveryCompAmt_terseLabel_en-US" xlink:label="lab_ecd_OutstandingRecoveryCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Amount</link:label>
    <link:label id="lab_ecd_OutstandingRecoveryCompAmt_label_en-US" xlink:label="lab_ecd_OutstandingRecoveryCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Recovery Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OutstandingRecoveryCompAmt" xlink:to="lab_ecd_OutstandingRecoveryCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_0235ee28-c816-4ec3-8292-1d04af808df9_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increases to the allowance for credit losses</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeAssets_a7b9b9e6-7fba-46d6-8768-8c2b2b84b2db_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Derivative asset</link:label>
    <link:label id="lab_us-gaap_DerivativeAssets_393f0f3f-9a8d-416d-8047-43d8db5f2b37_totalLabel_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net amount of assets presented</link:label>
    <link:label id="lab_us-gaap_DerivativeAssets_label_en-US" xlink:label="lab_us-gaap_DerivativeAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeAssets" xlink:to="lab_us-gaap_DerivativeAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_543e3eb7-10f0-413f-9f6a-d558b25e21d0_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_e4ce799a-f7f4-4950-86a2-138bb6c8f9e4_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_dae2750f-23b8-4e9f-bb76-c93423e157b9_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:label id="lab_us-gaap_ProceedsFromStockOptionsExercised_label_en-US" xlink:label="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Stock Options Exercised</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromStockOptionsExercised" xlink:to="lab_us-gaap_ProceedsFromStockOptionsExercised" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_84880d91-70f5-44fb-a3f7-3acc924ccc5a_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_RepurchaseProgramMarch2022Member_578bb3ad-a3ab-4f38-8d70-220f359a4e4e_terseLabel_en-US" xlink:label="lab_cgnx_RepurchaseProgramMarch2022Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repurchase Program March 2022</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramMarch2022Member_label_en-US" xlink:label="lab_cgnx_RepurchaseProgramMarch2022Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repurchase Program March 2022 [Member]</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramMarch2022Member_documentation_en-US" xlink:label="lab_cgnx_RepurchaseProgramMarch2022Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Repurchase Program March 2022</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_RepurchaseProgramMarch2022Member" xlink:href="cgnx-20240331.xsd#cgnx_RepurchaseProgramMarch2022Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_RepurchaseProgramMarch2022Member" xlink:to="lab_cgnx_RepurchaseProgramMarch2022Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_74bddab6-2524-4af4-9dab-13a73605c466_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ExpirationPeriodOfStockOptionPlan_b6183608-ce11-4f31-bbc9-d191f6d23d05_terseLabel_en-US" xlink:label="lab_cgnx_ExpirationPeriodOfStockOptionPlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Expiration period from grant day</link:label>
    <link:label id="lab_cgnx_ExpirationPeriodOfStockOptionPlan_label_en-US" xlink:label="lab_cgnx_ExpirationPeriodOfStockOptionPlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Expiration Period Of Stock Option Plan</link:label>
    <link:label id="lab_cgnx_ExpirationPeriodOfStockOptionPlan_documentation_en-US" xlink:label="lab_cgnx_ExpirationPeriodOfStockOptionPlan" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Expiration period of stock option plan.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ExpirationPeriodOfStockOptionPlan" xlink:href="cgnx-20240331.xsd#cgnx_ExpirationPeriodOfStockOptionPlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ExpirationPeriodOfStockOptionPlan" xlink:to="lab_cgnx_ExpirationPeriodOfStockOptionPlan" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_cfebbd09-3e18-4fc6-839a-cf75b621d311_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_7dd0db43-5e94-4fe0-b190-c393c10b6fb2_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CurrencytranslationadjustmentsAbstract_75d89fc9-e2cf-4621-b635-48589dd74f99_terseLabel_en-US" xlink:label="lab_cgnx_CurrencytranslationadjustmentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustments:</link:label>
    <link:label id="lab_cgnx_CurrencytranslationadjustmentsAbstract_label_en-US" xlink:label="lab_cgnx_CurrencytranslationadjustmentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Currency translation adjustments [Abstract]</link:label>
    <link:label id="lab_cgnx_CurrencytranslationadjustmentsAbstract_documentation_en-US" xlink:label="lab_cgnx_CurrencytranslationadjustmentsAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Currency translation adjustments [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CurrencytranslationadjustmentsAbstract" xlink:href="cgnx-20240331.xsd#cgnx_CurrencytranslationadjustmentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CurrencytranslationadjustmentsAbstract" xlink:to="lab_cgnx_CurrencytranslationadjustmentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_997d822f-b410-4469-94cb-89d726271d39_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MunicipalBondsMember_6c7f6d29-ca9b-4058-8d6a-a12c1dcb610f_terseLabel_en-US" xlink:label="lab_us-gaap_MunicipalBondsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Municipal bonds</link:label>
    <link:label id="lab_us-gaap_MunicipalBondsMember_label_en-US" xlink:label="lab_us-gaap_MunicipalBondsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Municipal Bonds [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MunicipalBondsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MunicipalBondsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MunicipalBondsMember" xlink:to="lab_us-gaap_MunicipalBondsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTradingArrLineItems_label_en-US" xlink:label="lab_ecd_InsiderTradingArrLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Arrangements [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingArrLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingArrLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="lab_ecd_InsiderTradingArrLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_cb0feefa-c761-4123-b438-7e33c2e9a6f6_periodStartLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance as of December 31, 2023</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_688b73fe-5b99-4b15-af2e-648d34711573_periodEndLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance as of March 31, 2024</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredRevenue_33002d2f-35b6-43c3-9b1e-27d7677ee929_periodStartLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance as of December 31, 2023</link:label>
    <link:label id="lab_us-gaap_DeferredRevenue_4802b754-2513-4fd7-bacd-58679abc03e5_periodEndLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance as of March 31, 2024</link:label>
    <link:label id="lab_us-gaap_DeferredRevenue_label_en-US" xlink:label="lab_us-gaap_DeferredRevenue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenue" xlink:to="lab_us-gaap_DeferredRevenue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_c72f0a75-0dbb-4d54-a58a-aa40c883baf6_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_ef903248-c8af-4c40-ae95-ecd19e5b7cd6_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Movement in Standard Product Warranty Accrual [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_label_en-US" xlink:label="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Movement in Standard Product Warranty Accrual [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:to="lab_us-gaap_MovementInStandardProductWarrantyAccrualRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_a1539ec4-e5f0-49c0-9d9c-67c04ed93bf1_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MtrlTermsOfTrdArrTextBlock_terseLabel_en-US" xlink:label="lab_ecd_MtrlTermsOfTrdArrTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Material Terms of Trading Arrangement</link:label>
    <link:label id="lab_ecd_MtrlTermsOfTrdArrTextBlock_label_en-US" xlink:label="lab_ecd_MtrlTermsOfTrdArrTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Material Terms of Trading Arrangement [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MtrlTermsOfTrdArrTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:to="lab_ecd_MtrlTermsOfTrdArrTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgMethodTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing Method</link:label>
    <link:label id="lab_ecd_AwardTmgMethodTextBlock_label_en-US" xlink:label="lab_ecd_AwardTmgMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing Method [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMethodTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgMethodTextBlock" xlink:to="lab_ecd_AwardTmgMethodTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_800a7c35-9fa6-4a49-917d-1b67a0a64f68_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToCompAmt_terseLabel_en-US" xlink:label="lab_ecd_AdjToCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation, Amount</link:label>
    <link:label id="lab_ecd_AdjToCompAmt_label_en-US" xlink:label="lab_ecd_AdjToCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToCompAmt" xlink:to="lab_ecd_AdjToCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_A27000SquareFootPremisesMember_0a4e797e-e21d-48d0-9d17-c6ab66ec8d92_terseLabel_en-US" xlink:label="lab_cgnx_A27000SquareFootPremisesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">27,000 square-foot premises</link:label>
    <link:label id="lab_cgnx_A27000SquareFootPremisesMember_label_en-US" xlink:label="lab_cgnx_A27000SquareFootPremisesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">27,000 Square-Foot Premises [Member]</link:label>
    <link:label id="lab_cgnx_A27000SquareFootPremisesMember_documentation_en-US" xlink:label="lab_cgnx_A27000SquareFootPremisesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">27,000 Square-Foot Premises</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_A27000SquareFootPremisesMember" xlink:href="cgnx-20240331.xsd#cgnx_A27000SquareFootPremisesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_A27000SquareFootPremisesMember" xlink:to="lab_cgnx_A27000SquareFootPremisesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_8c93b0a6-8ac5-4f6c-a2cc-cbc49d777278_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Net Income</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Net Income [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsNetIncomeTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrAdoptionDate_terseLabel_en-US" xlink:label="lab_ecd_TrdArrAdoptionDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adoption Date</link:label>
    <link:label id="lab_ecd_TrdArrAdoptionDate_label_en-US" xlink:label="lab_ecd_TrdArrAdoptionDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement Adoption Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrAdoptionDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrAdoptionDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrAdoptionDate" xlink:to="lab_ecd_TrdArrAdoptionDate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeerGroupIssuersFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_PeerGroupIssuersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Peer Group Issuers, Footnote</link:label>
    <link:label id="lab_ecd_PeerGroupIssuersFnTextBlock_label_en-US" xlink:label="lab_ecd_PeerGroupIssuersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Peer Group Issuers, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupIssuersFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:to="lab_ecd_PeerGroupIssuersFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_4eaf2efa-17eb-425e-95da-3c7636ab67de_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assets and Liabilities Measured at Fair Value on a Recurring Basis</link:label>
    <link:label id="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_d76cf130-57b4-47b4-87ec-d22ba0f6ee8f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable as of reporting date (in dollars per shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_f094e722-afba-462a-9106-61827db2fe74_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Allowance for Credit Loss Activity</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:to="lab_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_39ec608d-739b-4ffc-a780-e0ae12fbfefd_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_aadfa133-ca6e-46e1-9353-eb89a26cdae9_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Fair Value Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:to="lab_us-gaap_LiabilitiesFairValueDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DerivativeGainLossOnDerivativeNet_a6bfcf01-f78c-45df-b767-6a1f0e70918f_terseLabel_en-US" xlink:label="lab_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gains (losses) recognized in current operations</link:label>
    <link:label id="lab_us-gaap_DerivativeGainLossOnDerivativeNet_label_en-US" xlink:label="lab_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Derivative, Gain (Loss) on Derivative, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:to="lab_us-gaap_DerivativeGainLossOnDerivativeNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_bb87d476-0785-4f3d-a310-b953e2d0174a_terseLabel_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AllocatedShareBasedCompensationExpense_label_en-US" xlink:label="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="lab_us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_018efa29-4177-4f1f-89f0-0d38bf11c8f9_terseLabel_en-US" xlink:label="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Decrease in compensation expense due to revised estimated forfeiture rates</link:label>
    <link:label id="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_label_en-US" xlink:label="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates</link:label>
    <link:label id="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_documentation_en-US" xlink:label="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:href="cgnx-20240331.xsd#cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:to="lab_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonRule10b51ArrTrmntdFlag_terseLabel_en-US" xlink:label="lab_ecd_NonRule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Terminated</link:label>
    <link:label id="lab_ecd_NonRule10b51ArrTrmntdFlag_label_en-US" xlink:label="lab_ecd_NonRule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Terminated [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrTrmntdFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:to="lab_ecd_NonRule10b51ArrTrmntdFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_fe5211ac-cbc8-401e-bac8-105a0dc62c6c_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross Carrying Value</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsGross_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_7780395f-691a-4abf-a6b5-b85c832a5201_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax expense</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_6052d343-b41a-422e-9f92-34bd30264ff1_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Finished Goods, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_9968bdf8-284e-43f8-88dc-f951dd863cb4_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityDomain_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_d13ccb0a-a93d-4969-b017-5ca25958d9da_terseLabel_en-US" xlink:label="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Gross, Noncurrent Liability</link:label>
    <link:label id="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_label_en-US" xlink:label="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Gross, Noncurrent Liability</link:label>
    <link:label id="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_documentation_en-US" xlink:label="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Unrecognized Tax Benefits, Gross, Noncurrent Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" xlink:href="cgnx-20240331.xsd#cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" xlink:to="lab_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_1de0d63c-ba7e-4b48-b073-22dc79d16245_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrIndName_terseLabel_en-US" xlink:label="lab_ecd_TrdArrIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_TrdArrIndName_label_en-US" xlink:label="lab_ecd_TrdArrIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrIndName" xlink:to="lab_ecd_TrdArrIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_058294a9-4236-427a-87d1-3a8e29f92d46_terseLabel_en-US" xlink:label="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax years open to examination by Internal Revenue Service</link:label>
    <link:label id="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_label_en-US" xlink:label="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tax Years Open To Examination By Internal Revenue Service</link:label>
    <link:label id="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_documentation_en-US" xlink:label="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tax Years Open To Examination By Internal Revenue Service</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_TaxYearsOpenToExaminationByInternalRevenueService" xlink:href="cgnx-20240331.xsd#cgnx_TaxYearsOpenToExaminationByInternalRevenueService"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_TaxYearsOpenToExaminationByInternalRevenueService" xlink:to="lab_cgnx_TaxYearsOpenToExaminationByInternalRevenueService" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAbstract_bc246fac-be40-4ce4-8269-64b60ab9391a_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Abstract]</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAbstract_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract" xlink:to="lab_us-gaap_CashAndCashEquivalentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_e12ef7bc-a250-443e-aa65-62fcf01774c9_totalLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss), net of tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_4af743b4-310d-4299-9f97-23b1e1d70ad7_negatedLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Unrealized losses, 12 months or greater</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer, Accumulated Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityAbstract_3055b751-4140-4c60-99d2-f5454eb9136b_terseLabel_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_EquityAbstract_label_en-US" xlink:label="lab_us-gaap_EquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityAbstract" xlink:to="lab_us-gaap_EquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_a370c63c-7ac4-46b3-9e81-9e7911e1b210_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-sale</link:label>
    <link:label id="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_label_en-US" xlink:label="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:to="lab_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_6dc1136d-99eb-4250-ba82-352531e55ee6_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_693ebbf8-22f0-4f9c-b027-d5be4541b917_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_f7531bc2-0289-4896-b085-458423fb80e1_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI for Sale of Securities, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_7e0d1789-9f6a-4ba6-927e-cf4d70c12491_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average remaining lease term</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_6e4a87d6-8309-419f-b2e1-8b55e40a8dd9_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Company Selected Measure</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Company Selected Measure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetRentableArea_67fa1a13-88d3-4023-9b15-ec91a19531b2_terseLabel_en-US" xlink:label="lab_us-gaap_NetRentableArea" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Rentable area</link:label>
    <link:label id="lab_us-gaap_NetRentableArea_label_en-US" xlink:label="lab_us-gaap_NetRentableArea" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Rentable Area</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetRentableArea" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetRentableArea"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetRentableArea" xlink:to="lab_us-gaap_NetRentableArea" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsLineItems_b1ccd87b-173c-4624-863a-49dc22c67f30_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Line Items]</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsLineItems_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems" xlink:to="lab_us-gaap_CashAndCashEquivalentsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_73532875-7295-4ee3-9156-04f65e0f3679_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_f4e6e343-2fbb-4f30-8be6-db41b0580189_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Intangible Assets</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible Assets Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:to="lab_us-gaap_IntangibleAssetsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MoneyMarketFundsMember_f2b274fb-6247-4e86-b70e-5aa0b068d26b_terseLabel_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Money market instruments</link:label>
    <link:label id="lab_us-gaap_MoneyMarketFundsMember_label_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Money Market Funds [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsMember" xlink:to="lab_us-gaap_MoneyMarketFundsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAxis_3c615424-c457-4b2a-a925-09edbc6eb40b_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Axis]</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAxis_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis" xlink:to="lab_us-gaap_CashAndCashEquivalentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_79d52330-229f-44df-bb7b-a83096d7c91d_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Change in deferred income taxes</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Deferred Income Taxes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:to="lab_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_99489ca5-aded-4079-bc0b-dffd7d32395d_negatedLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Unrealized losses, less than 12 months</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months, Accumulated Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_f9b6b4ed-908b-403d-87b8-de37f0454e39_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInDeferredRevenueRollForward_afeb0010-3f3f-4c20-9866-dd0f06824b7b_terseLabel_en-US" xlink:label="lab_us-gaap_MovementInDeferredRevenueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Movement in Deferred Revenue [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_MovementInDeferredRevenueRollForward_label_en-US" xlink:label="lab_us-gaap_MovementInDeferredRevenueRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Movement in Deferred Revenue [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInDeferredRevenueRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MovementInDeferredRevenueRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward" xlink:to="lab_us-gaap_MovementInDeferredRevenueRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_f80335bf-c95f-4397-a8f6-a05edb866784_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Net payments related to business acquisitions (Note 17)</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Businesses, Net of Cash Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:to="lab_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_91f98381-2bd7-423f-a328-8a3a727f54e0_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average discount rate</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_7c641344-01e0-4881-9119-70bfaaf67051_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net issuance of common stock under stock plans (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_c44edb59-66c6-4ecc-b131-a423fe9466cd_terseLabel_en-US" xlink:label="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Indefinite-lived intangible asset excluding in-process technologies</link:label>
    <link:label id="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_label_en-US" xlink:label="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks [Member]</link:label>
    <link:label id="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_documentation_en-US" xlink:label="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" xlink:href="cgnx-20240331.xsd#cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" xlink:to="lab_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_171fe55d-0e63-4cb7-a8dc-130295a42be0_terseLabel_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">less than 1 year</link:label>
    <link:label id="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_label_en-US" xlink:label="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:to="lab_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_83632e0d-b2a2-4ce3-a2eb-686a7dd21499_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assets:</link:label>
    <link:label id="lab_us-gaap_AssetsFairValueDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsFairValueDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Fair Value Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsFairValueDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract" xlink:to="lab_us-gaap_AssetsFairValueDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_519d3446-2d0b-4b6f-a05b-5e3a5b5191d4_terseLabel_en-US" xlink:label="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2001 Plan and 2007 Plan</link:label>
    <link:label id="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_label_en-US" xlink:label="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cognex Corporation 2021 And 2007 Stock Option And Incentive Plans [Member]</link:label>
    <link:label id="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_documentation_en-US" xlink:label="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Cognex Corporation 2021 And 2007 Stock Option And Incentive Plans</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" xlink:href="cgnx-20240331.xsd#cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" xlink:to="lab_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_2fb82fc7-5bc3-48ff-9262-14724be610d5_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Shares repurchased (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockSharesAcquired_label_en-US" xlink:label="lab_us-gaap_TreasuryStockSharesAcquired" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Shares, Acquired</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockSharesAcquired" xlink:to="lab_us-gaap_TreasuryStockSharesAcquired" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Other Measure</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Other Measure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsOtherMeasureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GoodwillDisclosureTextBlock_0ef33634-4419-416a-8ed9-0384a7fea977_terseLabel_en-US" xlink:label="lab_us-gaap_GoodwillDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Goodwill</link:label>
    <link:label id="lab_us-gaap_GoodwillDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_GoodwillDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Goodwill Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GoodwillDisclosureTextBlock" xlink:to="lab_us-gaap_GoodwillDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredRevenueRefundPayments1_fff4004f-e5b7-4f7c-b092-d7604e18fc21_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredRevenueRefundPayments1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Returned customer deposit</link:label>
    <link:label id="lab_us-gaap_DeferredRevenueRefundPayments1_label_en-US" xlink:label="lab_us-gaap_DeferredRevenueRefundPayments1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Revenue, Refund Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueRefundPayments1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueRefundPayments1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredRevenueRefundPayments1" xlink:to="lab_us-gaap_DeferredRevenueRefundPayments1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_c9de2505-4b78-405c-87fd-5ce1e9078370_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_bd2dab69-62c1-460a-bc34-0a1b9fd10c24_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Weighted-average common and common-equivalent shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery, Explanation of Impracticability</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery, Explanation of Impracticability [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:to="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_a637b46e-fdb2-4b5e-ac69-6377fd373d41_terseLabel_en-US" xlink:label="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recognized period costs capitalized</link:label>
    <link:label id="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_label_en-US" xlink:label="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employee Service, Share-Based Compensation Recognized, Period Costs, Capitalized Amount</link:label>
    <link:label id="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_documentation_en-US" xlink:label="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Employee service share based compensation recognized period costs capitalized amount.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:href="cgnx-20240331.xsd#cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:to="lab_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_4aa68593-c046-4c6c-bcc6-31add51455fb_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Decrease in tax expense arising from tax settlement</link:label>
    <link:label id="lab_us-gaap_IncomeTaxReconciliationTaxSettlements_label_en-US" xlink:label="lab_us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Tax Settlement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationTaxSettlements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:to="lab_us-gaap_IncomeTaxReconciliationTaxSettlements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameAxis_bf5541f0-2e9b-4541-b22e-f75429aee0fc_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameAxis_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="lab_us-gaap_IncomeTaxAuthorityNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MoneyMarketFundsAtCarryingValue_1851c76d-23e2-4b62-a926-1bdc2839bb69_terseLabel_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Money market instruments</link:label>
    <link:label id="lab_us-gaap_MoneyMarketFundsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Money Market Funds, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:to="lab_us-gaap_MoneyMarketFundsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_9403d12b-39b4-49dc-bc50-684dc5a0eb03_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional shares available for grant under stock option plans (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_904b1896-70c7-4bc5-bf99-e02756664b94_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_198e31a2-83c9-4f15-84b8-47fc13b2f24f_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross realized losses</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Realized Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_0dcc90f3-ad8e-4a4e-8065-a58c4d581c80_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchases of property, plant, and equipment</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CoSelectedMeasureAmt_terseLabel_en-US" xlink:label="lab_ecd_CoSelectedMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Company Selected Measure Amount</link:label>
    <link:label id="lab_ecd_CoSelectedMeasureAmt_label_en-US" xlink:label="lab_ecd_CoSelectedMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Company Selected Measure Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CoSelectedMeasureAmt" xlink:to="lab_ecd_CoSelectedMeasureAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_2ef43874-fb60-4185-9505-6e810ead4002_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalCommonStock_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid in Capital, Common Stock</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="lab_us-gaap_AdditionalPaidInCapitalCommonStock" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_RepurchaseProgramMarch2020Member_4ac989e5-8387-467f-a04a-ecaa8cf2209e_terseLabel_en-US" xlink:label="lab_cgnx_RepurchaseProgramMarch2020Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Repurchase Program March 2020</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramMarch2020Member_label_en-US" xlink:label="lab_cgnx_RepurchaseProgramMarch2020Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repurchase Program March 2020 [Member]</link:label>
    <link:label id="lab_cgnx_RepurchaseProgramMarch2020Member_documentation_en-US" xlink:label="lab_cgnx_RepurchaseProgramMarch2020Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Repurchase Program March 2020 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_RepurchaseProgramMarch2020Member" xlink:href="cgnx-20240331.xsd#cgnx_RepurchaseProgramMarch2020Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_RepurchaseProgramMarch2020Member" xlink:to="lab_cgnx_RepurchaseProgramMarch2020Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_11bea09c-4ce9-47df-be18-403799e05b20_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_MoritexCorporationMember_a588639b-d6fb-49eb-9622-a9a81f73e447_terseLabel_en-US" xlink:label="lab_cgnx_MoritexCorporationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Moritex Corporation</link:label>
    <link:label id="lab_cgnx_MoritexCorporationMember_label_en-US" xlink:label="lab_cgnx_MoritexCorporationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Moritex Corporation [Member]</link:label>
    <link:label id="lab_cgnx_MoritexCorporationMember_documentation_en-US" xlink:label="lab_cgnx_MoritexCorporationMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Moritex Corporation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_MoritexCorporationMember" xlink:href="cgnx-20240331.xsd#cgnx_MoritexCorporationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_MoritexCorporationMember" xlink:to="lab_cgnx_MoritexCorporationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_d7758f86-c2e2-4614-a809-24fdf7b64123_terseLabel_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:label id="lab_us-gaap_BalanceSheetLocationAxis_label_en-US" xlink:label="lab_us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BalanceSheetLocationAxis" xlink:to="lab_us-gaap_BalanceSheetLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_de2bd9c7-2fce-47df-87b0-1b777cec064b_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscIndName_terseLabel_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscIndName_label_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:to="lab_ecd_AwardsCloseToMnpiDiscIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareRepurchaseProgramAxis_2f9dd57a-fec8-4857-8aa0-860077675678_terseLabel_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Axis]</link:label>
    <link:label id="lab_us-gaap_ShareRepurchaseProgramAxis_label_en-US" xlink:label="lab_us-gaap_ShareRepurchaseProgramAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share Repurchase Program [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis" xlink:to="lab_us-gaap_ShareRepurchaseProgramAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_SouthboroughMassachusettsMember_3891cf18-6926-4bdc-9771-894be5e42c35_terseLabel_en-US" xlink:label="lab_cgnx_SouthboroughMassachusettsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Southborough, Massachusetts</link:label>
    <link:label id="lab_cgnx_SouthboroughMassachusettsMember_label_en-US" xlink:label="lab_cgnx_SouthboroughMassachusettsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Southborough, Massachusetts [Member]</link:label>
    <link:label id="lab_cgnx_SouthboroughMassachusettsMember_documentation_en-US" xlink:label="lab_cgnx_SouthboroughMassachusettsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Southborough, Massachusetts</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SouthboroughMassachusettsMember" xlink:href="cgnx-20240331.xsd#cgnx_SouthboroughMassachusettsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_SouthboroughMassachusettsMember" xlink:to="lab_cgnx_SouthboroughMassachusettsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_1fb2cc55-073c-453b-85f0-0189a65ff5f4_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_fbd068fa-7022-48e6-8ae2-dad0c854e3c4_terseLabel_en-US" xlink:label="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total intrinsic value</link:label>
    <link:label id="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_label_en-US" xlink:label="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shares Based Compensation Arrangement By Shares Based Payment Award Options Exercisable Intrinsic Value</link:label>
    <link:label id="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_documentation_en-US" xlink:label="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Shares based compensation arrangement by shares based payment award options exercisable intrinsic value.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:href="cgnx-20240331.xsd#cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:to="lab_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentIncomeNonoperating_80ee0ff3-9d04-4f89-8aac-01877cf54614_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentIncomeNonoperating" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment income</link:label>
    <link:label id="lab_us-gaap_InvestmentIncomeNonoperating_label_en-US" xlink:label="lab_us-gaap_InvestmentIncomeNonoperating" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment Income, Nonoperating</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeNonoperating" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNonoperating"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentIncomeNonoperating" xlink:to="lab_us-gaap_InvestmentIncomeNonoperating" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_8af6c7d4-7b9b-476c-b3ba-e6b684440b7d_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Subsequent Events</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock" xlink:to="lab_us-gaap_SubsequentEventsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_18bf39e3-0858-4eba-a0e7-dfa075b6ee3d_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_bdb2f939-92e8-4882-82e9-25dd577cc43e_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recurring</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsRecurringMember_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsRecurringMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsRecurringMember" xlink:to="lab_us-gaap_FairValueMeasurementsRecurringMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_bc141fc9-ceb2-4ea2-bfbe-ca99fb366a40_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_956050c3-a08b-4d7f-bec8-c1274609aa88_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vested (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonNeosMember_terseLabel_en-US" xlink:label="lab_ecd_NonNeosMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-NEOs</link:label>
    <link:label id="lab_ecd_NonNeosMember_label_en-US" xlink:label="lab_ecd_NonNeosMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-NEOs [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonNeosMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonNeosMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonNeosMember" xlink:to="lab_ecd_NonNeosMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_e1e3b3f7-922c-45b9-a563-45666f282a02_negatedLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Forfeited or expired (in shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_98b9e15a-0451-40f4-99b5-1a4e5ee01c33_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Future lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_638965e5-edfb-4e0c-b0c5-5b2d3195c5a3_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxContingencyLineItems_23c0b22f-1d1a-4124-af10-ac8edcbb2d99_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Line Items]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxContingencyLineItems_label_en-US" xlink:label="lab_us-gaap_IncomeTaxContingencyLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Contingency [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems" xlink:to="lab_us-gaap_IncomeTaxContingencyLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsDisclosureTextBlock_f9480005-75c8-4299-a1b1-435f977f675f_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, and Investments</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:to="lab_us-gaap_CashAndCashEquivalentsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_e8dc21c8-8722-4d27-8f59-89b208a671c5_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net change in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameDomain_044fa1ea-4d23-41fb-9241-13d8686b31a1_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxAuthorityNameDomain_label_en-US" xlink:label="lab_us-gaap_IncomeTaxAuthorityNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Authority, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain" xlink:to="lab_us-gaap_IncomeTaxAuthorityNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d470eba9-b0db-43c3-9ec5-0d6d7c8cdf45_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonPeoNeoMember_terseLabel_en-US" xlink:label="lab_ecd_NonPeoNeoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-PEO NEO</link:label>
    <link:label id="lab_ecd_NonPeoNeoMember_label_en-US" xlink:label="lab_ecd_NonPeoNeoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-PEO NEO [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonPeoNeoMember" xlink:to="lab_ecd_NonPeoNeoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_d1140d51-afad-4fd8-9ef6-a9e3f7e5f7bc_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToCompAxis_terseLabel_en-US" xlink:label="lab_ecd_AdjToCompAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation:</link:label>
    <link:label id="lab_ecd_AdjToCompAxis_label_en-US" xlink:label="lab_ecd_AdjToCompAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToCompAxis" xlink:to="lab_ecd_AdjToCompAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OffsettingAssetsTableTextBlock_929cb07a-f964-4c63-89af-f3243a31e34e_terseLabel_en-US" xlink:label="lab_us-gaap_OffsettingAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Offsetting Assets</link:label>
    <link:label id="lab_us-gaap_OffsettingAssetsTableTextBlock_label_en-US" xlink:label="lab_us-gaap_OffsettingAssetsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Offsetting Assets [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffsettingAssetsTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OffsettingAssetsTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OffsettingAssetsTableTextBlock" xlink:to="lab_us-gaap_OffsettingAssetsTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_0ccd109b-40e8-45e5-afa2-adc1836ba484_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Work-in-process</link:label>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Work in Process, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonGaapMeasureDescriptionTextBlock_terseLabel_en-US" xlink:label="lab_ecd_NonGaapMeasureDescriptionTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-GAAP Measure Description</link:label>
    <link:label id="lab_ecd_NonGaapMeasureDescriptionTextBlock_label_en-US" xlink:label="lab_ecd_NonGaapMeasureDescriptionTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-GAAP Measure Description [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonGaapMeasureDescriptionTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:to="lab_ecd_NonGaapMeasureDescriptionTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_1c368bd8-edbf-4e96-8070-dba3984c5f0f_terseLabel_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discrete tax expense (benefit)</link:label>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_label_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount</link:label>
    <link:label id="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_documentation_en-US" xlink:label="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" xlink:href="cgnx-20240331.xsd#cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" xlink:to="lab_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent_28b519b5-79ce-4f78-9f3b-0b0d090a5a58_terseLabel_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Allowance for credit losses, non-current</link:label>
    <link:label id="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent_label_en-US" xlink:label="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Securities, Available-for-Sale, Allowance for Credit Loss, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" xlink:to="lab_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_e6877c32-9ef4-4fb6-ab99-ca6c92914241_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_5f29b063-3dc1-472a-9365-1944ef87a8bb_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Basic weighted-average common shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_a27e1667-e481-47c3-a5dc-700899318a47_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_df0da8c2-bbf4-4e37-b30a-027f99b95887_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Operating income</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RealizedInvestmentGainsLosses_4589408c-5536-47a3-a6d2-769634747f1b_terseLabel_en-US" xlink:label="lab_us-gaap_RealizedInvestmentGainsLosses" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net realized gains (losses)</link:label>
    <link:label id="lab_us-gaap_RealizedInvestmentGainsLosses_label_en-US" xlink:label="lab_us-gaap_RealizedInvestmentGainsLosses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Realized Investment Gains (Losses)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealizedInvestmentGainsLosses" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RealizedInvestmentGainsLosses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RealizedInvestmentGainsLosses" xlink:to="lab_us-gaap_RealizedInvestmentGainsLosses" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_035fa7eb-3380-4558-9ddf-eda83a04fcc4_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_1339f237-ec81-418b-be34-fdd196ec6435_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Products and Services [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:to="lab_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_fe556d07-ae51-40c1-bab9-c20353e222a2_terseLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income (loss), net of tax:</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTaxAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_country_SG_668c07a5-63a2-44ad-8d35-5c8b88bf9ae5_terseLabel_en-US" xlink:label="lab_country_SG" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Singapore</link:label>
    <link:label id="lab_country_SG_label_en-US" xlink:label="lab_country_SG" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">SINGAPORE</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_SG" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_SG"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_SG" xlink:to="lab_country_SG" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PvpTable_terseLabel_en-US" xlink:label="lab_ecd_PvpTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure</link:label>
    <link:label id="lab_ecd_PvpTable_label_en-US" xlink:label="lab_ecd_PvpTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PvpTable" xlink:to="lab_ecd_PvpTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_e27d2272-788c-4125-9ee4-b9e6605dbe87_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_06f1a2d7-ba10-46a3-b874-ecc07bc54505_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Available-for-sale investments:</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock_caf66fc8-97ed-4fc9-8cff-43db37f54e50_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Nonvested Performance-based Units Activity</link:label>
    <link:label id="lab_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Nonvested Performance-Based Units Activity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_69719c4c-cf56-4185-960d-526a3f47ce0f_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted- Average Remaining Contractual Term&#160;(in&#160;years)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_LossGainFromCatastrophes_c7608034-8666-4728-bb42-30fcc05105f6_terseLabel_en-US" xlink:label="lab_cgnx_LossGainFromCatastrophes" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss (recovery) from fire (Note 17)</link:label>
    <link:label id="lab_cgnx_LossGainFromCatastrophes_label_en-US" xlink:label="lab_cgnx_LossGainFromCatastrophes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss (Gain) From Catastrophes</link:label>
    <link:label id="lab_cgnx_LossGainFromCatastrophes_documentation_en-US" xlink:label="lab_cgnx_LossGainFromCatastrophes" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Loss (Gain) From Catastrophes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LossGainFromCatastrophes" xlink:href="cgnx-20240331.xsd#cgnx_LossGainFromCatastrophes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_LossGainFromCatastrophes" xlink:to="lab_cgnx_LossGainFromCatastrophes" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Disqualification of Tax Benefits, Amount</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Disqualification of Tax Benefits, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTable_terseLabel_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures</link:label>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTable_label_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:to="lab_ecd_AwardsCloseToMnpiDiscTable" xlink:type="arc" order="1"/>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_3ccd870f-a31c-4430-8d6a-1ec3ad4dc35f_terseLabel_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercisable</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_label_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Exercisable, Aggregate Intrinsic Value</link:label>
    <link:label id="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_documentation_en-US" xlink:label="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Share based compensation arrangement by share based payment award options exercisable aggregate intrinsic value.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:to="lab_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>11
<FILENAME>cgnx-20240331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2024 Workiva-->
<!--r:dfad6519-e7c9-43ce-99d4-1de89517fce0,g:98c12c7f-ecb7-4934-b1a1-7d9003090dce-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.cognex.com/role/CoverPage" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_463b2bd4-0ae9-46e4-b7f5-fe0f5ba2cc45" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_DocumentType_463b2bd4-0ae9-46e4-b7f5-fe0f5ba2cc45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_63a72390-2730-4fd5-b84b-367e5289aecf" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_DocumentQuarterlyReport_63a72390-2730-4fd5-b84b-367e5289aecf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_53ad5a31-fcb1-4c21-9e4f-bb3713b9efc4" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_DocumentTransitionReport_53ad5a31-fcb1-4c21-9e4f-bb3713b9efc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_7f463561-e441-4ec3-b121-14e4dd6e21a0" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityFileNumber_7f463561-e441-4ec3-b121-14e4dd6e21a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_412fad5b-28e5-4ff0-8801-5a7ef66dc9d0" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityRegistrantName_412fad5b-28e5-4ff0-8801-5a7ef66dc9d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_50e5a0c9-18db-474f-afba-8560e1b788b5" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityIncorporationStateCountryCode_50e5a0c9-18db-474f-afba-8560e1b788b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_bdef0971-fd5b-4c9a-92ac-cd71bc43029a" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityTaxIdentificationNumber_bdef0971-fd5b-4c9a-92ac-cd71bc43029a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_1ede005c-724c-4dda-bf43-fa4ae8e37e1d" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityAddressAddressLine1_1ede005c-724c-4dda-bf43-fa4ae8e37e1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_eff26716-0204-43b3-b623-c2ac0fa7dffb" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityAddressCityOrTown_eff26716-0204-43b3-b623-c2ac0fa7dffb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_11f68b15-e1b8-4d30-b31d-e0001308b8de" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityAddressStateOrProvince_11f68b15-e1b8-4d30-b31d-e0001308b8de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_bd9ac29a-b728-44dc-90fa-973802873afc" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityAddressPostalZipCode_bd9ac29a-b728-44dc-90fa-973802873afc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_45032794-00ff-4efa-9c81-d08811547ec1" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_CityAreaCode_45032794-00ff-4efa-9c81-d08811547ec1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_c8511286-638c-4473-ae94-0f46b23c8ea6" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_LocalPhoneNumber_c8511286-638c-4473-ae94-0f46b23c8ea6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_9629445f-a30c-4e1d-b3da-5b04ba3d155a" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_Security12bTitle_9629445f-a30c-4e1d-b3da-5b04ba3d155a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_a1704e62-9da5-465c-90b9-f15617891ddb" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_TradingSymbol_a1704e62-9da5-465c-90b9-f15617891ddb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_ab2b2037-9588-42ad-b361-96814543f75e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_SecurityExchangeName_ab2b2037-9588-42ad-b361-96814543f75e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_ca3e3129-7ef3-4f5e-8d1a-78a2be2ad852" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityCurrentReportingStatus_ca3e3129-7ef3-4f5e-8d1a-78a2be2ad852" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_21c440f5-8c38-4a10-ac5a-1b96292f552d" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityInteractiveDataCurrent_21c440f5-8c38-4a10-ac5a-1b96292f552d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_c2742547-34cf-4cee-b789-58f798bb6d1d" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityFilerCategory_c2742547-34cf-4cee-b789-58f798bb6d1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_2c2e8559-0289-42eb-872f-6fb569255a74" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntitySmallBusiness_2c2e8559-0289-42eb-872f-6fb569255a74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_e0cdb538-1036-43c4-b668-047eb65c136b" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityEmergingGrowthCompany_e0cdb538-1036-43c4-b668-047eb65c136b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_df01c2d4-f56c-48b1-b898-13ccbf9dd1de" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityShellCompany_df01c2d4-f56c-48b1-b898-13ccbf9dd1de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_5dbc8f29-15e0-4f10-bf85-bc3effe49acb" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_5dbc8f29-15e0-4f10-bf85-bc3effe49acb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_57887bcd-b9f9-4e78-b8bc-88aac3aa6664" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_DocumentPeriodEndDate_57887bcd-b9f9-4e78-b8bc-88aac3aa6664" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_2be5e69e-3272-452b-90d3-55ad8f528884" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_EntityCentralIndexKey_2be5e69e-3272-452b-90d3-55ad8f528884" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_21396ae7-4fe4-4a35-b181-10aa41a1ad6c" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_CurrentFiscalYearEndDate_21396ae7-4fe4-4a35-b181-10aa41a1ad6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_97c28c0d-2f57-4e56-8c51-72b994636856" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_DocumentFiscalYearFocus_97c28c0d-2f57-4e56-8c51-72b994636856" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_10be3891-38dc-4bc7-b444-e65e64fb48c7" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_DocumentFiscalPeriodFocus_10be3891-38dc-4bc7-b444-e65e64fb48c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_a6fa9a74-b1bd-4106-84e8-89e66e0299ad" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_50b7ce3e-d59a-426c-b746-eea6b693110f" xlink:to="loc_dei_AmendmentFlag_a6fa9a74-b1bd-4106-84e8-89e66e0299ad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofOperations"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_36c4a641-e3a1-4953-9303-97811bea0289" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_36c4a641-e3a1-4953-9303-97811bea0289" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_0f957c45-8687-4969-8342-4fc729db11db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_0f957c45-8687-4969-8342-4fc729db11db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_6a1e4c2c-8220-4b9c-b531-9a84942b4a7f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_GrossProfit_6a1e4c2c-8220-4b9c-b531-9a84942b4a7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpense_d863926a-b5d0-4f36-a01d-a7b879aaa366" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpense_d863926a-b5d0-4f36-a01d-a7b879aaa366" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_2883b1eb-6cc5-49d1-a363-8d3a0a75da83" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_2883b1eb-6cc5-49d1-a363-8d3a0a75da83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LossGainFromCatastrophes_32968e97-b086-4f18-990a-3a5a988458e8" xlink:href="cgnx-20240331.xsd#cgnx_LossGainFromCatastrophes"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_cgnx_LossGainFromCatastrophes_32968e97-b086-4f18-990a-3a5a988458e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_700a28b3-2317-4152-b9d5-2b16d880ddee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_OperatingIncomeLoss_700a28b3-2317-4152-b9d5-2b16d880ddee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_563f59ac-424f-4dcb-9709-caa601bb8240" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossBeforeTax"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax_563f59ac-424f-4dcb-9709-caa601bb8240" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIncomeNonoperating_83ad32a5-953c-4413-9d68-03292c584369" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentIncomeNonoperating"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_InvestmentIncomeNonoperating_83ad32a5-953c-4413-9d68-03292c584369" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_0b3ee2f5-b9d4-427c-b0bc-83b9b047bd65" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_0b3ee2f5-b9d4-427c-b0bc-83b9b047bd65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d5569090-eb7a-4c4d-8ea4-12cdd0fd707b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_d5569090-eb7a-4c4d-8ea4-12cdd0fd707b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_26b4ae8d-ae3f-453e-8de8-d2ca9ee68df2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_26b4ae8d-ae3f-453e-8de8-d2ca9ee68df2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_75384e69-44ba-4b85-b927-1b6df2c7e6f4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_NetIncomeLoss_75384e69-44ba-4b85-b927-1b6df2c7e6f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract_b8bd7a76-6737-410f-9b97-6d4a1cb218cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_EarningsPerShareDilutedAbstract_b8bd7a76-6737-410f-9b97-6d4a1cb218cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_12789031-06de-43fb-8df8-cd731b3d296b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_b8bd7a76-6737-410f-9b97-6d4a1cb218cb" xlink:to="loc_us-gaap_EarningsPerShareBasic_12789031-06de-43fb-8df8-cd731b3d296b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_7312daf5-8fd0-413f-9e8f-ecc59fb2fe1d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_b8bd7a76-6737-410f-9b97-6d4a1cb218cb" xlink:to="loc_us-gaap_EarningsPerShareDiluted_7312daf5-8fd0-413f-9e8f-ecc59fb2fe1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_b619564b-68d8-44f9-af20-92914ee2a75b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_b619564b-68d8-44f9-af20-92914ee2a75b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a9c4945d-bb61-4603-9bf8-132242bc9201" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_b619564b-68d8-44f9-af20-92914ee2a75b" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_a9c4945d-bb61-4603-9bf8-132242bc9201" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_96bca9d4-4276-4180-81be-da82ed3ed0fa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_b619564b-68d8-44f9-af20-92914ee2a75b" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_96bca9d4-4276-4180-81be-da82ed3ed0fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_a6d0408d-89ac-41f0-a6ce-ec89952541d5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_ab99726e-a647-4b64-a90c-5f66313a7b38" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_a6d0408d-89ac-41f0-a6ce-ec89952541d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofComprehensiveIncome"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a0a82ab8-b528-4773-a436-5a245b57f49c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_7c5d36fb-6af9-4c6c-b3b0-d20ac8432ced" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a0a82ab8-b528-4773-a436-5a245b57f49c" xlink:to="loc_us-gaap_NetIncomeLoss_7c5d36fb-6af9-4c6c-b3b0-d20ac8432ced" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_f1fd7026-56ac-4335-b301-dfe5bb2d087b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTaxAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a0a82ab8-b528-4773-a436-5a245b57f49c" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_f1fd7026-56ac-4335-b301-dfe5bb2d087b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_f7ef66ad-af44-40b0-b444-40011ed380d6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_f1fd7026-56ac-4335-b301-dfe5bb2d087b" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_f7ef66ad-af44-40b0-b444-40011ed380d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_d8c84ec2-ec07-462e-b1a8-8a8601fc2b96" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_f7ef66ad-af44-40b0-b444-40011ed380d6" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_d8c84ec2-ec07-462e-b1a8-8a8601fc2b96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_b3325df5-ab25-4e3f-87a3-a8e2068f0fc8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_f7ef66ad-af44-40b0-b444-40011ed380d6" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_b3325df5-ab25-4e3f-87a3-a8e2068f0fc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_9094c198-1a47-496f-bd52-4985ccce9247" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract_f7ef66ad-af44-40b0-b444-40011ed380d6" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_9094c198-1a47-496f-bd52-4985ccce9247" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CurrencytranslationadjustmentsAbstract_41a23a4a-3a72-425f-9bab-d4ade69e207f" xlink:href="cgnx-20240331.xsd#cgnx_CurrencytranslationadjustmentsAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_f1fd7026-56ac-4335-b301-dfe5bb2d087b" xlink:to="loc_cgnx_CurrencytranslationadjustmentsAbstract_41a23a4a-3a72-425f-9bab-d4ade69e207f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_15ee4569-0514-4f01-87a6-44b54fbcfce4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_CurrencytranslationadjustmentsAbstract_41a23a4a-3a72-425f-9bab-d4ade69e207f" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_15ee4569-0514-4f01-87a6-44b54fbcfce4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_7ab8447c-e67f-4af0-af9b-173edfd2283d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_CurrencytranslationadjustmentsAbstract_41a23a4a-3a72-425f-9bab-d4ade69e207f" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent_7ab8447c-e67f-4af0-af9b-173edfd2283d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_76e0b559-b09d-4622-a5b9-4aea4a7a645f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTaxAbstract_f1fd7026-56ac-4335-b301-dfe5bb2d087b" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent_76e0b559-b09d-4622-a5b9-4aea4a7a645f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_854ae530-d211-4403-a8ac-e1f928843d4c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a0a82ab8-b528-4773-a436-5a245b57f49c" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_854ae530-d211-4403-a8ac-e1f928843d4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofComprehensiveIncomeParenthetical"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_33b765db-2782-499a-a50d-2aa087443d5b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_50694320-2638-4b1b-a6ec-0e22012970c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_33b765db-2782-499a-a50d-2aa087443d5b" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_50694320-2638-4b1b-a6ec-0e22012970c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_089b3ea4-5a1e-4a04-abe6-a9379d9156ed" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_089b3ea4-5a1e-4a04-abe6-a9379d9156ed" xlink:to="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_18ddf132-2504-4213-8eb3-c4a527bcc2f1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_18ddf132-2504-4213-8eb3-c4a527bcc2f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_bc4f52d3-176d-4b87-ba10-eac93709f6ee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_bc4f52d3-176d-4b87-ba10-eac93709f6ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_2ae903d7-a1f3-4b82-b9a2-d6a659e1e77b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_2ae903d7-a1f3-4b82-b9a2-d6a659e1e77b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnbilledReceivablesCurrent_679228e0-277e-4f23-ae21-3967433f5b8f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnbilledReceivablesCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_UnbilledReceivablesCurrent_679228e0-277e-4f23-ae21-3967433f5b8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_4f76d09b-fd5c-4f16-b0e4-e199457b2acc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_InventoryNet_4f76d09b-fd5c-4f16-b0e4-e199457b2acc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_8a5215fa-6b27-4f6d-b7a9-c67e5cdb50c7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_8a5215fa-6b27-4f6d-b7a9-c67e5cdb50c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_3d7ded94-4471-46b6-b8b1-f24a2e9dc0bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_f9035d58-1fe4-4b81-8706-912f895a50e4" xlink:to="loc_us-gaap_AssetsCurrent_3d7ded94-4471-46b6-b8b1-f24a2e9dc0bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_174178a2-ade9-49c9-840f-494e3ba17b12" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_LongTermInvestments_174178a2-ade9-49c9-840f-494e3ba17b12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_89eaa3b8-25c0-4343-97ef-630cfa68df06" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_89eaa3b8-25c0-4343-97ef-630cfa68df06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_a42eb667-a8be-4862-bea3-dee79974e2f3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_a42eb667-a8be-4862-bea3-dee79974e2f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_1357d962-aecf-4a92-9164-3e83f2eea5c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_Goodwill_1357d962-aecf-4a92-9164-3e83f2eea5c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e1477cbc-5c23-4cf7-bf9e-e33b72b14ec5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_e1477cbc-5c23-4cf7-bf9e-e33b72b14ec5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_76418056-c478-4ad2-ada7-548b0301d4dc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_76418056-c478-4ad2-ada7-548b0301d4dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_6f46d115-7810-412e-a71f-7b4c89928282" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_6f46d115-7810-412e-a71f-7b4c89928282" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_b473bdba-477d-477d-88a2-a50f296b568e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_d4011a0f-9fdd-48bf-80a1-c06357991baf" xlink:to="loc_us-gaap_Assets_b473bdba-477d-477d-88a2-a50f296b568e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_089b3ea4-5a1e-4a04-abe6-a9379d9156ed" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_067c6e43-ca38-468d-80d7-b48860cd6ae9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:to="loc_us-gaap_AccountsPayableCurrent_067c6e43-ca38-468d-80d7-b48860cd6ae9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrent_1fbe1d1c-7f81-4e8f-981e-1e1be24c9a35" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrent_1fbe1d1c-7f81-4e8f-981e-1e1be24c9a35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesCurrent_6e4fae03-c4db-4fa2-a3f5-bafb3a67b64c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxesCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:to="loc_us-gaap_AccruedIncomeTaxesCurrent_6e4fae03-c4db-4fa2-a3f5-bafb3a67b64c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiabilityCurrent_930f2410-8d04-44bb-b79c-13d3cbb746e4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiabilityCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:to="loc_us-gaap_ContractWithCustomerLiabilityCurrent_930f2410-8d04-44bb-b79c-13d3cbb746e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_5f9a1ae6-7b3e-47db-aa2e-91d0f948b77a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_5f9a1ae6-7b3e-47db-aa2e-91d0f948b77a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_298a7354-ead9-4d14-86e6-8d7c224e7062" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_5ab411ee-42f3-40eb-b866-8d1613000ebb" xlink:to="loc_us-gaap_LiabilitiesCurrent_298a7354-ead9-4d14-86e6-8d7c224e7062" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_a673ca0d-3c06-4ff3-8b57-01c0d1288a92" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_a673ca0d-3c06-4ff3-8b57-01c0d1288a92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_f6d2c85b-cd23-4fcd-8587-13fcd91627d7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_f6d2c85b-cd23-4fcd-8587-13fcd91627d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_3f12adfd-25c1-4442-b64a-2b371aa3d4e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_3f12adfd-25c1-4442-b64a-2b371aa3d4e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxes_635b7dde-441f-4793-a259-69d517c3dd94" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedIncomeTaxes"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_AccruedIncomeTaxes_635b7dde-441f-4793-a259-69d517c3dd94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_686ef4ee-da28-42d8-bb3d-0edf733446fa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_686ef4ee-da28-42d8-bb3d-0edf733446fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Liabilities_401e6b21-7b97-4363-8bb7-235ca7274b2a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Liabilities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_Liabilities_401e6b21-7b97-4363-8bb7-235ca7274b2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_add60ab7-e6f3-4476-a3dc-18cb27dcdf8e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_CommitmentsAndContingencies_add60ab7-e6f3-4476-a3dc-18cb27dcdf8e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValueOutstanding_c9b03997-242d-4400-8f01-c7e6f113028f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockValueOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:to="loc_us-gaap_PreferredStockValueOutstanding_c9b03997-242d-4400-8f01-c7e6f113028f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValueOutstanding_63b0d3f0-f6d5-47e9-8cc7-831534aed42e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValueOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:to="loc_us-gaap_CommonStockValueOutstanding_63b0d3f0-f6d5-47e9-8cc7-831534aed42e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalCommonStock_23f5b5fc-8125-4139-bb6c-86bb5fd7985b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:to="loc_us-gaap_AdditionalPaidInCapitalCommonStock_23f5b5fc-8125-4139-bb6c-86bb5fd7985b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_c80efa9d-4fb9-471a-b08a-81821e057f17" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_c80efa9d-4fb9-471a-b08a-81821e057f17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_e19bfd55-2b79-45ae-bf9f-434f04a5952d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_e19bfd55-2b79-45ae-bf9f-434f04a5952d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_028c9758-56bf-4f50-9a25-484793ecaa44" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_69eea7b0-5d61-4242-bb4e-4ce25d98adef" xlink:to="loc_us-gaap_StockholdersEquity_028c9758-56bf-4f50-9a25-484793ecaa44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_39c7f7d7-8cef-4596-a045-c7be758aaedb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_6d84b81e-4e80-46c0-a4db-c183bae09711" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_39c7f7d7-8cef-4596-a045-c7be758aaedb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent_9ab96dae-06f6-4d4e-9a8c-83b3dedf0244" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent_9ab96dae-06f6-4d4e-9a8c-83b3dedf0244" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent_9da2ecf0-63e0-4447-b5ff-93274025dab0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent_9da2ecf0-63e0-4447-b5ff-93274025dab0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_21b4cdc7-e486-45ea-83cb-994c30da56fa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_21b4cdc7-e486-45ea-83cb-994c30da56fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent_7b3e65dd-919a-448a-b908-563bd1402af1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent_7b3e65dd-919a-448a-b908-563bd1402af1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent_545a028b-bc95-43f6-9829-0f2d5abd3f72" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent_545a028b-bc95-43f6-9829-0f2d5abd3f72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_fd015c27-84fe-4750-93a2-f96e44d7867c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_fd015c27-84fe-4750-93a2-f96e44d7867c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_ac3ae053-af4e-49b7-8ca8-0805c2694cf1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_ac3ae053-af4e-49b7-8ca8-0805c2694cf1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_5243101d-7814-4573-a778-38c73c188d0e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_PreferredStockSharesIssued_5243101d-7814-4573-a778-38c73c188d0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_4eda488a-0367-4fd2-80e9-2c4926d71322" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_4eda488a-0367-4fd2-80e9-2c4926d71322" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_7224ceb7-9b47-42f6-8ef9-e4de48fa4c79" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_7224ceb7-9b47-42f6-8ef9-e4de48fa4c79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_04ff747e-7666-4b5a-91b9-779468088539" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_04ff747e-7666-4b5a-91b9-779468088539" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_3a744da1-6963-4375-addc-d1874fae4e47" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_CommonStockSharesIssued_3a744da1-6963-4375-addc-d1874fae4e47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_3e04abf1-8194-4fc8-abc7-433d8e609bf5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_888621eb-7e87-4eae-8999-6113e5b52af1" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_3e04abf1-8194-4fc8-abc7-433d8e609bf5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_8eda1e5d-a42f-44a6-acd6-0015101d5ace" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_8eda1e5d-a42f-44a6-acd6-0015101d5ace" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_625245ce-39a4-4184-88cb-4d4dbdb5f5cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_8eda1e5d-a42f-44a6-acd6-0015101d5ace" xlink:to="loc_us-gaap_NetIncomeLoss_625245ce-39a4-4184-88cb-4d4dbdb5f5cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_8eda1e5d-a42f-44a6-acd6-0015101d5ace" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockOptionPlanExpense_7579191d-9bc6-4c22-a9e9-d83df36910f0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockOptionPlanExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_StockOptionPlanExpense_7579191d-9bc6-4c22-a9e9-d83df36910f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Depreciation_e2a94214-01c3-4ccc-bf93-c306c4b97bd4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Depreciation"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_Depreciation_e2a94214-01c3-4ccc-bf93-c306c4b97bd4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfIntangibleAssets_82496901-f427-4c8d-ac3b-c7aeff8066ae" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfIntangibleAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_AmortizationOfIntangibleAssets_82496901-f427-4c8d-ac3b-c7aeff8066ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ExcessAndObsoleteInventoryCharges_acafaf0e-fd95-41c7-98d5-34c5a1e79700" xlink:href="cgnx-20240331.xsd#cgnx_ExcessAndObsoleteInventoryCharges"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_cgnx_ExcessAndObsoleteInventoryCharges_acafaf0e-fd95-41c7-98d5-34c5a1e79700" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_FairValueAdjustmentOnAcquiredInventories_4f2d6a8f-aa12-4e2d-bd88-0a338a03fe54" xlink:href="cgnx-20240331.xsd#cgnx_FairValueAdjustmentOnAcquiredInventories"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_cgnx_FairValueAdjustmentOnAcquiredInventories_4f2d6a8f-aa12-4e2d-bd88-0a338a03fe54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_ba3a517c-5f3b-488d-8622-50b679695e38" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments_ba3a517c-5f3b-488d-8622-50b679695e38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_5968844e-833f-4cbc-8c65-eb6257cc6c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfInvestments"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_GainLossOnSaleOfInvestments_5968844e-833f-4cbc-8c65-eb6257cc6c3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_0cdc66ed-79e8-4d48-a6ca-43e09508a26f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_0cdc66ed-79e8-4d48-a6ca-43e09508a26f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_cc43adcd-4d89-47cc-ba1e-be244a59361c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_cc43adcd-4d89-47cc-ba1e-be244a59361c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_e9777f4c-4403-4dbc-a65a-3301e42e415c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInContractWithCustomerLiability"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInContractWithCustomerLiability_e9777f4c-4403-4dbc-a65a-3301e42e415c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_c3b58fc5-65ef-4884-966b-727a1d0c2ff5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_c3b58fc5-65ef-4884-966b-727a1d0c2ff5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0e65585b-7e9a-47f2-8597-fa5afec95869" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_0e65585b-7e9a-47f2-8597-fa5afec95869" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayable_e0b01f31-53e4-49d8-bd05-9742c76b27c1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayable"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayable_e0b01f31-53e4-49d8-bd05-9742c76b27c1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_3fa2111e-376f-4c12-8aed-cc2707cd2551" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedLiabilities_3fa2111e-376f-4c12-8aed-cc2707cd2551" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_03ca721d-f5f4-49f1-ab99-24475f6d147f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccruedTaxesPayable"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInAccruedTaxesPayable_03ca721d-f5f4-49f1-ab99-24475f6d147f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_6cedbde8-ad1a-431c-bc25-c213f5c7430b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInDeferredRevenue"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInDeferredRevenue_6cedbde8-ad1a-431c-bc25-c213f5c7430b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_5da64f81-13aa-42c3-9fc1-ba8fa6ce2708" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_5ad9dec2-55f6-4902-b766-ff9dc09299bf" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_5da64f81-13aa-42c3-9fc1-ba8fa6ce2708" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_fa9f7d8d-f67b-4f82-ab7f-4a7a71da6cc7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_8eda1e5d-a42f-44a6-acd6-0015101d5ace" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_fa9f7d8d-f67b-4f82-ab7f-4a7a71da6cc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireInvestments_19917c40-83f9-4679-a600-a0ba99d29c80" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireInvestments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:to="loc_us-gaap_PaymentsToAcquireInvestments_19917c40-83f9-4679-a600-a0ba99d29c80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_7e8edd87-3678-4adf-82d0-efadd269e326" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_7e8edd87-3678-4adf-82d0-efadd269e326" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_c41e35d7-2362-4170-b7d5-8f6f2806c474" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_c41e35d7-2362-4170-b7d5-8f6f2806c474" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_418e6bea-5c54-402c-9e6f-0d3ab99e67c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired_418e6bea-5c54-402c-9e6f-0d3ab99e67c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_a7cef811-5093-47e1-9384-2b808025a925" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_dd2dee92-2f88-42de-a3c8-450054345426" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_a7cef811-5093-47e1-9384-2b808025a925" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_c94d7e93-2e13-4b80-a901-cd93ff7c7810" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_c94d7e93-2e13-4b80-a901-cd93ff7c7810" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_bba24958-4f19-4cd4-8805-697253f34a73" xlink:href="cgnx-20240331.xsd#cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_c94d7e93-2e13-4b80-a901-cd93ff7c7810" xlink:to="loc_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet_bba24958-4f19-4cd4-8805-697253f34a73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_28703808-7ac9-4609-952c-5abeb1a814be" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_c94d7e93-2e13-4b80-a901-cd93ff7c7810" xlink:to="loc_us-gaap_PaymentsForRepurchaseOfCommonStock_28703808-7ac9-4609-952c-5abeb1a814be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDividendsCommonStock_821cfb4f-f661-4a18-8eaa-4c5ee00ee222" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDividendsCommonStock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_c94d7e93-2e13-4b80-a901-cd93ff7c7810" xlink:to="loc_us-gaap_PaymentsOfDividendsCommonStock_821cfb4f-f661-4a18-8eaa-4c5ee00ee222" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_df963499-f313-4507-aa10-4ca2383a9ec4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_c94d7e93-2e13-4b80-a901-cd93ff7c7810" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_df963499-f313-4507-aa10-4ca2383a9ec4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9abda31c-ab94-47a8-87db-ce6367d4664b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_9abda31c-ab94-47a8-87db-ce6367d4664b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_0515cc4d-065e-4166-9e1a-fb5e62776301" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_0515cc4d-065e-4166-9e1a-fb5e62776301" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d6609236-3ce5-4b75-892c-b45aec54f651" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d6609236-3ce5-4b75-892c-b45aec54f651" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_a4425bad-b566-4b5c-bf68-280413414069" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_fbc8f636-d2e9-420d-ba45-15f15e6a72b0" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_a4425bad-b566-4b5c-bf68-280413414069" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementofShareholdersEquity"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_024ec5cb-a137-4510-ab5b-c89e2781ff51" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_024ec5cb-a137-4510-ab5b-c89e2781ff51" xlink:to="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_c564e47d-4e85-4347-a48e-9a8df6b03e85" xlink:to="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_7f4a12de-a6cb-4a37-87c4-d0282bf3821d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_CommonStockMember_7f4a12de-a6cb-4a37-87c4-d0282bf3821d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_a775ec98-7ecf-482c-b3ac-cc8b49604160" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_a775ec98-7ecf-482c-b3ac-cc8b49604160" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_95dbab2b-ef09-4017-80f5-8845da9d8c8a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_RetainedEarningsMember_95dbab2b-ef09-4017-80f5-8845da9d8c8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_bf242fd4-c871-4261-b971-781f92d7c174" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_11ae2fc4-b07b-405f-807a-e4ca733ceb3d" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_bf242fd4-c871-4261-b971-781f92d7c174" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_b0d31604-e4fa-40f2-a081-c49529fa8a5a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_beab006e-b3c4-426f-9aa7-76b5d2d138e5" xlink:to="loc_us-gaap_StatementLineItems_b0d31604-e4fa-40f2-a081-c49529fa8a5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_b0d31604-e4fa-40f2-a081-c49529fa8a5a" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_8df55de2-fc4a-4bb9-bc26-e847e060a036" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_CommonStockSharesIssued_8df55de2-fc4a-4bb9-bc26-e847e060a036" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_9f57feab-e34d-41a2-8c03-b774136e2d9f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockholdersEquity_9f57feab-e34d-41a2-8c03-b774136e2d9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_f681d218-4e4d-4b0b-9e85-ad306157a317" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod_f681d218-4e4d-4b0b-9e85-ad306157a317" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_69fb651d-1bdd-47bd-bd5d-4933ad54c415" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised_69fb651d-1bdd-47bd-bd5d-4933ad54c415" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodShares_07a46432-d402-4774-bb91-63e63807fe81" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodShares"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodShares_07a46432-d402-4774-bb91-63e63807fe81" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchasedDuringPeriodValue_b3c592b2-b279-4d44-ad22-0ad8a27e294b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchasedDuringPeriodValue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockRepurchasedDuringPeriodValue_b3c592b2-b279-4d44-ad22-0ad8a27e294b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_dff73116-f554-4d0a-a9c3-693796d18d7c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_dff73116-f554-4d0a-a9c3-693796d18d7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsCash_677cc140-68b9-40a1-9fd0-f0021d3a7064" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsCash"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_DividendsCash_677cc140-68b9-40a1-9fd0-f0021d3a7064" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_8f86b2e2-61c0-4739-9da0-581eaed82b17" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_NetIncomeLoss_8f86b2e2-61c0-4739-9da0-581eaed82b17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_51bcfe3c-79cd-4286-8fc6-781f0884f097" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax_51bcfe3c-79cd-4286-8fc6-781f0884f097" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_f82a327d-6467-442f-9d0d-3a45c3cad056" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax_f82a327d-6467-442f-9d0d-3a45c3cad056" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_6a2fa948-a5d5-4711-9121-4c521cd3c6ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax_6a2fa948-a5d5-4711-9121-4c521cd3c6ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_05ca9140-fc13-4d6e-b7df-4830dbde202b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_CommonStockSharesIssued_05ca9140-fc13-4d6e-b7df-4830dbde202b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_409e5c1d-9cfa-4cda-a6fa-18dfad312a7a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_e23ee626-0f88-43cc-a69c-d89ca804c70e" xlink:to="loc_us-gaap_StockholdersEquity_409e5c1d-9cfa-4cda-a6fa-18dfad312a7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical" xlink:type="simple" xlink:href="cgnx-20240331.xsd#ConsolidatedStatementofShareholdersEquityParenthetical"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_50437c8d-33f4-4389-adb8-edc8662d0fac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareCashPaid_2cf6ae0c-8c22-4762-ad8b-447e2bc7704d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareCashPaid"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_50437c8d-33f4-4389-adb8-edc8662d0fac" xlink:to="loc_us-gaap_CommonStockDividendsPerShareCashPaid_2cf6ae0c-8c22-4762-ad8b-447e2bc7704d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_2a8e742e-423c-42b2-94a7-e416d866703c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_50437c8d-33f4-4389-adb8-edc8662d0fac" xlink:to="loc_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax_2a8e742e-423c-42b2-94a7-e416d866703c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="cgnx-20240331.xsd#SummaryofSignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SummaryofSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_cd6ddf2e-2f78-40de-9a69-091164706879" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_e0d49ac2-378e-4dcd-91ec-d85acc7b8018" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_cd6ddf2e-2f78-40de-9a69-091164706879" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_e0d49ac2-378e-4dcd-91ec-d85acc7b8018" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/NewPronouncements" xlink:type="simple" xlink:href="cgnx-20240331.xsd#NewPronouncements"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/NewPronouncements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_a14c7036-c3d1-46cb-96ba-78737416a2a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_201a6dd4-f4f5-4b24-8897-0c93aed89a87" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_a14c7036-c3d1-46cb-96ba-78737416a2a4" xlink:to="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_201a6dd4-f4f5-4b24-8897-0c93aed89a87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="cgnx-20240331.xsd#FairValueMeasurements"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_ccf2d598-9124-4183-a398-37dd5c6d87dd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_318b4820-215a-4df1-8d5c-92bba7d83832" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_ccf2d598-9124-4183-a398-37dd5c6d87dd" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_318b4820-215a-4df1-8d5c-92bba7d83832" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestments" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestments"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_9a8f8f69-21ea-42c9-b555-b1cac1f08189" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsDisclosureTextBlock_0a86668c-60cf-4ef4-89b9-750740002759" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_9a8f8f69-21ea-42c9-b555-b1cac1f08189" xlink:to="loc_us-gaap_CashAndCashEquivalentsDisclosureTextBlock_0a86668c-60cf-4ef4-89b9-750740002759" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/Inventories" xlink:type="simple" xlink:href="cgnx-20240331.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_e7950193-51ea-4a03-867f-108fee5f1ecd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_b9ca9666-a3b2-47a3-b22f-29b86d9a464b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_e7950193-51ea-4a03-867f-108fee5f1ecd" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_b9ca9666-a3b2-47a3-b22f-29b86d9a464b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/Leases" xlink:type="simple" xlink:href="cgnx-20240331.xsd#Leases"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_fe47e5b8-2fb1-4e53-82cd-4ffe7851be71" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_44a306cc-c770-4aec-8a4c-6354b88e5fcd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_fe47e5b8-2fb1-4e53-82cd-4ffe7851be71" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_44a306cc-c770-4aec-8a4c-6354b88e5fcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/Goodwill" xlink:type="simple" xlink:href="cgnx-20240331.xsd#Goodwill"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/Goodwill" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_2cd935b3-9a89-4f06-942d-41a7f3af09d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillDisclosureTextBlock_1ec1a3e1-745d-44ed-96be-10db694f2fbf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_2cd935b3-9a89-4f06-942d-41a7f3af09d8" xlink:to="loc_us-gaap_GoodwillDisclosureTextBlock_1ec1a3e1-745d-44ed-96be-10db694f2fbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssets" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IntangibleAssets"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IntangibleAssets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4aaf83c6-c4a0-4cff-b61b-f34172efff8e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_90fe708c-99e7-451e-924e-ebe4f3e2e8a0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4aaf83c6-c4a0-4cff-b61b-f34172efff8e" xlink:to="loc_us-gaap_IntangibleAssetsDisclosureTextBlock_90fe708c-99e7-451e-924e-ebe4f3e2e8a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligations" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WarrantyObligations"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WarrantyObligations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_d7ced99e-c9ee-467e-b870-2c1b8d5ebce1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock_24e31f17-a3af-4e4c-a350-1943916c6294" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_d7ced99e-c9ee-467e-b870-2c1b8d5ebce1" xlink:to="loc_us-gaap_ProductWarrantyDisclosureTextBlock_24e31f17-a3af-4e4c-a350-1943916c6294" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CommitmentandContingencies" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CommitmentandContingencies"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CommitmentandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_5ec23307-04c4-4c4a-91c7-a6fe42b2ffa3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_2ce93fc9-5c08-4ef3-ad43-7b6594322f01" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_5ec23307-04c4-4c4a-91c7-a6fe42b2ffa3" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_2ce93fc9-5c08-4ef3-ad43-7b6594322f01" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstruments" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstruments"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstruments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_622c0457-e3f1-4850-8386-3a3a0d1fc6c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_c9db7eaa-62c3-48b7-b6b7-fb1ad73e3f89" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_622c0457-e3f1-4850-8386-3a3a0d1fc6c3" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock_c9db7eaa-62c3-48b7-b6b7-fb1ad73e3f89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognition" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognition"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognition" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_dcb5dfc9-eef4-47d2-8f62-74c7839688e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_bd9958f9-65fe-48d9-bd0b-3ad9c0d64b65" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_dcb5dfc9-eef4-47d2-8f62-74c7839688e2" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_bd9958f9-65fe-48d9-bd0b-3ad9c0d64b65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpense"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpense" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f18cffa1-b105-49b2-ba1e-1f81e1c429e7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_c1c8c167-eebf-4316-8415-16ba4860d5e0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f18cffa1-b105-49b2-ba1e-1f81e1c429e7" xlink:to="loc_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock_c1c8c167-eebf-4316-8415-16ba4860d5e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgram" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockRepurchaseProgram"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgram" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_06d5ff9a-31a5-4d94-97ba-1c9689521ffe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_265588e6-9190-40c9-bf41-02cf44aa862a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_06d5ff9a-31a5-4d94-97ba-1c9689521ffe" xlink:to="loc_us-gaap_StockholdersEquityNoteDisclosureTextBlock_265588e6-9190-40c9-bf41-02cf44aa862a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IncomeTaxes" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IncomeTaxes"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_42f67d5b-6be0-454d-aac4-4313229b2a76" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_ae2d66fc-9dff-4919-82ae-36a27b52dab1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_42f67d5b-6be0-454d-aac4-4313229b2a76" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_ae2d66fc-9dff-4919-82ae-36a27b52dab1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageShares" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WeightedAverageShares"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageShares" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_0546ec89-1a44-442d-9dde-c9d17d56b401" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_7bb10c36-29d3-4bff-8486-ebe5e6e3aa7a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_0546ec89-1a44-442d-9dde-c9d17d56b401" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_7bb10c36-29d3-4bff-8486-ebe5e6e3aa7a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/BusinessCombinations" xlink:type="simple" xlink:href="cgnx-20240331.xsd#BusinessCombinations"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/BusinessCombinations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_57f71078-0f93-4f94-8854-9f07047ec6e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationDisclosureTextBlock_8daa816c-95a0-47d7-ac61-b81509f145eb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_57f71078-0f93-4f94-8854-9f07047ec6e2" xlink:to="loc_us-gaap_BusinessCombinationDisclosureTextBlock_8daa816c-95a0-47d7-ac61-b81509f145eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEvents" xlink:type="simple" xlink:href="cgnx-20240331.xsd#SubsequentEvents"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SubsequentEvents" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_f9af40b4-a1c8-4460-b242-f2ad33b03067" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_2374edef-f337-4b37-9515-d82a581377fa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_f9af40b4-a1c8-4460-b242-f2ad33b03067" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_2374edef-f337-4b37-9515-d82a581377fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="cgnx-20240331.xsd#SummaryofSignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_d3063c4d-0b4b-4d3e-9135-fbec6c3e41b1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_134c62aa-755c-409d-a982-b270ceada2cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_d3063c4d-0b4b-4d3e-9135-fbec6c3e41b1" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_134c62aa-755c-409d-a982-b270ceada2cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#FairValueMeasurementsTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_8775f8df-febe-4da1-a4b6-f228819c6d71" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_6cffd523-2a16-4846-8a9b-3a4b6bcd6d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_8775f8df-febe-4da1-a4b6-f228819c6d71" xlink:to="loc_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock_6cffd523-2a16-4846-8a9b-3a4b6bcd6d2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_b4405826-387c-4881-9cac-6b30f2eab15e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_4ba15c16-aa71-46ff-8237-de908ded0c66" xlink:href="cgnx-20240331.xsd#cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_b4405826-387c-4881-9cac-6b30f2eab15e" xlink:to="loc_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock_4ba15c16-aa71-46ff-8237-de908ded0c66" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_1f14b4f0-5f2d-478f-b270-801a8c0538d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_b4405826-387c-4881-9cac-6b30f2eab15e" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock_1f14b4f0-5f2d-478f-b270-801a8c0538d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_1bf4192c-5121-4afd-81f9-13782aefbde0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_b4405826-387c-4881-9cac-6b30f2eab15e" xlink:to="loc_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock_1bf4192c-5121-4afd-81f9-13782aefbde0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock_b7d1c3ca-012a-4b0b-a17e-8e7ab0f7071e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RealizedGainLossOnInvestmentsTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_b4405826-387c-4881-9cac-6b30f2eab15e" xlink:to="loc_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock_b7d1c3ca-012a-4b0b-a17e-8e7ab0f7071e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_baf9c16b-585d-4c58-95f3-3b99c35bd7b9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_b4405826-387c-4881-9cac-6b30f2eab15e" xlink:to="loc_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock_baf9c16b-585d-4c58-95f3-3b99c35bd7b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_cded9187-27a4-4773-ab0c-8c73b82ac8d2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_d16850a4-fbc3-4a6c-870c-de9a035197ee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_cded9187-27a4-4773-ab0c-8c73b82ac8d2" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_d16850a4-fbc3-4a6c-870c-de9a035197ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/LeasesTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_c0c86bcc-3640-4102-8d48-6d8ec2c073f0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_8da76cf5-34bb-4ba1-8f73-07b7068dd0fd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c0c86bcc-3640-4102-8d48-6d8ec2c073f0" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_8da76cf5-34bb-4ba1-8f73-07b7068dd0fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/GoodwillTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#GoodwillTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/GoodwillTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7ab729cb-a4f5-4569-8d5f-ca099373c777" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfGoodwillTextBlock_b45d97b9-782c-452f-a8c1-79f6a933d5b3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfGoodwillTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_7ab729cb-a4f5-4569-8d5f-ca099373c777" xlink:to="loc_us-gaap_ScheduleOfGoodwillTextBlock_b45d97b9-782c-452f-a8c1-79f6a933d5b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IntangibleAssetsTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_acd7f3de-03d5-4337-82ee-bf0222d4c258" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_8798d8f6-7547-4785-a6b8-e8b8d74f48ab" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_acd7f3de-03d5-4337-82ee-bf0222d4c258" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock_8798d8f6-7547-4785-a6b8-e8b8d74f48ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_9cfcff55-44fe-4e07-8573-8344ed63c7c6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_acd7f3de-03d5-4337-82ee-bf0222d4c258" xlink:to="loc_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock_9cfcff55-44fe-4e07-8573-8344ed63c7c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WarrantyObligationsTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WarrantyObligationsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_94eecc33-3755-466a-ab3e-c647f8900e2a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_e0ac9c38-0de7-43d9-915c-2e7ef046de0a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_94eecc33-3755-466a-ab3e-c647f8900e2a" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_e0ac9c38-0de7-43d9-915c-2e7ef046de0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_147a850e-704e-4a64-8ec3-3dae1b6b670d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_OutstandingForwardContractsTableTextBlock_2f69edb0-5891-45b6-a1a5-b16f3c684884" xlink:href="cgnx-20240331.xsd#cgnx_OutstandingForwardContractsTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_147a850e-704e-4a64-8ec3-3dae1b6b670d" xlink:to="loc_cgnx_OutstandingForwardContractsTableTextBlock_2f69edb0-5891-45b6-a1a5-b16f3c684884" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_674ae0bd-0bdd-4a22-abe1-0fa5e8c6548b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_147a850e-704e-4a64-8ec3-3dae1b6b670d" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock_674ae0bd-0bdd-4a22-abe1-0fa5e8c6548b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OffsettingAssetsTableTextBlock_2297af94-2d30-49d7-bcb5-488c67f90163" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OffsettingAssetsTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_147a850e-704e-4a64-8ec3-3dae1b6b670d" xlink:to="loc_us-gaap_OffsettingAssetsTableTextBlock_2297af94-2d30-49d7-bcb5-488c67f90163" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_c232ec3b-e359-4f45-afc5-de9df4fb1bce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_147a850e-704e-4a64-8ec3-3dae1b6b670d" xlink:to="loc_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock_c232ec3b-e359-4f45-afc5-de9df4fb1bce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1d521c26-e158-4d2e-a01b-a6a0ce0e64d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_071dedb2-2355-4311-a492-9cce23dd5117" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1d521c26-e158-4d2e-a01b-a6a0ce0e64d4" xlink:to="loc_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock_071dedb2-2355-4311-a492-9cce23dd5117" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_b2e91e87-53c6-4394-86db-850056a3c724" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1d521c26-e158-4d2e-a01b-a6a0ce0e64d4" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock_b2e91e87-53c6-4394-86db-850056a3c724" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_0b7480aa-573c-4784-865d-f7826d5310a0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1d521c26-e158-4d2e-a01b-a6a0ce0e64d4" xlink:to="loc_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock_0b7480aa-573c-4784-865d-f7826d5310a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_5c4e2984-66b1-47e7-9d06-39c7180059b1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueByArrangementDisclosureTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_1d521c26-e158-4d2e-a01b-a6a0ce0e64d4" xlink:to="loc_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock_5c4e2984-66b1-47e7-9d06-39c7180059b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f93a429c-2e37-4066-9402-cddb7b6285c4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_89830919-b0dc-46d8-8f5e-323a761f4214" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f93a429c-2e37-4066-9402-cddb7b6285c4" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock_89830919-b0dc-46d8-8f5e-323a761f4214" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_0e2806ea-db72-4005-b4d2-581de0676732" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f93a429c-2e37-4066-9402-cddb7b6285c4" xlink:to="loc_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_0e2806ea-db72-4005-b4d2-581de0676732" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock_e7c23285-b8a4-4f80-bdda-c69dc671f9e1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f93a429c-2e37-4066-9402-cddb7b6285c4" xlink:to="loc_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock_e7c23285-b8a4-4f80-bdda-c69dc671f9e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock_2410e02e-2f82-4ba5-8333-2e2f034b4b28" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f93a429c-2e37-4066-9402-cddb7b6285c4" xlink:to="loc_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock_2410e02e-2f82-4ba5-8333-2e2f034b4b28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_bed818cf-fb00-4201-8ce4-5d70e7945063" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_f93a429c-2e37-4066-9402-cddb7b6285c4" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_bed818cf-fb00-4201-8ce4-5d70e7945063" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WeightedAverageSharesTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_a20259f8-ecaf-4d1b-ba17-6a08111c2032" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_7c25fb00-6ff4-4910-9f64-c338630c81fd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_a20259f8-ecaf-4d1b-ba17-6a08111c2032" xlink:to="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_7c25fb00-6ff4-4910-9f64-c338630c81fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/BusinessCombinationsTables" xlink:type="simple" xlink:href="cgnx-20240331.xsd#BusinessCombinationsTables"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/BusinessCombinationsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_1a3410b5-ebd3-4eb3-8643-e962f5941911" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/FairValueMeasurementsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#FairValueMeasurementsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/FairValueMeasurementsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_a54aa9da-dd41-4f85-a581-2d9be4ae81d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_a54aa9da-dd41-4f85-a581-2d9be4ae81d4" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_0e693358-36fd-40f3-b343-99f798c29eef" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_4f67ac00-228c-449b-ac29-45ab62c4f603" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_4f67ac00-228c-449b-ac29-45ab62c4f603" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_7e4361ba-ad9d-4c0d-99a8-e898475c17b1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_7e4361ba-ad9d-4c0d-99a8-e898475c17b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_91bc2308-e3c9-4b14-8168-273e41b50d3d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b87b81b9-6c29-4d3f-859e-4bdd594b4cf4" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_91bc2308-e3c9-4b14-8168-273e41b50d3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByMeasurementFrequencyAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementFrequencyDomain_1bace8ec-c0e7-420f-91a3-5405fdc3ca4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementFrequencyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByMeasurementFrequencyAxis_a0fee4a4-f18f-48a5-a821-298640b9a60b" xlink:to="loc_us-gaap_FairValueMeasurementFrequencyDomain_1bace8ec-c0e7-420f-91a3-5405fdc3ca4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsRecurringMember_42fe3c89-6a89-4ed3-a8f4-ef7ab703d8b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsRecurringMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementFrequencyDomain_1bace8ec-c0e7-420f-91a3-5405fdc3ca4f" xlink:to="loc_us-gaap_FairValueMeasurementsRecurringMember_42fe3c89-6a89-4ed3-a8f4-ef7ab703d8b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancialInstrumentAxis_ff5eb732-c44e-4c88-aeae-0392b1b29a09" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_58c95917-3822-4103-8b72-492dbe31c8af" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_58c95917-3822-4103-8b72-492dbe31c8af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_cacad2f4-df6a-4b24-92ea-f6a5adb88dd7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_cacad2f4-df6a-4b24-92ea-f6a5adb88dd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_15b5db08-c8b5-453b-af87-0df18563d113" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_15b5db08-c8b5-453b-af87-0df18563d113" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_50390eab-e393-4df0-8005-1c40bc4baba9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_50390eab-e393-4df0-8005-1c40bc4baba9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MunicipalBondsMember_67b40605-9b67-4df9-8820-0e9a75f36592" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MunicipalBondsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_a5fde974-3550-403c-a3e7-60d84056d6bb" xlink:to="loc_us-gaap_MunicipalBondsMember_67b40605-9b67-4df9-8820-0e9a75f36592" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_6ae076a1-4adf-4208-9cef-b1a6944e75e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_b48c128c-6437-46ce-8c56-8c51fc35fb33" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_6ae076a1-4adf-4208-9cef-b1a6944e75e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember_617063f6-e478-46bd-b1b7-44dc803a6a7d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_6ae076a1-4adf-4208-9cef-b1a6944e75e2" xlink:to="loc_us-gaap_USTreasuryBillSecuritiesMember_617063f6-e478-46bd-b1b7-44dc803a6a7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_c8d0f521-9ca0-4834-a22b-2e91890a6df3" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsFairValueDisclosureAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:to="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsAtCarryingValue_f1328d20-0493-4377-89d3-d202e934e145" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_MoneyMarketFundsAtCarryingValue_f1328d20-0493-4377-89d3-d202e934e145" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_bb0f020d-4515-436f-9a14-1cf798514374" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_bb0f020d-4515-436f-9a14-1cf798514374" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CertificateOfDepositFairValueDisclosure_4f4be361-cce6-49ce-a84c-284aadf300b1" xlink:href="cgnx-20240331.xsd#cgnx_CertificateOfDepositFairValueDisclosure"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_cgnx_CertificateOfDepositFairValueDisclosure_4f4be361-cce6-49ce-a84c-284aadf300b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_90877c29-0ac9-45eb-87e4-527d84b01f15" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsFairValueDisclosure"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_CashAndCashEquivalentsFairValueDisclosure_90877c29-0ac9-45eb-87e4-527d84b01f15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_e6f6d559-d7b2-4f57-a676-20aebbd0e82e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyContractAssetFairValueDisclosure"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsFairValueDisclosureAbstract_2e5d040e-4f05-44ff-9315-9eba9b7500d5" xlink:to="loc_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure_e6f6d559-d7b2-4f57-a676-20aebbd0e82e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_16291c0d-372c-481c-9d8d-ef0d1aa026ed" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesFairValueDisclosureAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_cc403a61-efe9-4c7d-95d3-4e0fa9a38f4a" xlink:to="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_16291c0d-372c-481c-9d8d-ef0d1aa026ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_cc931c7f-54b9-4381-a3b6-226f676be7d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesFairValueDisclosureAbstract_16291c0d-372c-481c-9d8d-ef0d1aa026ed" xlink:to="loc_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure_cc931c7f-54b9-4381-a3b6-226f676be7d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_30e1f39c-24d5-4443-8c49-69a2c1c9439b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_30e1f39c-24d5-4443-8c49-69a2c1c9439b" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:to="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancialInstrumentAxis_402b65df-b255-446e-9c9d-b46a610dcaa5" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_a3e67425-9369-41e0-9739-6001eb4b6976" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_a3e67425-9369-41e0-9739-6001eb4b6976" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_73ddf5ca-d660-4934-8db6-94eaeda9bd70" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_73ddf5ca-d660-4934-8db6-94eaeda9bd70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_dfc34812-edd2-4380-9c68-fa7c4c8c799f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_dfc34812-edd2-4380-9c68-fa7c4c8c799f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtMember_74474f0f-5af1-4917-b046-c6aafd019124" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_269a93ba-25f7-4530-b69f-c6457134afcd" xlink:to="loc_us-gaap_SovereignDebtMember_74474f0f-5af1-4917-b046-c6aafd019124" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:to="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAxis_2ac1e14d-ae79-4473-b299-02490bd3e085" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashMember_96db5605-3b5e-41b0-805f-406fbc34b86e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_CashMember_96db5605-3b5e-41b0-805f-406fbc34b86e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CertificatesOfDepositMember_7efd5af0-0e10-4420-b86d-f68e9994ff97" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CertificatesOfDepositMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_CertificatesOfDepositMember_7efd5af0-0e10-4420-b86d-f68e9994ff97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasuryBillSecuritiesMember_e9575984-5556-404f-88a0-954c0c3f66c2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasuryBillSecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_USTreasuryBillSecuritiesMember_e9575984-5556-404f-88a0-954c0c3f66c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MoneyMarketFundsMember_f151e60f-eece-4428-b471-a9ca3d1fd198" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MoneyMarketFundsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_aa389860-6454-4ef2-822d-7cd2435a2258" xlink:to="loc_us-gaap_MoneyMarketFundsMember_f151e60f-eece-4428-b471-a9ca3d1fd198" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_b161ecec-afa4-45c4-b3e0-83ccc0d70aad" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_87e92c86-66d4-4b11-ba1a-56580bc7388b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_87e92c86-66d4-4b11-ba1a-56580bc7388b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_5c33e007-18cf-4941-8e45-14a2b82f4d53" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent_5c33e007-18cf-4941-8e45-14a2b82f4d53" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_5199fd72-87e6-40ac-878d-fafa1870abb1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent_5199fd72-87e6-40ac-878d-fafa1870abb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermInvestments_00f647d5-da16-48aa-97e1-dc3c4e2b5b54" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermInvestments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_us-gaap_LongTermInvestments_00f647d5-da16-48aa-97e1-dc3c4e2b5b54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2f81093a-d92c-4f07-869f-da47b89ef607" xlink:href="cgnx-20240331.xsd#cgnx_CashCashEquivalentsShortTermAndLongTermInvestments"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_e76bd043-2363-48d2-8d9b-f66e9adbee1e" xlink:to="loc_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments_2f81093a-d92c-4f07-869f-da47b89ef607" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_c5b10525-de43-40e3-a246-bdcd02c5c207" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_c5b10525-de43-40e3-a246-bdcd02c5c207" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_ee57ae46-277c-4715-802f-ac6ff6b015d6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_0d0acb3f-9582-41b1-83b9-07efe7aa0b6e" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_ee57ae46-277c-4715-802f-ac6ff6b015d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherCurrentAssetsMember_e9fc9ace-e7a9-4fc5-bbe6-32d17cf2c42a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherCurrentAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_ee57ae46-277c-4715-802f-ac6ff6b015d6" xlink:to="loc_us-gaap_OtherCurrentAssetsMember_e9fc9ace-e7a9-4fc5-bbe6-32d17cf2c42a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_c9500fe8-f16a-4916-a893-dd4a263485cd" xlink:to="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestReceivable_a6b5653d-98a2-4d33-a53f-1f5fedefb94a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_InterestReceivable_a6b5653d-98a2-4d33-a53f-1f5fedefb94a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss_02199037-bca3-4446-b95f-5d72bbda0411" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss_02199037-bca3-4446-b95f-5d72bbda0411" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease_9bb1db51-221d-4c59-8f6e-de89456a69de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease_9bb1db51-221d-4c59-8f6e-de89456a69de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_e6e17812-4849-48c3-83b0-54b5cbe4f54c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedGain"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_e6e17812-4849-48c3-83b0-54b5cbe4f54c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_323ecab8-f9e3-4fa4-9ced-0e89846000d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsLineItems_19f8b8a2-66e7-4204-9053-ca58ff2572af" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_323ecab8-f9e3-4fa4-9ced-0e89846000d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_cd68fdc8-1f59-4686-a435-9748868c23b1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_cd68fdc8-1f59-4686-a435-9748868c23b1" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancialInstrumentAxis_419ceca1-c236-4337-903e-6ecaff48a28b" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_b84d69e8-c8d9-44c9-aad0-5b2a0c20e4c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_b84d69e8-c8d9-44c9-aad0-5b2a0c20e4c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_60cb57e5-5dd0-4a42-b81a-8c5a053fa08b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_60cb57e5-5dd0-4a42-b81a-8c5a053fa08b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_ea179ff8-7f74-4dfc-9709-6a377b136f8b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_ea179ff8-7f74-4dfc-9709-6a377b136f8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_65768d8f-c1b1-49b5-ba16-e304ca156afb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_abb805b2-34b5-448b-99bd-2ee503739f96" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_65768d8f-c1b1-49b5-ba16-e304ca156afb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BalanceSheetLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationAxis_0bac81c0-ce74-454d-9365-de84e378e6a1" xlink:to="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CurrentAssetsMember_7c6924bc-6b51-4a46-8c92-f2f844ff3b22" xlink:href="cgnx-20240331.xsd#cgnx_CurrentAssetsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:to="loc_cgnx_CurrentAssetsMember_7c6924bc-6b51-4a46-8c92-f2f844ff3b22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_NonCurrentAssetsMember_fdd00426-c522-4333-aa62-ca83cfb21aa3" xlink:href="cgnx-20240331.xsd#cgnx_NonCurrentAssetsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BalanceSheetLocationDomain_61919912-49ae-4124-b8f0-f7dcce2609dd" xlink:to="loc_cgnx_NonCurrentAssetsMember_fdd00426-c522-4333-aa62-ca83cfb21aa3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_c166e0dd-c3ee-45c5-810e-17644e35e7db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_11dff30d-2209-4afe-9800-333fe60f9952" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_c166e0dd-c3ee-45c5-810e-17644e35e7db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermInvestmentsMember_77023459-3298-4db6-90ea-5718dcbbc51b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShortTermInvestmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_c166e0dd-c3ee-45c5-810e-17644e35e7db" xlink:to="loc_us-gaap_ShortTermInvestmentsMember_77023459-3298-4db6-90ea-5718dcbbc51b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_d13a93be-41fa-4b58-8afa-6ceb4cf48a33" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_69c85c8a-4595-454b-8351-7e02398cec59" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis_69c85c8a-4595-454b-8351-7e02398cec59" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_f3469348-9b38-4bf3-b9c1-9ca740db845d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax_f3469348-9b38-4bf3-b9c1-9ca740db845d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_cfafe310-89a2-43e8-a639-f664db90125f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax_cfafe310-89a2-43e8-a639-f664db90125f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_5c261526-7473-48f6-8530-0e2376a5f59d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_25f0983b-49cd-478b-a3ee-758c94e9dd56" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_5c261526-7473-48f6-8530-0e2376a5f59d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_92ee9a77-66b4-4bf8-b20a-fe07b2f65340" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_92ee9a77-66b4-4bf8-b20a-fe07b2f65340" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:to="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancialInstrumentAxis_1c8aed67-6bb2-4785-ba25-59b00168854a" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_783d66da-2b94-4e16-ad1a-585db5ed153b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_783d66da-2b94-4e16-ad1a-585db5ed153b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_c4dfbe91-4f33-4839-a977-56a3b3c91264" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_c4dfbe91-4f33-4839-a977-56a3b3c91264" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_a7b5c906-87c7-4c44-afc6-849b0841a0ca" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_a7b5c906-87c7-4c44-afc6-849b0841a0ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_e14a820f-ec3d-4b0a-8953-2e0879708da5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_2f0e2833-6639-4365-8072-17e1c3e00a30" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_e14a820f-ec3d-4b0a-8953-2e0879708da5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_e63a4fd6-a946-435d-ac80-900cee9b44f3" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_eeb86e2b-557a-4f48-84ae-bba9b2eb3d6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months_eeb86e2b-557a-4f48-84ae-bba9b2eb3d6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_6dc183a2-9571-472b-a432-8452bc07523a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss_6dc183a2-9571-472b-a432-8452bc07523a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_086dc291-0429-4c31-8aac-9eff2b14370b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger_086dc291-0429-4c31-8aac-9eff2b14370b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_1ecf0140-a36a-4703-a038-0640ae3292b6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss_1ecf0140-a36a-4703-a038-0640ae3292b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_7a4907a9-dc13-473a-baad-235a9a3dd146" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition_7a4907a9-dc13-473a-baad-235a9a3dd146" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_4c3444f2-dd18-4dd9-b57e-0c673ee4215b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_708203f5-a90e-43fb-8841-733285644f4f" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss_4c3444f2-dd18-4dd9-b57e-0c673ee4215b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_eec41c06-621e-4d33-ac5d-464b363d33ff" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_5e4e18d7-0721-44c3-b445-f93f44e70018" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedGain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_eec41c06-621e-4d33-ac5d-464b363d33ff" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain_5e4e18d7-0721-44c3-b445-f93f44e70018" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_a840aa6e-249a-46aa-89c8-7236d11dfb83" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_eec41c06-621e-4d33-ac5d-464b363d33ff" xlink:to="loc_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss_a840aa6e-249a-46aa-89c8-7236d11dfb83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RealizedInvestmentGainsLosses_4bbae564-41d2-4159-a899-470e2d845fe3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RealizedInvestmentGainsLosses"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_eec41c06-621e-4d33-ac5d-464b363d33ff" xlink:to="loc_us-gaap_RealizedInvestmentGainsLosses_4bbae564-41d2-4159-a899-470e2d845fe3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAbstract_5070e0c8-f391-4882-a1a1-87b27a83c210" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashAndCashEquivalentsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashAndCashEquivalentsAbstract_5070e0c8-f391-4882-a1a1-87b27a83c210" xlink:to="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinancialInstrumentAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:to="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FinancialInstrumentAxis_3cc1102a-b109-439a-ab38-b03853f89d48" xlink:to="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateBondSecuritiesMember_66dfacfa-f635-4355-90e5-9bf3ecad7a13" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateBondSecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_CorporateBondSecuritiesMember_66dfacfa-f635-4355-90e5-9bf3ecad7a13" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_USTreasurySecuritiesMember_0f374c7b-577d-4f38-98d8-3341082ac212" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_USTreasurySecuritiesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_USTreasurySecuritiesMember_0f374c7b-577d-4f38-98d8-3341082ac212" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetBackedSecuritiesMember_6d0b1e81-acdd-4ae8-8684-d3655b3d26cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetBackedSecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_AssetBackedSecuritiesMember_6d0b1e81-acdd-4ae8-8684-d3655b3d26cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SovereignDebtSecuritiesMember_3e0f7486-321a-4f95-9dd2-66aed8f3e30c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SovereignDebtSecuritiesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_SovereignDebtSecuritiesMember_3e0f7486-321a-4f95-9dd2-66aed8f3e30c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MunicipalBondsMember_c924a2a8-25c6-4e24-9fd1-80a31d95f362" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MunicipalBondsMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain_f50db752-3b6f-4cdb-9e94-aa6b34d22ebc" xlink:to="loc_us-gaap_MunicipalBondsMember_c924a2a8-25c6-4e24-9fd1-80a31d95f362" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfCashAndCashEquivalentsTable_cf267851-4d08-4417-a54d-329e66ebe70d" xlink:to="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_77625062-821a-47ee-970e-9ddf2d5249c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue_77625062-821a-47ee-970e-9ddf2d5249c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_4bdf4678-a884-4dc5-85e5-adf7aef0c41e" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue_4bdf4678-a884-4dc5-85e5-adf7aef0c41e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_ea8abeec-15a2-4e78-a677-8e014190d4e5" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue_ea8abeec-15a2-4e78-a677-8e014190d4e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_16f0be40-4430-4a11-897c-c6d132669e53" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue_16f0be40-4430-4a11-897c-c6d132669e53" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_a3d67fb1-404b-4175-9ebb-fa60cee404f6" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue_a3d67fb1-404b-4175-9ebb-fa60cee404f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_57f37936-95f2-4f45-aadd-729efa9a2455" xlink:href="cgnx-20240331.xsd#cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears_57f37936-95f2-4f45-aadd-729efa9a2455" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_6e21ed4a-1b56-43b5-9f85-7b360bf4d542" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AvailableForSaleSecuritiesDebtSecurities"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems_0bc8d3ca-bde6-49ea-a49e-5c93e23476db" xlink:to="loc_us-gaap_AvailableForSaleSecuritiesDebtSecurities_6e21ed4a-1b56-43b5-9f85-7b360bf4d542" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/InventoriesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#InventoriesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/InventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_07fabe8f-5435-4711-a84e-05524e138eaa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_b787d8f6-a8f9-47c7-b3ad-dfe931f13c2d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07fabe8f-5435-4711-a84e-05524e138eaa" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_b787d8f6-a8f9-47c7-b3ad-dfe931f13c2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_f4ec7200-dd69-4336-9c3c-e77e22161ad3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07fabe8f-5435-4711-a84e-05524e138eaa" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_f4ec7200-dd69-4336-9c3c-e77e22161ad3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1d533377-cadb-48ad-a8ee-a6825b748693" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07fabe8f-5435-4711-a84e-05524e138eaa" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_1d533377-cadb-48ad-a8ee-a6825b748693" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_1d65b618-84e8-45b2-afc1-b9951a55071c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_07fabe8f-5435-4711-a84e-05524e138eaa" xlink:to="loc_us-gaap_InventoryNet_1d65b618-84e8-45b2-afc1-b9951a55071c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/LeasesNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#LeasesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/LeasesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_a0a60fa1-1116-4e3a-9424-2d1b972f8947" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeaseDescriptionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_a0a60fa1-1116-4e3a-9424-2d1b972f8947" xlink:to="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:to="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_dd4430b9-415e-4fcf-990a-39b3fe5be55a" xlink:to="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_SG_80c5d5c5-9431-4b82-ba2e-612579b3352a" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_SG"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:to="loc_country_SG_80c5d5c5-9431-4b82-ba2e-612579b3352a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SouthboroughMassachusettsMember_feea5ef5-ef76-4991-9039-fb8cfa581e0c" xlink:href="cgnx-20240331.xsd#cgnx_SouthboroughMassachusettsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_5ab9a971-bf5c-4138-bc4d-0e809ba50207" xlink:to="loc_cgnx_SouthboroughMassachusettsMember_feea5ef5-ef76-4991-9039-fb8cfa581e0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentByTypeAxis_f07c1145-6d10-42d4-9a39-7333d5041ac8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_A88000SquareFootPremisesMember_34074dab-0d1d-4bb5-94bd-1151bb923c5a" xlink:href="cgnx-20240331.xsd#cgnx_A88000SquareFootPremisesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:to="loc_cgnx_A88000SquareFootPremisesMember_34074dab-0d1d-4bb5-94bd-1151bb923c5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_A27000SquareFootPremisesMember_305717a3-095f-4748-a9a2-83e0afbbeda8" xlink:href="cgnx-20240331.xsd#cgnx_A27000SquareFootPremisesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentTypeDomain_559bfd7f-f502-4892-9bf3-006a6064421f" xlink:to="loc_cgnx_A27000SquareFootPremisesMember_305717a3-095f-4748-a9a2-83e0afbbeda8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeLeaseDescriptionLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionTable_686b0c37-468c-4401-b0ca-b9afa6992d25" xlink:to="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_a6ea39b0-54be-4767-bf4d-e110393a0a04" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseCost_a6ea39b0-54be-4767-bf4d-e110393a0a04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeasePayments_07620368-ebf5-49fa-a9ff-f9eeb1e13000" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeasePayments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeasePayments_07620368-ebf5-49fa-a9ff-f9eeb1e13000" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_316b60bf-856d-4ebf-9255-2a9f44f3f601" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LeaseCost_316b60bf-856d-4ebf-9255-2a9f44f3f601" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_4168b31d-d26f-42b8-ab4c-6776643ba10d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseLiability_4168b31d-d26f-42b8-ab4c-6776643ba10d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetRentableArea_7532bf3f-e978-43ec-8e21-a7f7a5273370" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetRentableArea"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_NetRentableArea_7532bf3f-e978-43ec-8e21-a7f7a5273370" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LesseeOperatingLeaseComponents_1d22a805-7981-4229-aae5-541fc7bf1581" xlink:href="cgnx-20240331.xsd#cgnx_LesseeOperatingLeaseComponents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_cgnx_LesseeOperatingLeaseComponents_1d22a805-7981-4229-aae5-541fc7bf1581" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseTermOfContract_6c0fb385-0d9f-43d4-8465-24620a198ac3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseTermOfContract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeOperatingLeaseTermOfContract_6c0fb385-0d9f-43d4-8465-24620a198ac3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_ffd2685b-67fe-47a5-8e26-45732bf6d128" xlink:href="cgnx-20240331.xsd#cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract_ffd2685b-67fe-47a5-8e26-45732bf6d128" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_a78c2450-d920-4afa-ab18-3a3214fbf220" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_a78c2450-d920-4afa-ab18-3a3214fbf220" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1d0ab8ee-6515-41d3-9727-db5cc3db375f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_1d0ab8ee-6515-41d3-9727-db5cc3db375f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_c7ec942f-7e52-4aa8-9ed0-f56ede471c99" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_c7ec942f-7e52-4aa8-9ed0-f56ede471c99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_a0720425-1e6e-45f8-b8d1-1506f96d8872" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_a0720425-1e6e-45f8-b8d1-1506f96d8872" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_d3cc212d-c08f-40a4-9d31-2d9d20c14e8d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LesseeLeaseDescriptionLineItems_395809c3-b34e-4296-b2c4-ddc15470e799" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_d3cc212d-c08f-40a4-9d31-2d9d20c14e8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_4eef9cce-4865-4c6e-96ec-66cd27d9ed3d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_4eef9cce-4865-4c6e-96ec-66cd27d9ed3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_09975357-30bc-4176-8538-ec3d20ca4064" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_09975357-30bc-4176-8538-ec3d20ca4064" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_6a872d2c-134f-4d14-a8d9-fba7c9d3304b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_6a872d2c-134f-4d14-a8d9-fba7c9d3304b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_f5b1b035-a328-4066-b168-31310f566ced" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_f5b1b035-a328-4066-b168-31310f566ced" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_95e995e3-c883-440e-98e4-fcf3705452c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_95e995e3-c883-440e-98e4-fcf3705452c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8c7e55a8-f021-45e6-9238-ea3b1f09dcc7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive_8c7e55a8-f021-45e6-9238-ea3b1f09dcc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_ff0396a6-d24d-41c1-b394-1f3815ce4e52" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_ff0396a6-d24d-41c1-b394-1f3815ce4e52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_cc63b248-6b5f-4a3d-92af-8743333d8398" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c63d4c2f-058f-4bb8-9b0b-4f1f26a55d99" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_cc63b248-6b5f-4a3d-92af-8743333d8398" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/GoodwillDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#GoodwillDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/GoodwillDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_774c1641-9019-4e59-b7f8-92915464e4a0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillRollForward_8e3ee9ac-c8af-4b78-96ee-861a02306332" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_774c1641-9019-4e59-b7f8-92915464e4a0" xlink:to="loc_us-gaap_GoodwillRollForward_8e3ee9ac-c8af-4b78-96ee-861a02306332" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_29a935af-bc70-41cf-9541-c9ab15706f4a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8e3ee9ac-c8af-4b78-96ee-861a02306332" xlink:to="loc_us-gaap_Goodwill_29a935af-bc70-41cf-9541-c9ab15706f4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_18c14362-be6d-4118-8628-65e0891b042c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8e3ee9ac-c8af-4b78-96ee-861a02306332" xlink:to="loc_us-gaap_GoodwillForeignCurrencyTranslationGainLoss_18c14362-be6d-4118-8628-65e0891b042c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Goodwill_076560a7-e8a6-4eb4-a703-e0ea696ec45c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Goodwill"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillRollForward_8e3ee9ac-c8af-4b78-96ee-861a02306332" xlink:to="loc_us-gaap_Goodwill_076560a7-e8a6-4eb4-a703-e0ea696ec45c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IntangibleAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IntangibleAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4fe96f65-a371-42fb-b67b-9b85252f1512" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_4fe96f65-a371-42fb-b67b-9b85252f1512" xlink:to="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_59251b53-25a9-4e03-a503-311dd1540d16" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_c148b2ff-884b-4741-8491-edbb0da52660" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_59251b53-25a9-4e03-a503-311dd1540d16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:href="cgnx-20240331.xsd#cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_59251b53-25a9-4e03-a503-311dd1540d16" xlink:to="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CustomerContractsAndRelationshipsMember_f30f3866-fd27-46a1-8f55-21407cc6da80" xlink:href="cgnx-20240331.xsd#cgnx_CustomerContractsAndRelationshipsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_cgnx_CustomerContractsAndRelationshipsMember_f30f3866-fd27-46a1-8f55-21407cc6da80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DevelopedTechnologyRightsMember_ef91d0dc-a8b0-4cf0-992f-6d657095b7a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DevelopedTechnologyRightsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_us-gaap_DevelopedTechnologyRightsMember_ef91d0dc-a8b0-4cf0-992f-6d657095b7a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TrademarksMember_40c489be-fb0b-48c1-9997-40d7149d43c0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TrademarksMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_us-gaap_TrademarksMember_40c489be-fb0b-48c1-9997-40d7149d43c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIntangibleAssetsMember_8bc7d2c7-2fc4-4c30-a008-96835ad98375" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherIntangibleAssetsMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember_fab053e8-bed3-4975-b84d-3fa38eee3dcf" xlink:to="loc_us-gaap_OtherIntangibleAssetsMember_8bc7d2c7-2fc4-4c30-a008-96835ad98375" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable_65650433-eea8-4008-8991-ac308fc2da4e" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsGross_ad996443-7144-48d2-bd1c-b536112795a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsGross_ad996443-7144-48d2-bd1c-b536112795a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_b5580c21-bd51-4e08-b567-b662c5ffd2e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_b5580c21-bd51-4e08-b567-b662c5ffd2e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3f41b29-8db4-467f-9943-a244ffeb8c46" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_f3f41b29-8db4-467f-9943-a244ffeb8c46" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsLineItems_792a3a86-65bc-4c22-9573-ed0c35229789" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_1ed2b82f-069c-4143-9c23-91a183b48e7f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear_1ed2b82f-069c-4143-9c23-91a183b48e7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_bafd2c38-c2fb-432a-95ea-4931771a7d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths_bafd2c38-c2fb-432a-95ea-4931771a7d4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_6fab4340-1ab0-46c7-be21-99f33518af6d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo_6fab4340-1ab0-46c7-be21-99f33518af6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_420d48d7-abc4-4f9f-9ce4-12f0733f2a49" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree_420d48d7-abc4-4f9f-9ce4-12f0733f2a49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_873be168-a1c2-4875-8216-2c5e4dab0e58" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour_873be168-a1c2-4875-8216-2c5e4dab0e58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_6097855e-9524-4149-92a0-4246c04c6845" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive_6097855e-9524-4149-92a0-4246c04c6845" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6adb4513-807c-487f-ac45-7c6e44b8caeb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive_6adb4513-807c-487f-ac45-7c6e44b8caeb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsNet_46859e56-f943-487c-a39b-6ad641164bc9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract_33802bf8-259c-4f90-92be-3b81a021714a" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsNet_46859e56-f943-487c-a39b-6ad641164bc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WarrantyObligationsDetail" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WarrantyObligationsDetail"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WarrantyObligationsDetail" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_230a32e3-da59-4c91-983e-b5ba0df4ba27" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MovementInStandardProductWarrantyAccrualRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_230a32e3-da59-4c91-983e-b5ba0df4ba27" xlink:to="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_a01d123b-514a-4d5e-af70-aa3217c16f70" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:to="loc_us-gaap_ProductWarrantyAccrual_a01d123b-514a-4d5e-af70-aa3217c16f70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_e8f06fa6-8ac3-431c-8c01-3c88cbd8924c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:to="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_e8f06fa6-8ac3-431c-8c01-3c88cbd8924c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualPayments_537b39e2-8b16-4493-9a42-860061c624e0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrualPayments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:to="loc_us-gaap_ProductWarrantyAccrualPayments_537b39e2-8b16-4493-9a42-860061c624e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss_640f567a-19ad-46a6-9e12-9eb25ec7b3ca" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:to="loc_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss_640f567a-19ad-46a6-9e12-9eb25ec7b3ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_168fe0d3-4b6a-4674-a5bd-0845900d507a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardProductWarrantyAccrualRollForward_433531fb-a725-4a67-91c8-b2f021766f7e" xlink:to="loc_us-gaap_ProductWarrantyAccrual_168fe0d3-4b6a-4674-a5bd-0845900d507a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3afa2eb2-498a-41d4-bc32-a74f160d0183" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_230a32e3-da59-4c91-983e-b5ba0df4ba27" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_3afa2eb2-498a-41d4-bc32-a74f160d0183" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/CommitmentandContingenciesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#CommitmentandContingenciesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/CommitmentandContingenciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_793b3be4-b850-4881-af95-08744fd54bec" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted_53fbaac6-e213-43f6-a9e4-4f245725d047" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_793b3be4-b850-4881-af95-08744fd54bec" xlink:to="loc_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted_53fbaac6-e213-43f6-a9e4-4f245725d047" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5c0c7dda-f6b0-421e-bb9f-e90bcadccc60" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_5c0c7dda-f6b0-421e-bb9f-e90bcadccc60" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:to="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_9de51884-caad-4ec7-8537-b1bd263e9799" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_84b87fb7-73af-4263-a0c9-6e46b7ab382b" xlink:to="loc_us-gaap_HedgingDesignationDomain_9de51884-caad-4ec7-8537-b1bd263e9799" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_d54fd6c3-3191-474c-8da3-5c5df770298f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_9de51884-caad-4ec7-8537-b1bd263e9799" xlink:to="loc_us-gaap_NondesignatedMember_d54fd6c3-3191-474c-8da3-5c5df770298f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentRiskAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:to="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeContractTypeDomain_b05c8188-370b-4a4a-945f-b8fcb4e9958d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeContractTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentRiskAxis_a1700dba-868b-4526-ba61-817ca1c2b435" xlink:to="loc_us-gaap_DerivativeContractTypeDomain_b05c8188-370b-4a4a-945f-b8fcb4e9958d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignExchangeForwardMember_6afe61ab-cbab-4804-a180-af6626df54de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignExchangeForwardMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeContractTypeDomain_b05c8188-370b-4a4a-945f-b8fcb4e9958d" xlink:to="loc_us-gaap_ForeignExchangeForwardMember_6afe61ab-cbab-4804-a180-af6626df54de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable_3ee09add-9bd1-4445-b98e-c889a390695f" xlink:to="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_cfcaa10b-7997-4f2e-a17b-08768e0734f8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1_cfcaa10b-7997-4f2e-a17b-08768e0734f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeNotionalAmount_5d6aa0b7-dd5b-4050-b403-ea60b863794d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeNotionalAmount"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_DerivativeNotionalAmount_5d6aa0b7-dd5b-4050-b403-ea60b863794d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_42402913-eeef-4289-808c-08018c895ea7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems_dcfc567b-cf41-4591-a73f-8265ee6269fc" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_42402913-eeef-4289-808c-08018c895ea7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsOutstandingForwardContractsTableDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_beb73e0f-de7e-43bd-a500-4d723da970d9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_beb73e0f-de7e-43bd-a500-4d723da970d9" xlink:to="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:to="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_df338015-f4d1-467b-be2c-050a4320daac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_a9aa9f6f-f6ba-4626-a2b1-55b280ac8d4f" xlink:to="loc_us-gaap_HedgingDesignationDomain_df338015-f4d1-467b-be2c-050a4320daac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_615219fd-7b4a-4a37-a61d-39dda38c7797" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_df338015-f4d1-467b-be2c-050a4320daac" xlink:to="loc_us-gaap_NondesignatedMember_615219fd-7b4a-4a37-a61d-39dda38c7797" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_CurrencyAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:to="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_AllCurrenciesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_CurrencyAxis_65a1f9b2-677d-4196-b8a4-6d2302f4da9e" xlink:to="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_JPY_88769e68-65a9-4c8a-b15b-b038d339b31b" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_JPY"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_JPY_88769e68-65a9-4c8a-b15b-b038d339b31b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_EUR_930b6b9e-4587-43af-ae0d-13b08bfcd731" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_EUR"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_EUR_930b6b9e-4587-43af-ae0d-13b08bfcd731" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_SGD_93413cd3-9282-4c69-8bd8-e7ae924b3633" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_SGD"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_SGD_93413cd3-9282-4c69-8bd8-e7ae924b3633" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CNY_b336ac06-d73d-4836-8e02-149d5ad21331" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CNY"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_CNY_b336ac06-d73d-4836-8e02-149d5ad21331" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_MXN_45dee9b2-618f-47eb-a1bb-a229af7b056c" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_MXN"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_MXN_45dee9b2-618f-47eb-a1bb-a229af7b056c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_HUF_2905ad46-fafa-4c33-978a-64100e5d2720" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_HUF"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_HUF_2905ad46-fafa-4c33-978a-64100e5d2720" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_GBP_afac80f9-517c-4687-8598-32c2a6b8bd86" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_GBP"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_GBP_afac80f9-517c-4687-8598-32c2a6b8bd86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CAD_c9e8f989-0bca-48a5-8323-c57a896792af" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CAD"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_CAD_c9e8f989-0bca-48a5-8323-c57a896792af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_currency_CHF_50a66560-ecb4-41df-8054-88d94ca76e57" xlink:href="https://xbrl.sec.gov/currency/2023/currency-2023.xsd#currency_CHF"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_currency_AllCurrenciesDomain_aaeb11ed-c711-467a-af7a-62c3d9aec566" xlink:to="loc_currency_CHF_50a66560-ecb4-41df-8054-88d94ca76e57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLineItems_8437e0bb-28c4-4b5c-97cc-978c85265688" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeTable_b59578a1-680a-4a0b-907f-afd1ea0bea17" xlink:to="loc_us-gaap_DerivativeLineItems_8437e0bb-28c4-4b5c-97cc-978c85265688" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetNotionalAmount_2c439116-c45c-4027-80dc-693a8d7b3fc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssetNotionalAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeLineItems_8437e0bb-28c4-4b5c-97cc-978c85265688" xlink:to="loc_us-gaap_DerivativeAssetNotionalAmount_2c439116-c45c-4027-80dc-693a8d7b3fc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_fb6a764e-9db0-46d0-ae04-01684a47cec5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_fb6a764e-9db0-46d0-ae04-01684a47cec5" xlink:to="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:to="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_9f762f18-896a-419c-bee6-0385439aa32c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_1e75205f-1abe-4a55-863a-9d0a542cc735" xlink:to="loc_us-gaap_HedgingDesignationDomain_9f762f18-896a-419c-bee6-0385439aa32c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_4dafbad5-9dde-4756-b036-8279f18dc04e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_9f762f18-896a-419c-bee6-0385439aa32c" xlink:to="loc_us-gaap_NondesignatedMember_4dafbad5-9dde-4756-b036-8279f18dc04e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativesFairValueLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable_6616a141-572b-44b0-978b-c64b59e3c9fc" xlink:to="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_4c14a946-499a-4f39-8030-c03f8dde20a3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssets"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:to="loc_us-gaap_DerivativeAssets_4c14a946-499a-4f39-8030-c03f8dde20a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_f4c18230-bc98-4aa2-b908-f822edffd5b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativesFairValueLineItems_1f3a92cf-f973-4a7c-ac59-b5ba64eb31b9" xlink:to="loc_us-gaap_DerivativeLiabilities_f4c18230-bc98-4aa2-b908-f822edffd5b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsOffsettingAssetsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_67f0f284-7d9f-415d-a49c-cdf373058476" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFairValueOfDerivativeAsset"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeAsset_67f0f284-7d9f-415d-a49c-cdf373058476" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_e646986d-c515-471d-860f-1d3a36da5e35" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:to="loc_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset_e646986d-c515-471d-860f-1d3a36da5e35" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeAssets_a3f4a81f-61eb-444b-89ea-aa426db3ec4c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:to="loc_us-gaap_DerivativeAssets_a3f4a81f-61eb-444b-89ea-aa426db3ec4c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_a6a3fbaa-4218-4854-aaf3-23220a1998cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeFairValueOfDerivativeLiability"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:to="loc_us-gaap_DerivativeFairValueOfDerivativeLiability_a6a3fbaa-4218-4854-aaf3-23220a1998cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_a6531235-0fcd-4de5-af01-8620d6e14b93" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:to="loc_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset_a6531235-0fcd-4de5-af01-8620d6e14b93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeLiabilities_dc95e6b9-af0d-4406-a98f-1de217961644" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_9723165a-98f3-4ec4-900d-dd3149f9871a" xlink:to="loc_us-gaap_DerivativeLiabilities_dc95e6b9-af0d-4406-a98f-1de217961644" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#DerivativeInstrumentsDerivativeInstrumentsGainLossDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_e618222a-a3c6-4e53-8ec1-fdaef8ce0e2b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract_e618222a-a3c6-4e53-8ec1-fdaef8ce0e2b" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:to="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_HedgingDesignationDomain_a9493383-91f3-46a2-be72-81c23d67152c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_HedgingDesignationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationAxis_f092c6c4-6a1c-4a32-aafb-38b2c09b6bc4" xlink:to="loc_us-gaap_HedgingDesignationDomain_a9493383-91f3-46a2-be72-81c23d67152c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NondesignatedMember_097cea4b-c45e-4f7a-ad91-05b6702fd5ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NondesignatedMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_HedgingDesignationDomain_a9493383-91f3-46a2-be72-81c23d67152c" xlink:to="loc_us-gaap_NondesignatedMember_097cea4b-c45e-4f7a-ad91-05b6702fd5ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7df794b2-ac94-436e-b992-1a08b5451aa5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeInstrumentsGainLossLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable_41e393e8-57d4-4782-81f1-4272b22574a9" xlink:to="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7df794b2-ac94-436e-b992-1a08b5451aa5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DerivativeGainLossOnDerivativeNet_5ef2f1f0-2d2b-4146-9935-7f06208044cc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DerivativeGainLossOnDerivativeNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DerivativeInstrumentsGainLossLineItems_7df794b2-ac94-436e-b992-1a08b5451aa5" xlink:to="loc_us-gaap_DerivativeGainLossOnDerivativeNet_5ef2f1f0-2d2b-4146-9935-7f06208044cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionRevenueDisaggregatedbyGeographyDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_ab878a57-76a7-4d81-8e60-87ef5e21db2d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_ab878a57-76a7-4d81-8e60-87ef5e21db2d" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:to="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_12d48092-4505-46bc-8a89-9da31753f85f" xlink:to="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_AmericasMember_55a7d3d9-8ab0-4e8e-b2e1-792718934aae" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_AmericasMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_srt_AmericasMember_55a7d3d9-8ab0-4e8e-b2e1-792718934aae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EuropeMember_cfb17a61-8c84-4dd2-8e0f-f97e7de4f6ff" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EuropeMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_srt_EuropeMember_cfb17a61-8c84-4dd2-8e0f-f97e7de4f6ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_CN_10afe535-fbae-4e10-956f-ac369f798c83" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_CN"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_country_CN_10afe535-fbae-4e10-956f-ac369f798c83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AsiaExcludingChinaMember_c3024941-23ee-42d3-b3eb-907d1e300f41" xlink:href="cgnx-20240331.xsd#cgnx_AsiaExcludingChinaMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_cgnx_AsiaExcludingChinaMember_c3024941-23ee-42d3-b3eb-907d1e300f41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP_ad046739-90f5-482e-8ced-2680abb69900" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_JP"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_6eb77014-ed0f-4b3a-bb52-328ee8321dc9" xlink:to="loc_country_JP_ad046739-90f5-482e-8ced-2680abb69900" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_6eac4ff8-352f-41fa-86a7-ee0373eb7ead" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_d4b94dff-4a1d-4582-8e73-3a8a4a5a6ac7" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_6eac4ff8-352f-41fa-86a7-ee0373eb7ead" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_01e8ae46-68e7-4223-8b97-1e4930313723" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_6eac4ff8-352f-41fa-86a7-ee0373eb7ead" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_01e8ae46-68e7-4223-8b97-1e4930313723" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_63e83e26-9413-477a-83c0-4bf207756bc8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_63e83e26-9413-477a-83c0-4bf207756bc8" xlink:to="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:to="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_31d3fb3e-f29f-48b1-8212-617399bebc82" xlink:to="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StandardProductsandServicesMember_a1d7f079-32b7-42d1-a29a-596ad47aaf19" xlink:href="cgnx-20240331.xsd#cgnx_StandardProductsandServicesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:to="loc_cgnx_StandardProductsandServicesMember_a1d7f079-32b7-42d1-a29a-596ad47aaf19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_f5036b45-6044-49a8-895e-0904920dcfdb" xlink:href="cgnx-20240331.xsd#cgnx_ApplicationSpecificCustomerSolutionsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_612a3467-66de-4221-8989-31c4fa3e8e04" xlink:to="loc_cgnx_ApplicationSpecificCustomerSolutionsMember_f5036b45-6044-49a8-895e-0904920dcfdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_500076a7-c62b-4ded-98ba-38d7e7a50a32" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable_c609d39d-640e-4040-9b30-7e9cefc8e15e" xlink:to="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_500076a7-c62b-4ded-98ba-38d7e7a50a32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_02781b5c-13e5-4848-a79e-88c5c9926dfe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems_500076a7-c62b-4ded-98ba-38d7e7a50a32" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_02781b5c-13e5-4848-a79e-88c5c9926dfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_70eac66f-d1c9-4c43-bd6f-e7adcc580e74" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalizedContractCostGross_a142601b-b9c3-4928-a798-229bc32db316" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalizedContractCostGross"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_70eac66f-d1c9-4c43-bd6f-e7adcc580e74" xlink:to="loc_us-gaap_CapitalizedContractCostGross_a142601b-b9c3-4928-a798-229bc32db316" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionScheduleofAllowanceforCreditLossDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_84fe8bb1-00a8-4bc5-bc6c-e0bf222b0df5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_84fe8bb1-00a8-4bc5-bc6c-e0bf222b0df5" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_0eda79d4-17ae-4827-8e61-5111b73a9ef3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_0eda79d4-17ae-4827-8e61-5111b73a9ef3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_e0dfa577-7909-44d7-a30d-faa1dd74e3d6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_e0dfa577-7909-44d7-a30d-faa1dd74e3d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery_082a2930-1911-4554-96a2-f090916f7169" xlink:href="cgnx-20240331.xsd#cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:to="loc_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery_082a2930-1911-4554-96a2-f090916f7169" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease_53aa9740-b1fe-446e-90d2-57d7610bc098" xlink:href="cgnx-20240331.xsd#cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:to="loc_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease_53aa9740-b1fe-446e-90d2-57d7610bc098" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_96256a53-6546-40e4-bb0b-981b7f8e6bba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward_bc362fe5-0cc5-4665-b745-d19f566e7b11" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivable_96256a53-6546-40e4-bb0b-981b7f8e6bba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#RevenueRecognitionDeferredRevenueActivityDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_d3f3b82f-d338-4c5b-8a90-c9bdebb52b71" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MovementInDeferredRevenueRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_d3f3b82f-d338-4c5b-8a90-c9bdebb52b71" xlink:to="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenue_5bdc5762-797c-45ec-9dcc-de4005cd5b9e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:to="loc_us-gaap_DeferredRevenue_5bdc5762-797c-45ec-9dcc-de4005cd5b9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueAdditions_a0ddf2e4-c9c6-4f21-8bf8-347c1d388406" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueAdditions"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:to="loc_us-gaap_DeferredRevenueAdditions_a0ddf2e4-c9c6-4f21-8bf8-347c1d388406" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueRevenueRecognized1_258822b6-ce5c-46a4-9a75-30ac702162fb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueRevenueRecognized1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:to="loc_us-gaap_DeferredRevenueRevenueRecognized1_258822b6-ce5c-46a4-9a75-30ac702162fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenueRefundPayments1_bdfc5a4c-3b47-4489-b8f5-585f9328c3b7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenueRefundPayments1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:to="loc_us-gaap_DeferredRevenueRefundPayments1_bdfc5a4c-3b47-4489-b8f5-585f9328c3b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_3ba525d0-a625-4a3c-ad5b-36f634c512e8" xlink:href="cgnx-20240331.xsd#cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:to="loc_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment_3ba525d0-a625-4a3c-ad5b-36f634c512e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredRevenue_b8dc60d9-6576-44c0-a465-0c49595001c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredRevenue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInDeferredRevenueRollForward_1f0ed925-9cf0-4d23-8fbb-83a28a9ed833" xlink:to="loc_us-gaap_DeferredRevenue_b8dc60d9-6576-44c0-a465-0c49595001c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1d25a31b-9621-4c25-af8f-b825fe846878" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1d25a31b-9621-4c25-af8f-b825fe846878" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_f76558d3-1f94-4dba-9942-df497b0dae21" xlink:to="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_07683144-7f41-45e9-9d3a-369e2fad63ed" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:to="loc_srt_MinimumMember_07683144-7f41-45e9-9d3a-369e2fad63ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6a7106a0-0b5b-475e-99ec-2d116ba41a8d" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_6a28fdbc-fa97-47d6-9768-d4f56de74999" xlink:to="loc_srt_MaximumMember_6a7106a0-0b5b-475e-99ec-2d116ba41a8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_e2facf93-9664-4764-a979-2dd89fa5338e" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_26a38d13-0d72-455d-bbc1-9d34ef17ecd0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:to="loc_us-gaap_EmployeeStockOptionMember_26a38d13-0d72-455d-bbc1-9d34ef17ecd0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_924cdfb5-a41a-4bb0-9df8-da8993f1e0d3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_924cdfb5-a41a-4bb0-9df8-da8993f1e0d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_330957a3-ec33-4273-8f2e-1b7ea6b15847" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_dddaf96e-6c51-492b-87e5-960735888c6c" xlink:to="loc_us-gaap_PerformanceSharesMember_330957a3-ec33-4273-8f2e-1b7ea6b15847" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_6e01e272-7fdd-4c7c-8874-3ce408d8ace4" xlink:to="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_GeneralStockOptionPlanMember_f4898e83-a1a7-4f9f-8498-eba836728276" xlink:href="cgnx-20240331.xsd#cgnx_GeneralStockOptionPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:to="loc_cgnx_GeneralStockOptionPlanMember_f4898e83-a1a7-4f9f-8498-eba836728276" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_aa3a84d0-2f8b-4f7c-ad4a-e5259ee17407" xlink:href="cgnx-20240331.xsd#cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:to="loc_cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember_aa3a84d0-2f8b-4f7c-ad4a-e5259ee17407" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_09dc7e1a-41a8-4cf5-ad98-515bdc297fe9" xlink:href="cgnx-20240331.xsd#cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_9ae81ad3-baee-4514-b735-6ba4ef901e50" xlink:to="loc_cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember_09dc7e1a-41a8-4cf5-ad98-515bdc297fe9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_a4ded196-e7ad-45e9-a5e0-829018881c09" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_2a9848ed-954e-4afe-85e0-29fe11061c2e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_2a9848ed-954e-4afe-85e0-29fe11061c2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_885f57b1-996c-4c2d-be4a-a123b74ffabc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_885f57b1-996c-4c2d-be4a-a123b74ffabc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_8798c939-1d6f-460a-98ba-d8800f9251d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized_8798c939-1d6f-460a-98ba-d8800f9251d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_d3ed4b1c-33fe-4943-a32c-e06c09d575c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_d3ed4b1c-33fe-4943-a32c-e06c09d575c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ExpirationPeriodOfStockOptionPlan_c38c2fea-12db-4570-a5cc-cad4dde2b3b3" xlink:href="cgnx-20240331.xsd#cgnx_ExpirationPeriodOfStockOptionPlan"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_ExpirationPeriodOfStockOptionPlan_c38c2fea-12db-4570-a5cc-cad4dde2b3b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromStockOptionsExercised_051107b9-1053-42dd-aeb9-8c751d42542e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromStockOptionsExercised"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ProceedsFromStockOptionsExercised_051107b9-1053-42dd-aeb9-8c751d42542e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions_86b2c604-3b0c-4c3c-bca6-506d118a50fe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions_86b2c604-3b0c-4c3c-bca6-506d118a50fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_a2249b2e-aca3-4bb3-bc55-3db7b1eb62e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_a2249b2e-aca3-4bb3-bc55-3db7b1eb62e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_ab66e753-26e5-4336-b183-5707a3b8c565" xlink:href="cgnx-20240331.xsd#cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue_ab66e753-26e5-4336-b183-5707a3b8c565" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_751c1e20-dba6-4c83-8a06-fa01e99daa0a" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue_751c1e20-dba6-4c83-8a06-fa01e99daa0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_22b7c482-62f0-4875-965b-0ba36487171e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_22b7c482-62f0-4875-965b-0ba36487171e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_82c1c001-fe60-45b2-92a5-39a1a1d84e36" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_82c1c001-fe60-45b2-92a5-39a1a1d84e36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_ff72b44b-83fe-48e6-b60d-7688947b457f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_ff72b44b-83fe-48e6-b60d-7688947b457f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cee87729-ecd0-4b85-ba86-d873896198d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_cee87729-ecd0-4b85-ba86-d873896198d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_74c01310-1a88-4d02-882c-320ca03b0bf7" xlink:href="cgnx-20240331.xsd#cgnx_NumberOfGroupsWithinEmployeePopulation"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_NumberOfGroupsWithinEmployeePopulation_74c01310-1a88-4d02-882c-320ca03b0bf7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_307d6784-0664-431d-8bfd-514928c888ac" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO_307d6784-0664-431d-8bfd-514928c888ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_a92cfdae-475a-4e16-9c56-dc3daec288db" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement_a92cfdae-475a-4e16-9c56-dc3daec288db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_5106b6a4-7dcb-407a-92bf-a39a11bc1bdb" xlink:href="cgnx-20240331.xsd#cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement_5106b6a4-7dcb-407a-92bf-a39a11bc1bdb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_6ce8d2ed-3e1d-4001-af9d-b31464e9869e" xlink:href="cgnx-20240331.xsd#cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_6ce8d2ed-3e1d-4001-af9d-b31464e9869e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_d0e2abc4-f482-4a4b-a72f-d1f8cbfad0cf" xlink:href="cgnx-20240331.xsd#cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates_d0e2abc4-f482-4a4b-a72f-d1f8cbfad0cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e042ce6b-d620-47de-8131-31c61478832b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_e042ce6b-d620-47de-8131-31c61478832b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_dd3bcff4-4b80-4784-b97a-a384d3e20bd4" xlink:href="cgnx-20240331.xsd#cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition_dd3bcff4-4b80-4784-b97a-a384d3e20bd4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_554bfab0-b63b-46bb-a897-4e6416d5bf6b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_554bfab0-b63b-46bb-a897-4e6416d5bf6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_8cf26dce-cca7-428f-9aeb-5839efb0c62b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense_8cf26dce-cca7-428f-9aeb-5839efb0c62b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_5d166660-27d7-40e0-a802-3ff3f7ddacac" xlink:href="cgnx-20240331.xsd#cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_482cde8c-81ed-4faf-8c2a-7eb6679afb2d" xlink:to="loc_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount_5d166660-27d7-40e0-a802-3ff3f7ddacac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseSummaryofStockOptionActivityDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_42afc8ff-0ac3-407f-b9b1-b9f80f73ed07" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_42afc8ff-0ac3-407f-b9b1-b9f80f73ed07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_86882b30-bf24-4d71-b828-78165abeee54" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod_86882b30-bf24-4d71-b828-78165abeee54" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_f893fcad-ebce-44a8-b1f5-95029a973c60" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:to="loc_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised_f893fcad-ebce-44a8-b1f5-95029a973c60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_1b1f092a-6fb1-41bc-9c44-82e84a6998a2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod_1b1f092a-6fb1-41bc-9c44-82e84a6998a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e201ef1b-6b27-42d0-ac63-f655fd7b08c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward_78f7a498-854c-426f-9046-487c77891f1f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber_e201ef1b-6b27-42d0-ac63-f655fd7b08c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_5b389199-2862-4ee5-9f5c-4fcb85ad400c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber_5b389199-2862-4ee5-9f5c-4fcb85ad400c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ac51c3ad-8b7e-43a2-beb3-d3448197328b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber_ac51c3ad-8b7e-43a2-beb3-d3448197328b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_3c459e0e-8495-4039-bf6c-21a33992436c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_3c459e0e-8495-4039-bf6c-21a33992436c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_dec0aaf8-5084-4e61-9eac-28b7a7011d72" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice_dec0aaf8-5084-4e61-9eac-28b7a7011d72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_a9262aea-b589-4408-b032-2b4dce78c556" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice_a9262aea-b589-4408-b032-2b4dce78c556" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_d5c2f764-fb04-4d6c-b754-a40d6ffae134" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice_d5c2f764-fb04-4d6c-b754-a40d6ffae134" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_0dd58e46-14db-44e0-89af-c57ddbb629cf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward_d8c52ff0-f894-40bf-8251-cef417ac09ea" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice_0dd58e46-14db-44e0-89af-c57ddbb629cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_cf72f407-f321-4943-b126-01bbd922c274" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice_cf72f407-f321-4943-b126-01bbd922c274" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_1dbf6ff2-d935-4fb0-897f-420c9387cdd9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice_1dbf6ff2-d935-4fb0-897f-420c9387cdd9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_a2d3d42b-1686-4192-8421-e7b0a33e05bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_a2d3d42b-1686-4192-8421-e7b0a33e05bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_3406f453-3b92-4e0f-9c3f-f6e999df6c77" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_a2d3d42b-1686-4192-8421-e7b0a33e05bd" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2_3406f453-3b92-4e0f-9c3f-f6e999df6c77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_f2618991-7545-4558-9f0e-26f01cb4ecb8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_a2d3d42b-1686-4192-8421-e7b0a33e05bd" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1_f2618991-7545-4558-9f0e-26f01cb4ecb8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_e5773206-d79e-4ff0-aa3b-d481ab111d9a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract_a2d3d42b-1686-4192-8421-e7b0a33e05bd" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1_e5773206-d79e-4ff0-aa3b-d481ab111d9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_0f13e011-a8c1-4ba1-abd1-a026ee1c78ee" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_24f2fd3e-c87f-4e21-b69f-1b46bcf182fd" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_0f13e011-a8c1-4ba1-abd1-a026ee1c78ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9666a55f-7d81-4b24-a704-7c8f1dcd5650" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_0f13e011-a8c1-4ba1-abd1-a026ee1c78ee" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue_9666a55f-7d81-4b24-a704-7c8f1dcd5650" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_68edaa31-7e14-42c9-8e01-5e04f1327716" xlink:href="cgnx-20240331.xsd#cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_0f13e011-a8c1-4ba1-abd1-a026ee1c78ee" xlink:to="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue_68edaa31-7e14-42c9-8e01-5e04f1327716" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_9acc9b14-8879-43ab-a69a-c6efe8367707" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract_0f13e011-a8c1-4ba1-abd1-a026ee1c78ee" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue_9acc9b14-8879-43ab-a69a-c6efe8367707" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_adaa9a49-142f-4bc9-acf0-41db146b08ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_17982354-c5aa-4113-a57e-1bc571b59a25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_adaa9a49-142f-4bc9-acf0-41db146b08ce" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_17982354-c5aa-4113-a57e-1bc571b59a25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_fd8f3e3b-1931-4db8-a108-598863d0788a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_adaa9a49-142f-4bc9-acf0-41db146b08ce" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_fd8f3e3b-1931-4db8-a108-598863d0788a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_595dafea-30a9-4663-85db-b2605f67a59b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_adaa9a49-142f-4bc9-acf0-41db146b08ce" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_595dafea-30a9-4663-85db-b2605f67a59b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_1d8270bb-ca63-41e9-8780-b8fb793b46f1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_adaa9a49-142f-4bc9-acf0-41db146b08ce" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_1d8270bb-ca63-41e9-8780-b8fb793b46f1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_19c08548-de7c-43a3-a15a-3d9d5ffdc2e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_19c08548-de7c-43a3-a15a-3d9d5ffdc2e9" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:to="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4f134a0d-dde8-4442-a5b5-5bd9ae5a5522" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_bd8b30d3-5d5c-43d2-81b5-7251b965e1f5" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4f134a0d-dde8-4442-a5b5-5bd9ae5a5522" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_d036d6a7-bee7-45a1-927d-90efe0c62288" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_4f134a0d-dde8-4442-a5b5-5bd9ae5a5522" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_d036d6a7-bee7-45a1-927d-90efe0c62288" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_c30fabdd-cbc2-4364-9114-c7efff8eae07" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_5b286a24-3680-490b-94a8-3f3894f14ecb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_5b286a24-3680-490b-94a8-3f3894f14ecb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_0ce597f5-ec3f-4f6d-b12a-7ec7b6be800b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_0ce597f5-ec3f-4f6d-b12a-7ec7b6be800b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_768038f7-dfbb-4442-bf4f-3f32e3ed55e8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_768038f7-dfbb-4442-bf4f-3f32e3ed55e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_58cf616f-82c8-4807-bbe9-6e319f60ae5d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_58cf616f-82c8-4807-bbe9-6e319f60ae5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_29e85627-58b7-4f00-83a0-03682af05b6c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_0a890fe3-e481-4ab1-a8df-cda5ac483e2b" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_29e85627-58b7-4f00-83a0-03682af05b6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_50a80104-fad3-488b-a38a-2427a83cc787" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b692269-0f2f-4ecd-ad40-84bf53ca106b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2b692269-0f2f-4ecd-ad40-84bf53ca106b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_e24bf059-279a-41ff-aa38-0fe60d754c9e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_e24bf059-279a-41ff-aa38-0fe60d754c9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_eda60060-28f0-4539-a2d1-3c9807b8e657" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_eda60060-28f0-4539-a2d1-3c9807b8e657" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_8849ef04-dcaa-4b2b-941f-04fb15b37707" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_8849ef04-dcaa-4b2b-941f-04fb15b37707" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_dba0ae80-c627-4136-aad2-57d5ee4be42f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_14424907-a920-4d3f-891d-1f81d0073895" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_dba0ae80-c627-4136-aad2-57d5ee4be42f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_36401ecf-55f3-4515-b29d-bb5120c62bf0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_36401ecf-55f3-4515-b29d-bb5120c62bf0" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:to="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bfe72e6e-5d83-4eb5-8cbc-db914fee215d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_c98ae24f-1aa7-4f9e-8134-71f5d25ce990" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bfe72e6e-5d83-4eb5-8cbc-db914fee215d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_fa460e80-4fbd-4200-9bb5-cde93293eab3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_bfe72e6e-5d83-4eb5-8cbc-db914fee215d" xlink:to="loc_us-gaap_PerformanceSharesMember_fa460e80-4fbd-4200-9bb5-cde93293eab3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_b3c25f26-822c-4fc7-8ba4-1a6bec1984f2" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_997e821a-2664-49de-a333-9006e796ef2f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_997e821a-2664-49de-a333-9006e796ef2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2d79167a-9157-48aa-a133-79e8253c88c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_2d79167a-9157-48aa-a133-79e8253c88c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_f328a82e-a30e-4af0-b1bf-10397bb8c2cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_f328a82e-a30e-4af0-b1bf-10397bb8c2cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_107e5714-7207-48b6-91eb-b9292e2897b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_107e5714-7207-48b6-91eb-b9292e2897b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f380f7cb-acf6-40ec-aef4-1807e2f7eecf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_be98b046-86ef-4806-9b48-3ab91498b56f" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_f380f7cb-acf6-40ec-aef4-1807e2f7eecf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_9fa90a95-8728-4bc8-be27-f698ba52c8b9" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b2b17a3d-52e2-4a6a-893a-4d6b26955c21" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_b2b17a3d-52e2-4a6a-893a-4d6b26955c21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_343ab59a-1561-4845-b472-bd69b82c4710" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_343ab59a-1561-4845-b472-bd69b82c4710" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_d8259ea3-d677-40c6-9f40-1ae6fc7fa47e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue_d8259ea3-d677-40c6-9f40-1ae6fc7fa47e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_9cd01728-402e-4d26-bf5d-e020e32a4878" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_9cd01728-402e-4d26-bf5d-e020e32a4878" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_21e4c3f9-c1c8-4a54-8fca-2d96f70cc283" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_c1aefa38-afb2-4bb7-88d6-04b398f98f02" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_21e4c3f9-c1c8-4a54-8fca-2d96f70cc283" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_03ace963-f442-4e3f-b416-80833e9e5325" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_03ace963-f442-4e3f-b416-80833e9e5325" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_a98e50fe-2d2a-4978-9b30-e189fdfb2bc5" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsTotalMember_67c81175-7ba9-4a9a-a407-6f1612dc8603" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsTotalMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:to="loc_us-gaap_CostOfGoodsTotalMember_67c81175-7ba9-4a9a-a407-6f1612dc8603" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ResearchAndDevelopmentExpenseMember_2cf6f9bc-3620-46ef-b3f6-2d09b400b42b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ResearchAndDevelopmentExpenseMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:to="loc_us-gaap_ResearchAndDevelopmentExpenseMember_2cf6f9bc-3620-46ef-b3f6-2d09b400b42b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_SellingGeneralAndAdministrativeMember_af095ab2-22cd-488e-b029-16790aafa7a7" xlink:href="cgnx-20240331.xsd#cgnx_SellingGeneralAndAdministrativeMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_4ce9afec-4c95-4e56-a35a-30f567ae0b98" xlink:to="loc_cgnx_SellingGeneralAndAdministrativeMember_af095ab2-22cd-488e-b029-16790aafa7a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_9a58b327-33cb-4deb-8d9a-46848a438b6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable_03ace963-f442-4e3f-b416-80833e9e5325" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_9a58b327-33cb-4deb-8d9a-46848a438b6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllocatedShareBasedCompensationExpense_efc26e61-475b-4fd8-a727-d690cdef7dda" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllocatedShareBasedCompensationExpense"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems_9a58b327-33cb-4deb-8d9a-46848a438b6e" xlink:to="loc_us-gaap_AllocatedShareBasedCompensationExpense_efc26e61-475b-4fd8-a727-d690cdef7dda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/StockRepurchaseProgramDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#StockRepurchaseProgramDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/StockRepurchaseProgramDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityAbstract_40239bdd-a209-4b59-9d00-3bc293513b51" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfTreasuryStockTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_40239bdd-a209-4b59-9d00-3bc293513b51" xlink:to="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:to="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareRepurchaseProgramDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramAxis_b7952add-9ac4-446f-b607-510fbd7c6776" xlink:to="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_RepurchaseProgramMarch2020Member_30784588-b231-4721-ab8e-061aea5598a1" xlink:href="cgnx-20240331.xsd#cgnx_RepurchaseProgramMarch2020Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:to="loc_cgnx_RepurchaseProgramMarch2020Member_30784588-b231-4721-ab8e-061aea5598a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_RepurchaseProgramMarch2022Member_dde59d77-f745-4603-ae35-470a52f4556a" xlink:href="cgnx-20240331.xsd#cgnx_RepurchaseProgramMarch2022Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareRepurchaseProgramDomain_edc0773a-c8d2-4efa-8c08-76000a8b1781" xlink:to="loc_cgnx_RepurchaseProgramMarch2022Member_dde59d77-f745-4603-ae35-470a52f4556a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityClassOfTreasuryStockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfTreasuryStockTable_458a1dec-b5fa-4d34-8ed2-d49ff4540a4a" xlink:to="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_0a362400-65cb-446b-90d6-8a181d921775" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramAuthorizedAmount1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_StockRepurchaseProgramAuthorizedAmount1_0a362400-65cb-446b-90d6-8a181d921775" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockSharesAcquired_1889e41c-eefd-4bf6-a8f6-99f970f1aeab" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockSharesAcquired"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_TreasuryStockSharesAcquired_1889e41c-eefd-4bf6-a8f6-99f970f1aeab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_TreasuryStockAdditionalSharesAcquired_300718eb-e325-44c7-aa38-29fb2051655c" xlink:href="cgnx-20240331.xsd#cgnx_TreasuryStockAdditionalSharesAcquired"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_cgnx_TreasuryStockAdditionalSharesAcquired_300718eb-e325-44c7-aa38-29fb2051655c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_9b8b65fc-8932-4928-ae55-0593e66cacc1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValueAcquiredCostMethod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_TreasuryStockValueAcquiredCostMethod_9b8b65fc-8932-4928-ae55-0593e66cacc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_fb0ff3dd-d465-43ee-a7b9-dea3a64b3075" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1_fb0ff3dd-d465-43ee-a7b9-dea3a64b3075" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_88a86d0e-b301-4c03-af40-a1d857c13bb9" xlink:href="cgnx-20240331.xsd#cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityClassOfTreasuryStockLineItems_06c1bde5-672b-4812-b7a2-ef1c344c6c84" xlink:to="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_88a86d0e-b301-4c03-af40-a1d857c13bb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_cfb6090f-647f-4b3e-a485-a11a62c90595" xlink:href="cgnx-20240331.xsd#cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityAbstract_40239bdd-a209-4b59-9d00-3bc293513b51" xlink:to="loc_cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod_cfb6090f-647f-4b3e-a485-a11a62c90595" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/IncomeTaxesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#IncomeTaxesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/IncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_bc516484-9e5e-436d-a6cd-b0dd793c6776" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_bc516484-9e5e-436d-a6cd-b0dd793c6776" xlink:to="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:to="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityAxis_3c70d050-b02a-45ae-80b2-af45db973518" xlink:to="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCountryMember_ba9ea024-6462-4e52-8541-33625ebfb0b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCountryMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:to="loc_us-gaap_ForeignCountryMember_ba9ea024-6462-4e52-8541-33625ebfb0b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticCountryMember_2eedfa06-b2b7-4739-b97a-bc0d8fd118f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DomesticCountryMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityDomain_d7b93720-6046-40f7-b898-27cb3a391cdd" xlink:to="loc_us-gaap_DomesticCountryMember_2eedfa06-b2b7-4739-b97a-bc0d8fd118f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxAuthorityNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameAxis_ce53f155-5836-47b2-be58-64ebee054407" xlink:to="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueCommissionersIrelandMember_0b7222da-c104-4599-83f5-143a867004a5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueCommissionersIrelandMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_us-gaap_RevenueCommissionersIrelandMember_0b7222da-c104-4599-83f5-143a867004a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StateAdministrationOfTaxationChinaMember_4d371d51-c329-4c75-9834-718cc81f799e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StateAdministrationOfTaxationChinaMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_us-gaap_StateAdministrationOfTaxationChinaMember_4d371d51-c329-4c75-9834-718cc81f799e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_KP_9b39537f-7b74-4520-8052-3d0b6dfd23cb" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_KP"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_country_KP_9b39537f-7b74-4520-8052-3d0b6dfd23cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_JP_c587488d-2af2-43e3-bdca-3a6fdd1bd472" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_JP"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxAuthorityNameDomain_1241af8a-9d28-4f28-a50a-04d7cf4ba6fe" xlink:to="loc_country_JP_c587488d-2af2-43e3-bdca-3a6fdd1bd472" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxContingencyLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyTable_b06b12ff-f99a-4e30-baeb-c74ecc9c8658" xlink:to="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_52475481-af3b-454f-8a30-7eb9e4f60101" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_52475481-af3b-454f-8a30-7eb9e4f60101" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_f511ce5c-6a0d-4d19-9c89-3a0d865bc325" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate_f511ce5c-6a0d-4d19-9c89-3a0d865bc325" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_b5a767da-6a74-4a75-92b7-574ac015069c" xlink:href="cgnx-20240331.xsd#cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount_b5a767da-6a74-4a75-92b7-574ac015069c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53d3dfc3-5c14-4ebc-b3db-49e10fdd1a2c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount_53d3dfc3-5c14-4ebc-b3db-49e10fdd1a2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_0b4032fe-09a2-42f7-821f-a3d0029c8865" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes_0b4032fe-09a2-42f7-821f-a3d0029c8865" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_8101af6d-1e1b-4419-8f6e-6c9a02046352" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationTaxSettlements"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxSettlements_8101af6d-1e1b-4419-8f6e-6c9a02046352" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_a5676157-dd7a-424e-920c-7aa5e1fe4ce2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationTaxContingencies"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationTaxContingencies_a5676157-dd7a-424e-920c-7aa5e1fe4ce2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_dd906297-54da-416c-b8e4-c449961baad6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance_dd906297-54da-416c-b8e4-c449961baad6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_cf3699ed-d1a4-4561-9907-99ef0bf74730" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_IncomeTaxReconciliationOtherAdjustments_cf3699ed-d1a4-4561-9907-99ef0bf74730" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_cc5b06a6-d714-4e5a-9059-4a62bcae761d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_us-gaap_ValuationAllowanceDeferredTaxAssetChangeInAmount_cc5b06a6-d714-4e5a-9059-4a62bcae761d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_LiabilityForUncertainTaxPositions_08ee5eae-00e2-4740-a9e0-7fbb1e42cb7b" xlink:href="cgnx-20240331.xsd#cgnx_LiabilityForUncertainTaxPositions"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_LiabilityForUncertainTaxPositions_08ee5eae-00e2-4740-a9e0-7fbb1e42cb7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_a81acaba-bb58-47e6-9887-0a49188ce553" xlink:href="cgnx-20240331.xsd#cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability_a81acaba-bb58-47e6-9887-0a49188ce553" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_69eee35f-c3f0-47c3-8aff-cd0c00b97c89" xlink:href="cgnx-20240331.xsd#cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes_69eee35f-c3f0-47c3-8aff-cd0c00b97c89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_336b4e69-1ca6-4e5f-9746-bc32ec7be26d" xlink:href="cgnx-20240331.xsd#cgnx_TaxYearsOpenToExaminationByInternalRevenueService"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_TaxYearsOpenToExaminationByInternalRevenueService_336b4e69-1ca6-4e5f-9746-bc32ec7be26d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_bc356de9-210c-4042-b08d-7c7dc8b781e0" xlink:href="cgnx-20240331.xsd#cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxContingencyLineItems_09a3574b-1683-4e36-bcb6-ea7f6ccfea36" xlink:to="loc_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities_bc356de9-210c-4042-b08d-7c7dc8b781e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WeightedAverageSharesCalculationofWeightedAverageSharesDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_446003f4-fd9c-461d-94a5-d23ed2bacdc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_3c28d6b0-a8d2-4ed7-91e4-54d3f9ebb3b2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_446003f4-fd9c-461d-94a5-d23ed2bacdc0" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_3c28d6b0-a8d2-4ed7-91e4-54d3f9ebb3b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_414b5752-8757-4cf0-8ae7-e2c7d9cb7b5d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_446003f4-fd9c-461d-94a5-d23ed2bacdc0" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_414b5752-8757-4cf0-8ae7-e2c7d9cb7b5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_d5df8d2a-5800-43bc-aaf8-4571108bc5e1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_446003f4-fd9c-461d-94a5-d23ed2bacdc0" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_d5df8d2a-5800-43bc-aaf8-4571108bc5e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#WeightedAverageSharesNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_18599902-df5b-4513-98ab-414ab09564a3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_18599902-df5b-4513-98ab-414ab09564a3" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_d29e4f34-4f21-44d5-bd11-639d18e16c39" xlink:to="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember_96a8bf51-9b3b-4220-a41a-c2d2e854c8a5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:to="loc_us-gaap_EmployeeStockOptionMember_96a8bf51-9b3b-4220-a41a-c2d2e854c8a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockMember_268e27eb-6079-41ba-aaff-3a2b45e5de5c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:to="loc_us-gaap_RestrictedStockMember_268e27eb-6079-41ba-aaff-3a2b45e5de5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember_a42730d3-eb9c-4115-b575-76c8216cb7ea" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AntidilutiveSecuritiesNameDomain_2e8be2da-c1b6-4185-8ecc-9d913ea5b2b2" xlink:to="loc_us-gaap_PerformanceSharesMember_a42730d3-eb9c-4115-b575-76c8216cb7ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a79f65b8-904d-47fd-82d6-f19ce880c28d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_f71d3efa-6d88-44ac-898b-34972bb17948" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a79f65b8-904d-47fd-82d6-f19ce880c28d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_8f0a3829-f9be-4d15-9837-221cc0a7df61" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a79f65b8-904d-47fd-82d6-f19ce880c28d" xlink:to="loc_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_8f0a3829-f9be-4d15-9837-221cc0a7df61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/BusinessCombinationsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#BusinessCombinationsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/BusinessCombinationsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_7c369438-cf31-40f2-9bbb-65be064e1fab" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationAndAssetAcquisitionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract_7c369438-cf31-40f2-9bbb-65be064e1fab" xlink:to="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:to="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionAcquireeDomain_64759e8b-7b71-4622-b32d-736f8a19f928" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionAcquireeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAxis_33648db6-f866-48fe-b7ed-4e64205a3d2b" xlink:to="loc_us-gaap_BusinessAcquisitionAcquireeDomain_64759e8b-7b71-4622-b32d-736f8a19f928" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_MoritexCorporationMember_4ad38225-1c58-4c5c-b131-3220d06d13b2" xlink:href="cgnx-20240331.xsd#cgnx_MoritexCorporationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionAcquireeDomain_64759e8b-7b71-4622-b32d-736f8a19f928" xlink:to="loc_cgnx_MoritexCorporationMember_4ad38225-1c58-4c5c-b131-3220d06d13b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessAcquisitionLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable_1890e351-15c6-4cbc-8f30-5026fcf16777" xlink:to="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_cgnx_BusinessCombinationEnterpriseValue_dec212d3-ef4f-476c-9057-8862d89ed5a8" xlink:href="cgnx-20240331.xsd#cgnx_BusinessCombinationEnterpriseValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_cgnx_BusinessCombinationEnterpriseValue_dec212d3-ef4f-476c-9057-8862d89ed5a8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3fa980d7-f151-473b-ab0e-e551f164b8fe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BusinessCombinationConsiderationTransferred1"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_us-gaap_BusinessCombinationConsiderationTransferred1_3fa980d7-f151-473b-ab0e-e551f164b8fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireBusinessesGross_46f454e6-5f93-4319-98ec-d6cfc026a88b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireBusinessesGross"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_BusinessAcquisitionLineItems_e4202fdc-9beb-4d9a-99fd-0afc35ce0b2e" xlink:to="loc_us-gaap_PaymentsToAcquireBusinessesGross_46f454e6-5f93-4319-98ec-d6cfc026a88b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="simple" xlink:href="cgnx-20240331.xsd#SubsequentEventsDetails"/>
  <link:presentationLink xlink:role="http://www.cognex.com/role/SubsequentEventsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_b2e920f2-09c1-4a02-9012-f4059daddb2c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_b2e920f2-09c1-4a02-9012-f4059daddb2c" xlink:to="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_2d59c404-062a-463e-a4ac-100b3271dfc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_1c1ab9e5-7a15-4276-accb-7590b74dab99" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_2d59c404-062a-463e-a4ac-100b3271dfc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_badfe938-5aec-46de-acde-067821c107c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_2d59c404-062a-463e-a4ac-100b3271dfc0" xlink:to="loc_us-gaap_SubsequentEventMember_badfe938-5aec-46de-acde-067821c107c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventLineItems_3cd14e7a-93f2-4d2f-a475-ad579399ff63" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SubsequentEventLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTable_2c0cc55f-e541-494d-8880-20f17eec3872" xlink:to="loc_us-gaap_SubsequentEventLineItems_3cd14e7a-93f2-4d2f-a475-ad579399ff63" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockDividendsPerShareDeclared_d5fdf31c-5946-4be9-9155-9b2f51f772dd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockDividendsPerShareDeclared"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventLineItems_3cd14e7a-93f2-4d2f-a475-ad579399ff63" xlink:to="loc_us-gaap_CommonStockDividendsPerShareDeclared_d5fdf31c-5946-4be9-9155-9b2f51f772dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#AwardTimingDisclosure"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PerformanceSharesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PerformanceSharesMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_PerformanceSharesMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/label"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgDiscLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgDiscLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiDiscTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMethodTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgMethodTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgPredtrmndFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgPredtrmndFlag"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgPredtrmndFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiCnsdrdFlag"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgHowMnpiCnsdrdTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MnpiDiscTimedForCompValFlag"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTableTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTable"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:to="loc_us-gaap_AwardTypeAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_EmployeeStockOptionMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockAppreciationRightsSARSMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscIndName"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardUndrlygSecuritiesAmt"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardExrcPrice" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardExrcPrice"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardExrcPrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardGrantDateFairValue" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardGrantDateFairValue"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_UndrlygSecurityMktPriceChngPct"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ErrCompDisclosure"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RecoveryOfErrCompDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompRecoveryTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompRecoveryTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ErrCompRecoveryTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDateAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDateAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_ErrCompRecoveryTable" xlink:to="loc_ecd_RestatementDateAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_ErrCompRecoveryTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonNeosMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonNeosMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AllIndividualsMember" xlink:to="loc_ecd_NonNeosMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDeterminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDeterminationDate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_RestatementDeterminationDate" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompAmt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_AggtErrCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompAnalysisTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompAnalysisTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ErrCompAnalysisTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_StkPrcOrTsrEstimationMethodTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingAggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingAggtErrCompAmt"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_OutstandingAggtErrCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompNotYetDeterminedTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryIndName"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryIndName"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_OutstandingRecoveryIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryCompAmt"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_OutstandingRecoveryCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDoesNotRequireRecoveryTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/PvpDisclosure" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#PvpDisclosure"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/PvpDisclosure" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PayVsPerformanceDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PvpTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ExecutiveCategoryAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ExecutiveCategoryAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_ExecutiveCategoryAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllExecutiveCategoriesMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllExecutiveCategoriesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_ExecutiveCategoryAxis" xlink:to="loc_ecd_AllExecutiveCategoriesMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AllExecutiveCategoriesMember" xlink:to="loc_ecd_PeoMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AllExecutiveCategoriesMember" xlink:to="loc_ecd_NonPeoNeoMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_AdjToCompAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllAdjToCompMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllAdjToCompMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AdjToCompAxis" xlink:to="loc_ecd_AllAdjToCompMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_MeasureAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PvpTableTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureName"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CoSelectedMeasureName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NamedExecutiveOfficersFnTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupIssuersFnTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ChangedPeerGroupFnTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoTotalCompAmt"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeoTotalCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoActuallyPaidCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoActuallyPaidCompAmt"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeoActuallyPaidCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToPeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToPeoCompFnTextBlock"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_AdjToPeoCompFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgTotalCompAmt"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgCompActuallyPaidAmt"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToNonPeoNeoCompFnTextBlock"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_EquityValuationAssumptionDifferenceFnTextBlock"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsNetIncomeTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnVsPeerGroupTextBlock"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsOtherMeasureTextBlock"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TabularListTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TabularListTableTextBlock"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_TabularListTableTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnAmt"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_TotalShareholderRtnAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupTotalShareholderRtnAmt"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_us-gaap_NetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureAmt"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CoSelectedMeasureAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OtherPerfMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OtherPerfMeasureAmt"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_OtherPerfMeasureAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAmt"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_AdjToCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoName"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeoName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureName"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_MeasureName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonGaapMeasureDescriptionTextBlock"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Additional402vDisclosureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Additional402vDisclosureTextBlock"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_Additional402vDisclosureTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#InsiderTradingArrangements"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingArrLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingArrLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrByIndTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrByIndTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TradingArrByIndTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_TradingArrByIndTable" xlink:to="loc_ecd_TradingArrAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllTradingArrangementsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllTradingArrangementsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_TradingArrAxis" xlink:to="loc_ecd_AllTradingArrangementsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_TradingArrByIndTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MtrlTermsOfTrdArrTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndName"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndTitle" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndTitle"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrIndTitle" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrAdoptedFlag"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrAdoptedFlag"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrAdoptionDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrAdoptionDate"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrAdoptionDate" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrTrmntdFlag"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrTrmntdFlag"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrTerminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrTerminationDate"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrTerminationDate" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrDuration" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrDuration"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrDuration" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrSecuritiesAggAvailAmt"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#InsiderTradingPoliciesProc"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingPoliciesProcLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcAdoptedFlag"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:to="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:to="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>12
<FILENAME>exhibit101-ptagreement001.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement001.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5Q7_"=W
M#^.]1\*0Z5#]HLK7[6]Q->%(S'\O^P2#\X]N#S7:UX7JMI:ZE\</$T=QJAT^
MWGT<0I=";RT,G[KY"W0C@Y7T!H ]BTG4YKVP\Z_L_P"S[A99(FA>4/\ =8C(
M;C((P1[&L[QIXMB\'^&+C7#;?;([=T5XDE"GYF"\'![D5SGC=M%\>^"KZTB=
M#-]J\C3)S\I>X4*0R$X^7)*D^@)]*XK7-6CUW]GF^(MO+U<W$27T>S$DL_FJ
M6? '.X D8X ! ^[0![=-J 73+BZMXQ<2Q1%Q C@,S;<A,G@$\#GUKF3X\EM]
M1\+6-_HLEI/KR2$J\X)MF09(;CG@CGCW K@(X+2T\5^/[>TCBBL9O#B,J( (
MY)/)'([%LM]<FJ-A;PO;_"5KZ%&LK>*[^UF9,QQ#Y0/,SP!N('/<B@#V?7]:
MN-*TA;[3M-?5I&D1%A@E525)P6!/&!_G'6IUUW3G\0-H:7"M?I!]HDC!'R+D
M 9]"<\#T'TKP'6-/N(?AEKI6%ETV;Q.9=*CV_P#+#<?FC'9".F..">]=YI=G
M9P_'_6IY[./;<Z?#+9R&'(=_EW,AQUZY(]Z .X\7>)H?"'AVYUFXL[FZA@ +
M+!MR,D $Y(XR1Z_2JVJ>,K;2O#>E:K+ S2ZH]O#:VP?[TLH!52V. .23CH.G
M:LKXPLO_  JW6H0099418T'WG/F)P!WKGO%MC+?>"? 6IVW[VWTN]L9[HISY
M<8"AF/\ NGKZ<^E '?>'/$T'B%]3MQ%Y%YIEVUI=0[]P##HRM@94CIP#UXJK
MK_C.'0?$>B:+)I]S)+JT_DQ3@J(UQC=SG)(R.,?C7$^&M3A\)7?CGQ=?Q7,N
MEW^K)';-;1>890"PWKZKE\9Z''&:M_$B>(_$'X?-O&(;Z1Y?^F:GR\%O[N?>
M@#U*B@'(R.E% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !17S?\
M$OXK:U=^(;S2M%O9;&PM)&@+P-M>5E."VX<@9Z &O,SJ&J7<I8WEY-(>23*S
M$_K0!]N45\2[]6_O7OYO3HM7UK3I0T.HW]M(.05F=#_.@#[8HKPKX/\ Q+U?
M4]>7P]K=T]XLZ,;::3&]64$D$]P0#UYR*POB5\5M:O/$%YI>C7LMCI]K(T):
M!MKS,IP6+#D#/0 T ?25%?$9U#5+N4L;N\FD/)/F,Q/ZT[?JW]Z]_-Z /MJB
MOB,WFIVSAC<W<3=03(RFNW\$?%C7M!U>VBU+4)[[2G<)-'<,79%/&Y6/(QUQ
MT- 'U+17D/QA^)%]X;:UT?1)1%=7$/GRW( )1"2%"Y[G!YKPF75]>UFZ_>7^
MHWMPW0&5Y&/T&: /M2BOC+^R_%/_ #X:S_WYE_PJ*>U\16<1FN(-4@C7J\B2
M*!^)H ^TJ*^3/"7Q.\1>&]3MVEU*YN]/#@36T\AD!3OMSRI^E=)\:M=U&W\;
M0?8-2O(()+&*0+#.R Y+<X!H ^CZ*^*O^$EU[_H-ZE_X%/\ XU[K\'/B0VM0
M+X=UB=GU&)2;:>0\S(/X2>[#]1]* /8**2OE?XFZ[K%K\1]:@M]5OH8DF 6.
M.X=57Y%Z &@#ZIHKP>PU746_9PU*]:_NC=K<@"<S-Y@'G1C[V<]*\DB\0>(I
MI5BBUC5))'(546YD)8GL!F@#[3HKX[\WQQ_ST\0_G-1YOCC_ )Z>(?SFH ^Q
M**^;/A=)XJ;XA::-2?63:_O-_P!I,NS[AQG=QUKK?BYX0URW6;Q'X?U+4%B
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** /%_B
M)\%[G6]8GUGP]-"DMPQ>>VF8J&<]65O?N#^=>=M\&?'BL0-%5AZB[A_J]?5E
M% 'RC_PIKQ[_ - ,?^!<'_Q=*OP9\>,P!T55'J;N'^CU]6T4 >/_  Q^$-UX
M:U=-<UR6%KN)2+>WA;<$)!!9CW."1@>M5OB'\%KG6=8GUGP]-"LMPQDGM9FV
M@N>K*??T/?O7M-% 'RFWP9\>*Q T56'J+N'^KTW_ (4UX]_Z 8_\"X/_ (NO
MJZB@#Y2'P9\>$X.B*/<W</\ \77:>"/@;?V^KV^H^)98%@@<2+:1/O9V'(#'
MH!GTSFO>:* //_B7\-8_'-M!<6TZ6VIVRE(W<?)(I.=K8Y'/0^YKQ>X^"OCF
M&0K'I<,X'\<=U& ?^^F!KZHHH ^4?^%->/?^@&/_  +@_P#BZ4?!KQZ3_P @
M,#_M[@_^+KZMHH ^<?#7P)U^XU*"37C;V=BCAI464/(X_NC;D#/KFM[XI_#7
MQ'XE\5Q7FC644EI':1P@M.B8*D\8)]Q7N%% 'F/P=\&ZWX0LM6CUFV2%KB2-
MHPLJOD -GH>.HKTVEHH \)^(OP8O[W73J7A:WB:&YRT]L9%3RW[E<\8/IV-<
M=_PI3QS_ - V#_P*C_QKZGHH \AL_ ?B"'X'WWAA[6,:K+.'2+SEP1YJ-][.
M.@->;?\ "E/'/_0-@_\  J/_ !KZGHH ^6/^%*>.?^@;!_X%1_XT?\*4\<_]
M V#_ ,"H_P#&OJ>B@#YU\&?"?Q?HWC+2=2O;")+:VN%DD9;E&( ]@:V_B-X8
M^(OC?4O+CTV.#2(&)MX#=1@MVWO\W)_E^9/M]% 'SSX-^!NK/KB3>*(8X=.A
M^8Q),&:8]ERIX'K^GM]!Q1)!"D42*D:*%55& H'0"GT4 >;_ !0^&4?C&U_M
M#352+6H5 !8X6=1_"WH?0_@>.GE>F?";XBZ/J,&H6%I'!=0,&21;N/@_GR/:
MOIRB@#+\/W.K76CPOKE@MGJ &V5$D5T8_P!Y2">#Z'I^M:E%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4R::*WA::>5(HE&6=V"@?4FGTC %2",@B@"A
M#KVCW$JQ0ZM822,<!$N4)/X U)=ZMIMA(([S4+2W<C(6:94)'T)KYF\'V1UC
MX/>(='L]'N=0U2XU)?LOE6K,L1 C)8R8VIP#WSSZ&N@^+NGZAI?PN\&66KR^
M=J%O,$F?=N.=AXSWQP,]\4 >[6^N:1=SK!;:I933/]V..X1F/?@ TV3Q!HL4
MC1R:O8(ZG#*UR@(/N,US^D'3_%.MW%ZVEO:3Z)?^7;O-;^5*<P#=G/.T^8?K
M@&O.]7U"QTC]I2>_U#<MI%IN^5EA:7 $7)(4$X [XXH ]PM[JWNXA+;3Q31G
MH\;AA^8JL^LZ5%?BPDU.S2\. +=IU$AST^7.:\I^%%O+J7Q \3>*-'3[/X5O
M"T<$0(42R@K\VP?=Z,>0/OBL'3O%MQ\/I=0\)_$#0GN=,OKF60ZBJ;A.'.2Q
MS]_UX.Y>F.* /?Q+&T(F$BF(KN#@_*1USGTJG:ZYI%]<>1::K8W$W/[N*X1V
MXZ\ YKQ?XDZHMP? /@[3;YI-"U$6ZRS1MC[3%N2-02.V,DCU(]*[/XP:5:K\
M+KR:WB6WFTORIK)XAL,#*ZCY".G!(XH [B[U73K"18[R_M;9V&56:94)'J 3
M4EU?6=C$);NZ@MXR<!Y9 @)^IKR>6Q_X6K\*_"2:LYCO+R=U-R%^82)#. WT
M)C!([_E6+X8\67ECI>H_#GQ@H74K+:EF\O(GC#*0N3UP.5/<>XY />(Y$FC6
M2)U>-QE64Y!'J#0DB2INC=77)&5.1D'!_6L[7KV:STMEM"!>W+"WM<C($C<!
MB.X498^RFO-?@EK5Y;'6O!.KR$ZCI-R[H6.2Z%OFQZC<<Y_VQ0!Z=)KFD17!
M@DU6Q28':8VN$# ^F,YJ^#D9'2O%?$2J?VHO#7RCFQR>.^R>O:J "FB1&D9
MZEUP64'D9Z9IMQ<16EM+<3R".&)"\CMT50,DG\*\7T77]7\/_'"2/76:.T\4
M6\<D"-P(2!B)#_M#!0^I8&@#V"ZU;3;&58KO4+2WD89"2S*A(^A-27=_9V"*
M]Y=P6R,<!II @)_&N*^)WA"W\;6FFZ3*_DS-)*T$^/N.(R1G_9) R/\ ZU<1
MX3\8W3:=)X \7)LUK3[RU2 S<_:(UGCXR>I Y![KSV)(![)+KVCP.$FU:QC8
M@'#W* X/0\FK5M=VUY%YMK<13Q]-\3AA^8KQOXIHK?&;X?Y4',Z Y'4><M1>
M/YCX'^+_ (9U71E%LNJD07UO$-J3@.%)*C@G#]?50: /;ZS[[7M'TR=8+_5K
M&TF?[L<]PD;'Z FLWQWKL_AKP/J^KVP!N+> F+(R Y(521WP2#^%<M\%-*MS
MX$AUZX N=5U6266ZNI?FD?#LH!8\XPO3U)H ]'BGAG!,,L<@&"=C ]1D=/:J
M;Z]H\5T;635K!+D-M,+7*!\^F,YS7FWQ1Q\/? >L7/AX?8Y-9OD5_)&WR2R8
M<KCID1_@6)KI?"OA?3'^%&GZ,]M&UO>:<C3Y4'>\B!F<^^3D'M@>E '6W=]:
M6$0EO+J"WC)P'FD" GTR:1;ZT>S^V+=0-:XSYXD!3'3.[I7AWPTU>X\4?!SQ
M!I&KLUU%9XAC>0Y/EL 0N?\ 9(.#VX]*/#NH7OP9\:MX7UN9I?"^I.7L;M^D
M1)QD]AV##Z-T/(![2==T=8%G;5;$0L2JR&X3:2.H!S34\1:)(ZHFL:>SL0%5
M;I"2?0<UY;\1XXD_9WM5C1%00VA4*.!EEZ?G6GX1FTSQ'HGAWPW<Z1*OD:';
MWGVJ>VV?O$\H*8F(YP<DD>H]: /0AKND&X^SC5;'SL[?+^T)NSZ8SFF/XAT6
M.0QOK&GJX."K7* @_3->3QJO_#54QVC/V'/3OY(IL,,4O[4U\DD:.K6 RK*"
M#^Y2@#VA)X9(!/'+&T)&X2*P*X]<U0/B30@2#K6G CM]J3_&O)=%N7\)?M$7
M7AO328]'U6,S&T7_ %<4GE&3<HZ#E3T[-["L+1=;3P[\2?B1?_8)KMD,OEK'
M!YBJWF'#/Z+GDGTS0![[_;.EFT^U_P!I6?V8-L\[SUV;O3=G&?:I8KZTFM/M
M<5U!); $^<D@*8'7YNE<WK?A_3=,\$>*8+6VCCM[RWN+AX54!%<PX.!VY7/U
M->8:5=7GP0\<'1]0DDE\(:K(6M[AN?(;ID^XX#>HPWM0![6=>T<0"<ZM8B%F
M*B0W";21U&<]:C_X270O^@WIO_@4G^-9/AS1=,OM'TB\>WAE%H9S;#:"BEW.
M6 ]<#@^YKSCX3V%I?>/OB3:W=M%/ ]ZR-'(@*E3+,",4 >Q3:[I%NX2;5;&)
MF 8![A%)!Y!Y/0U=1TD17C961AE64Y!'J*\/^+-C#8>,?AE91 F*"Y6!=W)*
MK) !FO7M?O9K32V2T8"^N6%O:Y&<2-P&QW"C+GV4T :4<B2IOC=77)&5.1QP
M:I2:YI$4Y@DU6Q28':8VN$# ^F,YKS'X(ZU=VZZSX*U>0G4=(N79-QR60L=V
M/4!^<_[8JEKZJ?VI/#GRCFQ)/'?RYZ /:NHR**** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH *IZG?PZ;827,TUM$J\!KF81)
MD] 6/2KE4M4TC3];L6LM3LX;NU8AC%,NY21T.* /+_A+!:>!=)O]/U7Q%X<D
M%Q<FX22VU-6Q\H&""!Z=:9\6K6U\=6.FVFE>(O#D:VLYF:2YU-5SQC  !KMO
M^%:>"?\ H5],_P"_ H_X5IX)_P"A7TS_ +\"@#'N?$\EU>VHAU/PK8P/<Q2W
MTR:T))'1""54;%'( &2>F:YY[:W?XQGQ>^N^&6TXV_V<P'5%,A79MSC;C\,U
MW/\ PK3P3_T*^F?]^!1_PK3P3_T*^F?]^!0!PGA;3[7P/XXOY]$\4>'9/"U^
M=[V4NI*LD#>J#!!QR.HR.#T!J\VH?;? )\,ZSJ/A74)VM?(6Z.JIL4[<*[ C
M.Y>#E<Y(SQGCK?\ A6G@G_H5],_[\"C_ (5IX)_Z%?3/^_ H X76O"7A:\\'
MZ!IVG^,-)AU;0=KV=Y)=1[7;(9@P#9"E@".N,=^:O>+-2;QMX=70)]:\.:7!
M<.AOKE=528E5(;;$N!G) Y8C@=ZZS_A6G@G_ *%?3/\ OP*/^%:>"?\ H5],
M_P"_ H R3?Z'I,7AS3]$U;0#IVE2;F\[5$1ROE21\  Y.7W$DCOZU0\>Z7X1
M\73:;J4/B'1H=6TZXCDCE-Y'B2,."T;<_4CT/U-=+_PK3P3_ -"OIG_?@4?\
M*T\$_P#0KZ9_WX% &;J.K:+J_B>W;4-3\.3Z+;0MY2OJ2%_.;'SE,8X4%1S_
M !-ZUQ^H:18V'Q2L?%7A;6_"]K:1QB.ZMY-35//'(;  ('RD?BH->A?\*T\$
M_P#0KZ9_WX%'_"M/!/\ T*^F?]^!0!P6MP"]^+NF^,K37/"YMK&#R?(EU<*[
M\2 G(4@?ZSWZ5UD/BC[9XGM;B^UOPU:Z5;0R$1P:LLLDDS8 )RJ@*%W>O)_+
M1_X5IX)_Z%?3/^_ H_X5IX)_Z%?3/^_ H I^*/$&F:G:6]C9ZSX?FM)9D-ZL
M^IHA:$$$H  <[L8.<<9'>N-^(WAWPYXALM.;PSK'AO3]3M+@2BY;4$CPN.GR
M@Y.0I'TKOO\ A6G@G_H5],_[\"C_ (5IX)_Z%?3/^_ H S#XF2>ZT*XN=6\,
M^9;;FO"FKK@L4*_NQMY&3GG'I6;XTTOPCXFUK1-=M_$.C0ZIIEY!*9#>1XFA
M60,R'GJ!D@_AWXZ7_A6G@G_H5],_[\"C_A6G@G_H5],_[\"@#AO'%O%X@\?>
M'=>T_7_#(MM(D5RD^JJC2X<,0,*0.GO5NXL='\1^/;'Q/XC\3: D.F*!9:?:
MWZ2 .#G>[MMR<X. .PYX.>N_X5IX)_Z%?3/^_ H_X5IX)_Z%?3/^_ H EU;6
MO"&MZ1=Z9>Z]I3VUU$T4@%[&#@C''/!KB/!EY)X"TZ30H=<\.:QI:2L]I.=6
M2"6,,<E74@C&<G(/<_AV7_"M/!/_ $*^F?\ ?@4?\*T\$_\ 0KZ9_P!^!0!D
MZZ_A[QAX3O='U_Q-HBO=-OC-M=QD6Q&-NTD@O@C)) SDC %9FFZ[?:5X*3P[
M'K7AB:\@M_LMOJ/]K*L80#:KLF-VX#' R"1UKJ?^%:>"?^A7TS_OP*/^%:>"
M?^A7TS_OP* .1T;3?#_A'X>3:!HOB'0KN^N#OGGN-02)7<XR>-Q    %;GB[
M_A#O&_A>32]4US1XI6&^*1+Z-C!*.C*<C/OTR":TO^%:>"?^A7TS_OP*/^%:
M>"?^A7TS_OP* .(\36EIJWPCT[PA:>(O#OVN*WMHI9I=254!C"YQ@$G)'M76
M>%=8T+2O#>CV>H:YH0O=/LDL]\.H(ZD*J D$XZE <8[5;_X5IX)_Z%?3/^_
MH_X5IX)_Z%?3/^_ H X5+>)?C._C,Z]X:^P-#Y'D_P!JKYF/+"Y^[CJ.F:C,
M)A^,%SXTAUOPM):R0>2MN^L!7_U87)(0CJ.E=]_PK3P3_P!"OIG_ 'X%'_"M
M/!/_ $*^F?\ ?@4 <KX?L-#MO&VH^--<\4Z%<:Q<KY<%O;WJ>5;)M"@!B06.
M !G ZGCFL7P_9C1O&_B?6Y]6\*7=IK7F#[.=:"E59LX)V'/!P:]$_P"%:>"?
M^A7TS_OP*/\ A6G@G_H5],_[\"@# N->GU#1?$,=[KOA=;J_B-M9V\>K Q0Q
ME"-S,5!+98DX7G K1\23^$/&?A>72=9UK1HS*N08[^-S!(.C*Q(Y'T&1D=ZO
M?\*T\$_]"OIG_?@4?\*T\$_]"OIG_?@4 4_".JZ'X=\&Z;I$WB/19;BS@\HE
M;Z,*Y&<<YXS7)_#ZV@\+^+_$NJZAX@\-M;ZS.9E$&J*S1?.[8((&?OXZ]J[C
M_A6G@G_H5],_[\"C_A6G@G_H5],_[\"@#A_B';6_BKQ7X;U/3O$'AM;?1Y_.
M83ZHJM+\Z-@  X^YCKWKI+[5M'UCQ';2:GJ/AN72+>!O+1M41G$S8RY7&. "
MHY_B;UK4_P"%:>"?^A7TS_OP*/\ A6G@G_H5],_[\"@#SV^TBQT_XIV7BKPO
MK?A>ULTC$=U;2:FJ>>#D-@ $#Y<?BH-2ZS +OXO:=XSM=<\+FVLH/)$$NKA7
M?Y9 3D*0/]9[]*[W_A6G@G_H5],_[\"C_A6G@G_H5],_[\"@"GI^O7&L^+[/
MS-3\/I8Q0R>7;6>IBXFFF.,$C:O 7?P,]?R[:N>T_P ">%=)OXKZPT"PMKJ(
MDQRQP@,I(QP?H370T %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 445
M%<7$5K;O/.^R)!EFQT'K0!+16)9^,?#6H2PQVFNV$KSG;"%G7]X?1?4^PK;H
M ***IZIJECHNGRW^HW*6]K",O(_0#^M %RBHX)X[FWCGA;=%*@=&QC((R#6&
MWCCPNFW=KMB S^6I\T8+=-H]3P>* .@HJAINMZ9K'G#3KZ"Z,!"RB)LE">0#
MZ5?H **H:MK>FZ'!'-J5VEO'+(L2%LDLS'   YZFK] !16??ZWINEW5G;7MV
MD,][*(;>,Y)D<]  /Y]*T* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH *9+_JG_P!TT^H;H3FUD%L(
MS,5POF$A<^^ : /#M'TS4?%'P!TCP]INDS2W4\A,=Y(R)%;[;AF,F[.>@(P!
MGDUZ!XC\0ZWH%OJ15K&**PL%FMGNE,LFH2*K%P%5P5 V@$X/WL]!6EX"\.WG
MA/PC9Z%=SP7!M-X2:+(WAG9N0>F-V.IK,U7P=K%YK/B2:VU.T6SURR6V;SX6
M>6WVQE-J$$#:=Q;GN3Q0!8A\67L_B+PO:K%;BSUO3Y+L@JWF1,J(V-V<$?/Z
M=JQM8UV]UKX>_$&&^6W#Z:UU9(T"%0ZK"K D$GGYO6KY\'ZY GA2[M;_ $]M
M1T2W>U<2Q.(98W15.,'.1L!]^>E1KX'U<:!XMTY]2LY6UZ>657\EE\HR(J$G
MDYX7A?U- '7:%_R+VF?]>D7_ * *XSXCV\-I!X'MK>,1PQ>);)$0=  'P*[?
M2;::STBSM;@QF6"%8V,9.T[1C(SZXK!\9>'-0\1RZ)]CFMH4TW4H=0)FW$R-
M'GY.!P#GK^E %GQ-J\/AV.WN8;>-]1U2Z@TZ N2%9V9MI;'907/')QBJ,WBF
M\T+Q7#H^NM:R6UY:2W-M=V\31X,0W2(REF_A^8$'VQWJ]XL\--XHT:"!;@6E
M_:7$5Y:3@;UBG0Y!(XR.2.W!J"3PS/K>K0:CX@%MNMK.:UB@M69E_? "1RS
M')4  8XR>3G@ X_QAJ>K:]\/--UIOLD5A>WUG,EMY;>:D33(4)?=@M]W(V@<
M]>,GK;KQ%J-SXDUG1M-^RP/I=E'<%[J-G\YY-Q &&7"C;@GGD^W//MX"\3'P
M?#X6_M?3GL;.>%[2YD@<RF..0.JN 0,@#&1UQVZU!K'VO6/&FI_8=2\.-+9P
M1V4\&J1R(PR-[[=C@F-MZ_>R,@CMD@$.JZYJ'B+PWX"UJ6VMX[B[UR"6*%68
M* 8Y,!B03USR!TQ72:?XD\0?;_%&DW-I9WVI:5!%/:"T!A6X$B,50[V;:05Q
MG..:IC3M9\4Z?H<C#28#HVJ+<!K1G,%PL:D 1<?*OSE>^"AQD5-JO@G4]3O_
M !7,NH0VJ:Y916L;1[B\/EA@">F0VXY'''K0!)I/BS4;CQ;'H4TVGW?G::UV
MLUM&RK',K*K1D[F##YNH.1CFL0>//$Z^!(_%CV^D^1#>-#<VRI)ND3[08<HV
M["D<=0V>3QTK:L_"VOQ^)=*UN>]TL/:6#V4EM!;NB;258;22<9*]<<#H#5(^
M M6;X;3>%/MEEYLET9_M.&P 9_.QMQZ\=?>@#7M==UNV\=PZ%JJV#V][9275
MNUJKAHBC*"C%B0_##Y@%Z=*ZVN9N-!U&Y\<:9KY>U2&TM)+9X0S%F\PJ20<=
MBO3O[5TU !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !45S<16EK-<SN$AA0R2,1]U0,D_E4M97B?_ )%/6?\ KQG_
M /1;4 3:5K-EK5O]HL3.T)56622VDB#JPR"I=1N&.XS4XOK4ZB=/$Z?:UB$Q
MAS\VPD@-CTR"*R_![*G@30&8A573+<DD\ >4M>8W^OV-AXFT?Q['J<+-=7;6
ME[;B4$QV4F%B)7MM*JY'JY]* /:JSK37=.OM8O=*M[C?>V2HUQ'L8; V=O)&
M#G!Z50\0Z]+8:GHVCV7E_;]6F=(WE4LD<<:%Y'(!&3C  R.6'I7'PZM)X9\;
M^.M5U:5+A++3+24-$FPR*/,VJ1DC<3QGIT/% '?ZAKNG:5>6-I>7'ESWTHAM
MTV,=[^F0,#H>M:->9^)?[9EU#P'<ZC<6K)-J\3O#%"5\IS$Y 5BQR "0<CD@
M'CI6AI^O>*=1U_6K83:3#9:/J"1S,T,A:2 QAV ^;A@#UY!]!CD [RBO/[;Q
M;XAU"UT;5].T]KJSOI4,UF+-U,5N_(<2DX9E&"1C!YQCK4]EXPN-0\2W6D+>
MVEIJ%M?F)M-N82LDML&QYL;%AN)7YN >.,=Z .YKG+B3PMK.OQV%]IT$^IJK
MM$+W3F!*H0&*.Z8(!(Y![UDVGC"XO_$]UHZWMI9ZA;7_ )1TVZA*O-;!@/-C
M<L-Q*Y;@'CC'>K.J?\E9\._]@R]_]"AH Z]55%"J J@8  P *6BB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "LKQ/_R*>L_]>,__ *+:M6D90RE6 ((P0>] '$Z7!+X@^%VE:9I6
MHVD;OIMM%<,?WFU#&H9<*002,CVYK>\1Z&=?\)7VBMY"&[MS#EE)2,D<,!QT
M."/H*U(;:"W!$,,<6>NQ0N?RJ6@#A+GP3K%QI/A]SK4']O:"W^BWI@.R9"H1
MED3=GYE !(/O2R> [W5=0UZXUK4;62'6;&.TFAMK=E*%-V&5BQZ%L\@YQVZ5
MW5% ' GP;XFNK;P_!?:[I\G]BWB3QS+9ONF5$91O&_&2&[?6MG0?#EWIFLZ_
M>7=S;SP:O.)C$D94QX0)@DDY! ]JZ6B@#AO#W@[Q!H 328_$4<GAR%]T,)M_
M])6/.1%YF[&WMG&<<#':QJ/@^\UJ>U&J7%G*MIJ7VZVNTB(N(D$I=8@<XZ84
MMGH/NYYKL:* ..U/P?>:Y+;IJ=Q9RI:ZE]MMKM8B+B%!+O$0.<=,+NST_ASS
M45]=6]Q\6]!2"XBE:+3;U9 CABAWP\''3I7;5"EI;12F6.WB21LY=4 )SUYH
M FHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHJ*YG6UMY)W61E09(C0LV/8#DT 2T5QUG\3_"M_I4^JVMU=RZ?;MM
MFN4T^<I&0 3N(3C@C\ZZ?3=2LM7T^&_TZYCN;29=T<L9RK#_ #Q0!:HHHH *
M*** "BBLKQ#XCTWPOIC:EJTDD-FA >5(6D"9( SM!QDD"@#5HKE3\1O#,<%C
M<7%[/:VU_C[-<7-I+%%)D9&'90HXYY(KJ@<C(Z4 %%%8_B7Q/I7A'2?[3UB=
MH;4R+$&5"Y+'IP/H3^% &Q12(ZR(KJ<JPR#ZBEH **** "BHY9XH#&)9%0R.
M$0,<;FZX'J>#^59,'BK2+CQ9<^&(KACJMM +B6+RR $./XL8S\R_G0!M4444
M %%%% !15/2]5LM:T^._TZX2XM9"P21.AVL5/Z@U<H **** "BBB@ HHHH *
M*** "BD9E12S$!0,DD\ 4V*6.>%)HG5XY%#(RG(8'D$4 /HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ IDO^I?_=-/J&ZCFEM9(X)5BE9<*[)O"_AD9_.@#YA\&>*[GPQ\%]=5-)>Z
M@OKV6T-SO&R!GA1<N,9QC\SQQ7H45XWPG^!4-SIMY#J5S.P:"X4$Q;I3G(!Y
MP%'?J>N,XKI?"GPNL?#?AG4_#D]X=1TS4&+RQRPA6#%0N00?]D$<9!YS5>Q^
M$UM!X(O/"-YK%S>:7,WF6^^,+);/G.5.<8SSC'<^M %O0M0\32>([VP?[9<:
M7)IZRVVHWMJ(REST*D +E3G=T]1FMOP=:^)+/0$B\57UM>ZGYCDRVZX79GY1
MPJ\_@*@\/>&-1TC2OL6H>)+S42D!MX)/+6'RDQC/&2S# ^9B>GN<S^#O#<GA
M3P^FERZK=:FRR/)Y]R?F^8]!R<#\>I- &_1110 5Y_\ &W_DD6M_]L/_ $?'
M7H%>>_%B_P!"ET >'M<U>73HM0 <M%923LP1U;@J,+R!UH \PUS59M?\'^!_
M 5U;)I<5Y!;3)JER^Z-@$*@* .I)QR1CC/!S7I?B;Q+<>'O$?A/P=8S7$<=S
M&?/N8HA+-Y<:$*J@@C+%>3@XKC-5U7X<ZWX#L?#&H:]=.=/5%M+V/2IUDC"@
M#D;2#D<'H#QW%-UG6O!FLV.B/+XSU*/6]&/^BZHNDS;V7CAU*X8\#G([YZG(
M!LZUXS\:Z)X-2]U"PO42VU<PW5VD"+-)9#E9 I4JI/0G '';-5_&7C2\'PEC
MU_1]<34%?41&DD]I$QV$$A)$*8#J1U &>O>K;_$3PTUK:Y\8WLMY&[/-+/I$
MK1W 9=I1HPH 3H< @Y&<YSGF+R7X<W/@IO#47B2[MH9K]M0GDBTB8;I",81=
MN$4#  YZ#F@#O-1\2ZU<_$U/#IOGTK34TEKQ;A(TW7$F!SEU(VKD\#^Z<\5R
MTGCKQ>GP//BV34I(M2:[5$9K6((T>[;P-G0^OJ.N*Q/%_P 0(K[Q-;W&EZ[8
M-906*PXU?2IC"9-Q+-&NQR&( R2!QP">T\OCK3_&O@V[\.^,-7CL62Y0Q76G
M:;.RSQJ 1A2HVX/'('T[T =CI/B?Q':_%C1]"O\ 51?66J:0+QXS;I&(I-K'
MY-HSCY.Y/6L?QIX[\5>'[+4[Q[^.&_L]55(K*W$<T'V4@[?-.TE6;&<%@QYP
M *BC\2>"$\;:3XG?Q1=-/IUDMDL(TB<*Z!6!)XR"=Q/Y5AW4/P^N]+UC3V\:
MZU]GU"]^VA#IDA"29ZG]WEC@XZ@>V: .M\;RZA>?&/P3:1:M=6T$\3S(D80B
M%]C L RD$D<?,#UXQ5RV\4:AIOQA\36%W<"YT_3M$-X,V\2RDJ(FQO502/F;
M /'-8VL>)? NJZSH&L)XJU*#4='0QK.-+D;S5(P<KY> >O.._2BV\3> X?'V
MH>*9?$5U.U]:?8YK5])GVF+"C&=N<_(,GOSP.P P_$CQ%8^ -&\=7-YYJWNK
M-;SZ=Y2")8,N,(<;@P\O@ECUYS6[J7B#Q+<?%Z]\,66N-::>=,-TG^BQ.T;8
M'W25]?7/?VQR<5Y\.AIFGZ'/XDO)M L+\WT-FVE3ARQSA&DV\H"S<;03GK6G
M-XJ\$R>/KCQ:GB>Y2XEM#:" Z1.452N <XR3GF@#LOA#XGU+Q9X#BU#5I5FO
M$GDA:4(%W@8() XS@XX]*V_%^HP6FEQV4MXEHVHR?9O.9PGEH03(P)Z$(&P?
M[Q7UKSOP'XR\">!=!?2(?$%W=PF9IE=]+G5@2 ".%YZ5H_\ "SO"1\4#5W\1
M3-"MN;>.U.DS_("0S$-C[Q*KGC& ..] &-\$]6&BZ_KO@2:Z2>.WF:XL)58%
M9$SAL'W&UL?[U7=5\9^(GU3Q]G4&TM?#UNCV$ BC(FSN^=MZDL&P ,8'S#OS
M63K?B#P1JOCVR\76_BFZLKZS5418](G*R*,\/D<Y#%3C'%<]K?Q EN/&6IZC
MIVN:5]FDD06HUC2YG=0JCB+$;;5W9[@D\X[D [#Q'XR\7:1X,\%ZE%?2+J&J
MW"+<PSV\0#AP"%^Y\OU'.#ZUJ>+-?\5>!=%9K_6H-0NM5U..VLY8[,(+2)AE
MB$YW$8X!)]3GI7(7OC71/'.AZ(_BC67TS4]-NC.R6NFS2)*RM\K=. 0 <=>>
MW2N@\:^,OAWXX\.C2K_6;R%TD6:&XAT^?='( 1D ITP2,>_7O0!=U;QOXC\*
M:3XJO+JSNKFQM%A;2;N]@$;.TFU65P N0K'(X!(!YZ5H:!J_B>?5K>*1K^ZT
MF\TD3/?S6J1&"ZP2=GR@%",8!!YQSUKFG\7>"]4\*W>B>)/%NIZO]IB$1F.F
M2P[ I!5E54QNR <G.<4>&?&_AKP_I2Z?<>.-1U"*WA,-FLFD2HL*XP-V%R^!
MP,G&/PP 8*?$+QJWPIC\8-KP-S#J@MC +.()*F 2'^7/Y8[]>,=Q9^)/$%C\
M9-/\/7NJ"\L-2TS[68C B"%_G.$(&['R?Q$]:X(?\( / 3>$?^$NOOL9O/M?
MF_V/-YF<8V],8[]*W?\ A*/!3^/--\62>)[EKFQM!:"$:1.$=,,"3QD'+L?;
MCK0!;LO'WBCQ!8ZGK.B0W=Q+::O]G@TV&V#1/;+MW;W*Y#D-G[PQ@8'K;U#Q
M'XGN/BIKWANTUQK2PM]*-Y%_HL3O&VU#@$KZMWSQGO@C TO6_!6@Z_J-WH_C
M35;/2]1E\ZYTY-+E(+'KLD*93J1P,X[\ B>3Q+X(;QOJ?BA/$]TMQ?6361A.
MD3E40JH!!QDD;0?SH K:OXLUSQ#^SA)K%UJ$D=[Y_P!GN'A54\]/,"X; XR#
MSMQG'H2*]?\ !]M/;>%--6>]FNV:VB=6E5%* HN%&Q0,#WR?>O';6_\ AW#\
M-[KP5-XEOY;663S4N!I<RNC;@W3:0>1[<&O5O .J:?J?A>(:=JD^I16I%LT\
MUL8#E47@*0.,%?7J>: .HHHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHJ*YF-O;R3"&28H,^7'C<?ID@?K0!+
M17)V'Q T[4M$36K;3M6?3&#$7*VFX8!()VJ2V 0>W:N@TO5;'6M.AU#3;J.Z
MM)AF.6,Y!_P/MVH N4444 %%%8?B+Q39^&39?;;:[D%[<+:P&! VZ5L[4QD$
M$X/M[T ;E%8FE^*M-U35KC25\^VU.W02R6EU$8Y-AX#CLRYXR":VZ "BBL>Z
M\1VUIXHL- DM[C[1?122Q2A1Y>(P"PSG.>1V[T ;%%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%-D_U3_[IIU17,3SVTD4<S0NPP)% )7W ((H XCX,_\ ))="_P!V;_T=)7(>
M'M9GT"Y\7PZ7\ME<^)XK*T9<;8I)&Q+MS\N0 ,9XR1P1Q7>Z/X$.A^'HM"LO
M$>K1V$08*$$*N S%B-_EY')/(Y]"*M7'@30)_"#>&$M#!IQPR^4Y$B.#N$@8
MY._/.3F@#*8>*]-N-9E-]!!I9T]I+:75)D8VUR.Y*CF+&"<YP1Z56T?5]2/C
MBTTD7]_+8WFCO<>;=1J"TJNB^9&"-R@[CPP Z8%::^ 8KG0[[3-9UO5-5^U6
MYMA/<.H:*,D'Y< #.0I).2<#M3[?P08M9L-7EU_4[B^M+9[7S)/+ D0D$ @(
M!P5!XY/<D4 9OP[;7=:TJRUO4O$-Q.%ENH7M?)C5)0LSJK$@9!&WM@8P,=<M
M^*ID$/A Q*K2#Q+9[59MH)^? )P<?D:Z;POX<B\+:1_9L%Y<7, E>53.%W*7
M8LP^4#C))J'Q-X5C\3OIIGO[JV73[N.]A6 )S*F=I.Y3D<GB@#)'AK5)O',_
MB_49K"UDMM.:SLX(I&D0<EB\KE5[D\ =.]96F:YJJ>)?"5J=3N;R#5;>X6\G
M9%$$TB1!P\&0&"@YP<!2".O6O0;ZPBU+2KG3KLL\-S T$I!VEE92I^G!-<O:
M?#V.VFT*:37M5GDT7<EL7,8_=,FPH0$'\( W?>]^F #GKCQ%KD?PV\8Z@NJS
M?;M*U.[AM;C9'N"1N%52-N#Q[9K9U9B_Q0\$NQRS65\2??9%4E[\.+:\M]<L
MAK.HPZ;J\SW$UI'L"K*^"[!MN[DC.W.,]C6K)X4237-'U9]3O&FTJ%X8E81X
MD5P Q?"CDA1TQTH T=/L;RTN]0EN=3DNXKB;S((GC51;K@#8".HSSDUH5GZ?
MILMC=ZA/)J-U=+=S>:D4[ K;C &Q,#@<9K0H **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHJGJMO>76G206%V
M;.X<J!.JJQ0;AN(# C.W.,C&: +E%>=AM:_X6D?#?_"3:G]A&B_;MWEV^_S/
M.V=?*QC';%%]J&I>'/&?ABVU77IYK66WOC<;U55EV;?+)5%&6PX&!WZ"@#T2
MBN9O?$NA:IX.OM1BUUK.QP\+WL64D@<<'AAD,/0C-:1UFPL;:T22YGG:2 2(
M4A>61T &7*HI('(R< 9- &I14%G>0:A8P7EK()+>XC66)P"-RL,@\^QKE/"N
MI77_  D/C*+4-1DFMK"\C$;3LH$49A5ST   R: .RHK&A\5://=R6B7$OVE(
M3<"%[:57DC'\4:E09!_NYKG/^%GV!\"OXD6SO-K2M'%&;63!S*T<9+;<=@3@
M\$XZX! .\HK-GU[3[:WBED:<&569(EM96E*K]X^6%WX''..X]15-_&OAM+.Q
MNVUBV\B^)6V<$G>1G/;C&#G.,8- &]15'2-8L->TV/4=,N!<6DA8+(%*Y*DJ
M1@@$8((JK-XJT6WNTMIKT(SS_9ED,;^49O\ GGYF-F[/&,YSQUH V**R=0\2
MZ3I<DR7=TRFW4/.4A>18%/0R%00@QS\V..>E-O?%6A:=<6<%UJEO')>(9+<;
ML^8H7<2".,8''KVH V**PH?%VD7FAWFJV$[W4-HS)*J0R;U=1]TIMW#J.HZ'
M/2N&M=135O"FD^(]2\8:KHQGC0WBQHRI*[D,JQAE( !P,H#D<'KF@#U:BL'5
M?&GAW1+N:TU'5(H;B" W$D>UF98\@9PH/<CCKU/0&H9/'OA>-+IO[6C<6JHT
MPBC>0H&!8'"@DC R<=.^* .DHK!3QIX=DO;*TCU2)Y+[;]G*JQ20L-RKOQM#
M$<A2<^U6KKQ%I=G</!-<.&25(798)'1'?&U6<*54G<O!/\0]10!J457O[ZWT
MRQFO;MS';PJ7D<(6VJ.IP 3@53'B+2SH]OJRW#-8W+(L,JPN=Y<X3  SR2 .
M.<CUH U**R-0\3:1I;SK=W17[. 9V2%W6 'D>8R@A..?F(XYZ5.VN::FI6>G
MFZ7[3>HTELNTD3*HR2K8VG (/7N* -"BL.;QAH%O87U]/J216]A+Y-TTB,IC
M? .TJ1G.".@JSI7B'2=<GNX=-O$N)+-E6<*I&TL,CDCG([C- &G16='KFG2Z
MA>6"3LUW9H))X1$^Y5.<$#'S X.,9JD?&GAM;&QO6U>W6VOF*VTC$@2$$@]1
MP!@\GCB@#>HK&T7Q9H7B$71TO48YS:'%PI5D:/W(8 XX//3BG6GB?1[[4(;&
M"\S<3QF6!7B=!.@ZM&S !QR#E2>.>E &O16,_BK18KA(7O0H>?[.LQC?R3+G
M&SS<;-V01C.<C'6FWGB_0;&^N+&?44%W;QB26%$9W"DX& H))Z\#)X- &W17
M.#Q[X7:*RF75X6BO2JPR*K%,L< ,P&$).1AL=*EEOM/_ .$TCMSK<J7D=B[M
MIH8>64W+F5N.". .>AZ4 ;U%<U_PL#PKLC<:Q$4DF\@.$<J'W;<,<849X!.
M>QK6OM:L-.G6WN)F\]HVE$,43ROL7JVU 2!D@9]: +]%4-)UO3-=M3<Z5>PW
M< ."\39&:BOO$6EZ=+-'<W#@P;?.9()'6+=T#,JD*3D<$]QZT :E%9>J>(M+
MT;S/MMPZ^5'YLOEPO+Y2<_,^Q3M7@\G X/H:K7?C/PY8R1QSZO;!Y;?[3&$)
M?='QAAMSG.1@=3GC- &[16):>+] O]";6K;4X9-/5_+:4 @A\@!-I&[<20 N
M,G(XYIZ>*M%:WOYVOA$NGX^UB>-XFAR,@LK , 1R..>U &Q17.P>//#%RLK0
MZM$XCABF;"/RLAPF./F))QM&3GC&:DG\8:/#IFJ7RR3R#2UW74"VT@FC^7<,
MQE0PR.02,8YS@4 ;U%<=)XET[5O#>A7UWJMUH[WL]LR+&C(TLC;3Y0W+ED)8
M D<>];^H:]IVF2F*YF<RK'YK1PPO,R)TW,$!(7@\GC@^E &E16-<^+- M+6P
MNIM6M5M[]E6UD#Y64GI@CM[G@=ZET?Q'I.O274>FW8FDM&"SH49&0D9&0P!P
M1T/0T :E%<GX^\22>'M&@^SF5+B[NX+=9$A9]BO(JN00"-VTG /.>@-5[?Q!
MHGAB]O5O_$UR\5Q']KAL[U':2V11A\$C>0200K<^E ':45C2^*]%BMTG^UM)
M&]NMUF&"27;"PRKL%4E5(SRV.A]#3KOQ3H5C!8SW&J6R0W[*MK('RLN>A!';
MWZ4 :]%<XOCSPT\=VRZEEK1@LT7D2>:"02,1[=S @$Y (P#6SIVHV>K:=!J%
MA<)<6DZ!XI4/#"@"U163JGB72=&,GVZY:,1*&F9(7D6$'H9"JD(/=L5'<^+M
M!M+T6<NIP_:6M_M*QQY<M'Q@C:#G.X8 Y.>* -JBN9/Q"\*K80WQUB/[-*VW
M>(W^0[MO[P;<Q\\9;%6]2\7:!I-X]G?:G#%<I#YYBY9MF0,X /.6&!U.>!0!
MMT5P7C3Q1#J/PJU37O#&LL!%'F.XML!@0P!4[AE3S['I76W6KV>G+;I<ROYT
MRDQQ11M+(X &2$0%B!D9..,CUH T**PYO&.@0:,FKR:B@L'D\KS@C,%?.-K
M#*G/&#@YXJ]<ZQ8V<UM#<3-&]RK-$&C;D*,MDX^7 Y.<4 7J*YI?'_A9XK65
M=7B,-U*88I0C[-^XKAFQA<D$#=C..*O:=XHT75=4FTVROEEO(H_-:/8R[DSC
M<I( =<\94D4 :]%8[>*=%2_@LWO-LEQ*8(7:)Q%)(,Y19,;"W!& <Y!%4[GQ
M_P"%K5+EI=7BVVLOE3E$=_+; )SM!X&1EN@SUH Z2BN;U3QE9:=XBTC2!'<3
M-J"22B6*!Y$$:KG*E0=Q)*],X')QD5L:IJEGHNGRW^H3>3:Q#,DFQF"#U. <
M#WH N45DGQ+I(OK"R-RXN=03S+6,PR9E7&21\O8<GT[UG^)-=T<:'JL=UKEQ
MI*6S+#/=PJR/"YPP"DJ<D@CH#PP]10!TU%<Y?>+K6P\6V/AYH;IYKBW>=I5M
MY&4 %0,$+SDMR1P,<XS7.:!XRM='G\3KXCUN5TM]9D@A>92QCCV1XR$7"KEC
MR0!S0!Z-12*RNH92"I&00>"*XCPUJM[X[?4-42^GL]%ANGMK.*VVJTX3AI7<
M@G!/11C '.: .XHK#L8M1TK4-3EU/5//TI((G@EG"(8L;_,W$  X&TY../H2
M9[/Q)I5]?I8PW++<R1^;%'-"\1E3NR;P-X]US0!JT5BWOBS0].,YNK]8X[>4
M0S3>6YBBD.,*S@;5/(X)[CU%12^-?#D-Q]G;586G\C[2(XU9V,>0,@*#DY/0
M<GTXH WZ*R[7Q'I%[HD>L6U\DMA*<)*H/S-NV[0N,[MW&W&<\8JNOB_0VM+Z
MZ-XRIIY NU>"19(,C(+H5W*,<Y(QB@#<HK,M/$.EWTUG%;7#2M>6_P!I@VQ/
MAXO[^<8 Z=<=1ZBJ7C;Q.GA#PK=:N8?/F3;'!#G'F2L<*/IDY/L#0!T%%<]:
M:)JYL$DO?$-W_:;)EWA6,0H_]U8RN"H/')+$=ZFL]2?2=$TV+7KC=J;QB-Q%
M&7>:11\Q5$!)'&>!P* -NBL23QAX?AT.;69=3B2PA<QRR,&!C<<%&7&X,/[I
M&?:JW_"?^%1.\+:U;+(DZVY#;A\[#( )'(QSN''O0!TE%8VB^+-"\1274>E:
MC'<26I G3:R,F>A(8 X]^E+!XIT6YN[:VCO?GNL_9F>)UCGQR?+<@*_'/RD\
M<T ;%%<]+XZ\,P7[6+ZO#]I6X2U**K-B5_NKD#'IST&1GK5B+Q9HD]Y!;1WV
M7N)7A@?RG$4LBYW*LA&QB,'@'L?2@#9HKF=-\:6.HZ[K.G".XA33&5'EEMY%
M4MM+,22,*,8QG&>HR"*DT'5=+MO"%K?+KDVHV)+*E_<G,DQ,A4#A06.[Y0 .
M<#&: .BHK*M_$ND7(O-MX(VL@&N8YT:)X@1D%E<!@#V.,'M5.U\=>&KVXL8+
M?58Y'ON+8A'"N<9"[B,!B.0I()]* .AHJO?WL&FZ=<W]T^RWMHFFE;T51DG\
MA7)77B^31/ 1\6:G%.\MW$DL-K&C,L0?_5H<#C[PW,>ISC^$4 =K17!ZWXA:
MR\>>&93J5S!I-U;7C36\L9C!:,*%.TJ')RQP#G/&!73V'B71]3TB35;2_C>R
MB9DDD8%-C*<%65@"#TX(SR/6@#5HK,T[Q!IFJ7MQ96L[?:[<!I;>:%X9%4]&
MVN <'UQBM.@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH \\%S!_POQG\U=G_  CXM]^?
ME\W[1NV9Z;L<XZU9\12PCXL>#]S+^ZM[T,3_  %UC"Y/8G!QZXKNJ* /'I9X
M6\%?%")74M/?W+0J.LFZ) "H[Y((X]*U-62VN?[%N[#Q$=#UF#2T-O=2;3;W
M$9^]%(&X."H/J,D\XX]-HH Q?"-Y>7_A+2[J_L5L;J2W4R6Z*55#TX!Y (P<
M'IG%>=WD%UJEO\3K72P9KN:XADAC0X,RI''N"^N=K+QW.*]>HH \_P##6I^%
M?%&M:=J&G6FI3ZI9J^]KM[@FQ#*0RL9#M))PN!G/7M7)1NS_ +/T^G+!<&\T
M^X4W47DOF/%[O/;G"C<<9P*]MHH \PU[6['3O'5KKNJ'4$\/7^FK;PWMN9T6
M*59';#A,-A@PP2.<#MS5;5X=%L[?P?\ V99O:6#^(ENU6<N692C@S,'^95+$
M=?8\9KUBB@!,?*=N!GH17E?@O6M/B\.6O@[7-,DG\06$[*;*:U9Q(XD++.'*
ME0O.[>3QSUXSZK10!YSX?O[?0-4\8Z7XC81276HRWL!E'%W;R(H58_[Y 7;M
M&3T&*P]&T^XT-_A;I^K';=6HNVF60Y,(>)MBMZ8RJCW&!7L5% 'FVDW=M%J_
MQ'=ID6-Y4="3PX^SJI(]?F&.._%8VH3Q-^SQIEN&!G6*RC:(<N&66,L-O7(
M)/L*]BHH X)[BUE^-EK)YD3H= >-'!!7>9U8*#TR5R<>E0:5<VL?CSX@RR2Q
MJCPV@#L0 P6%@V#WP< ^AKT2B@#Q>&6&+X3> 8BRK+!JMDTB?Q1[9"7)'48!
MR2>F?>M'7)9=.UG4M4\-:F)+E[V-;WP]=*'2\;*+YD/\0)7!R,CY>>E>KT4
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
M]X%@0,=Z]>HH R_#4BR^%M)=6##['$"0>X0 _CFN%\ W5O\ #^TN_"?B"5;
M6]W))8W=Q\D-S"YR"'/R[ASE2<UZ=10!PWC\WGB3X?:Q#H4,ESA8W1E!Q<A9
M%9T3^\"JD9'!S@9YJMJ]U:^,-:\'7.AS"66TO?M=PZ?>MH?+8.DG]PL2J[3R
M>?0UZ%10!XC?:CH45IXJ\)W^LK8V=[J\DLDES;R^;&"ZLX7"E6!93M;=P""0
M:ZZ.^L+CXQ6=W#<PR6S>'2(YPP*$F96 #=,E>?IS6GIGAGQ#I$9L[;Q0CZ?Y
MCNOGZ>'N%W,6/[S>%)R3R4/XUTMC9PZ?8P6=NI6&% B@GG ]?>@#QB"66W\*
M0:E'!=7%EIOBBYN;R&T9EE%NYE42+M(; WAN.HKLM+U7P@L>J>)=-@N9X)(%
MBN+V<S-]H(^[$HE/S'U[#(&>N.]HH \R\%I_PA/B:;PW?B(0ZA&+G3YHV+K
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
MC// Y8XXSY;[0DTS6_"NHZE<66FS:Q),WFZ?.TJJLP=E#JI3!93ALY"GD9H
M]+O_ !WX<TV;R;K4"LOV4W8C6"1F,7'S !>>HXZ]3V-37GC#1+&U-U-<RFW6
M-)9)8[:218D894N54[."#SCCGI7/R7=M=?%_2+R%Q+:R:)(L<Z LA9Y$91NZ
M9*@D>WUK&>[L=&\4>)-(\466K/#JET;BSDMA<217<;QJABVQG&X;<8(Z>V*
M/1+O7M/LXXF,LDYEB\Z-+6)YV:/CYP$!.WD<].:HGQOX;%MIMQ_:D1AU(D6K
MA6(D(SD=/E(P>#CD8ZUQ5])!X2\6VEUJFG:C::#=:3!:PM923,+.2)G/E/Y1
MR1A^#SR..]/U&#3[27P7_9NF2V%D-9:Y\IT?<L9C<>8X/*;F(//J,X.0 #JQ
M\0/#C0W<@N[@O:/MGM_L4WGIQG)BV;]N.=V,>]:@\0:6^F6FHQ77G6UX ;8P
MHSM-D9^50"Q. 2>.,'.,5RNCW$,/Q,\9SRG9"]M9A9&4A7V(X< ]#C(!Q7&:
M0UQI'@_P%JUW9ZA)IVGQ7-KJ,=KYBS6YD(VN54AL#;S[-[T >G/XZ\.1:5+J
M,NH>7;PW'V:7?"ZO%+D#8R%=RG)'4=ZFL_%VBZA?7=E:W$LEU:P^>\7V:0,\
M><;XP5_>+GC*Y_6N \4KI%UX!U6\T/3;I4O[RT?SI8Y3+>,DR%FVO\^ H^\>
MN#V )Z*6:-_C+I\Z'="=#EB\U02F]I495W=,D G% &QX.\50^+M$&HQ6\\ :
M20!9870;1(ZK\Q&&.%&=I."<5@:CXB70/BI<)J.I77]G-HBSI; -(/-,Q7Y(
MT!).U?0G&>U6/A3(T/@J'3)H+B&[LIKA)TEA9 K&>1@ 2 #P0>,]13;Z>+2O
MB^NHW^Z"RFT(6\=RZ'RS*)RQ3=C ;&#@]: .CL_%&BZAH<6LVE^DUC*P1'16
M+,^<; N-V[/&W&?:LS4_'VD6.@ZQJ,/VB>;2E_TBT^SR)*C$97<K %5/7<>,
M=ZX2ZTC4=)TYO$*:=>OIY\32ZF]E;[XYA;/&8O,"@A@>2^W@X/..:U-6BTG7
M_!7BJ_\ #>F7TTMUIK1-=SI-YEPP!PBB3YFVCOTY &>< '96OB[2Y9=*M9WN
M(;W4D)MXGLYD\PA<M@LN.!SR>G-3VGBG2+U=2-O<2M_9I*W8:VE4Q$#)&"HR
M<<\9KEO$0?5?A]IVNZ3#.]YHS0W]NK1,C2>6!YB $ X9"XZ<FJ']C:S#XO4M
M#(;7Q7;YU-2<BV:-L[3]86\KCJ1F@#NI_$NFP6T4Q>X<2P^>L<5K*\GE_P!X
MH%W*/J!0GB729M-M-0M[O[3;W@S;&W1I&EQUVJH)XQSQQWQ7%Z[?1>'/B+=W
MNMPZG_9&I6<$<%W9&8K#)&7S&XB.>=^1P?YU0U&*U\,WWAW6(M%U&T\,K!<V
M\D5J9A+:^8Z.LKJIW@-MY';/(SQ0!V[>.O#::9%J#ZDJ6\ES]DR\;JR39P4=
M2,H02,[@,5;TKQ/I.M7]U8V-P[75J%:2*2%XCM;.&7>!N4X/(R*\^\11Z4_A
M:"ZT;3;F&WO-=M+DO*DOF7.V12\Q5_F P.IQG&>A!._%*C_&J29,F)M 2(2@
M'87\]FV[NF=I!QZ4 =+JWB'3-$GLH-0GDBDO91#;[8)'#R'HN54@$^AJ>35K
M*+4SISRLMR(3<$&-MHC!QN+XVC\36?XPT ^)/#-U81/Y5V,36DW0Q3H=T; ]
MOF _ FN42TUGQ?\ #/6M2:#[-K&M6/E10[ONHBD! ?1F,C ^D@]* .NM_%>C
M7-W:6R7+J]X";5I8'C2XP,_NW90K<<\'D<CBE7Q7HS6NIW(N9/+TMBEY_HTN
MZ$A=QRNW)&.<@$8KBM1F7Q?X;\*V&GQ2QZG;W]I-/"T95['RO]87!'RXP5&>
MN1C-5KJ[&F77Q(TVX@NOM=^CSVJ);NPE0VP7<& Q@$$')XH ]1L[N"_LK>\M
M9/,M[B-98GP1N5AD'!YZ&LF7QAH<-UY#W;#%T+(RB%S$LY_Y9F0#:#DXZ]>.
MM)X*8GP/H2M'+&Z6$$;I+&R,K+& 00P!ZBO,-?OWU#0M0#V%Y:W-KKT<DEA:
MV3K'&@N%/G,57]XSCYLY.<\#C- 'IEYXVT"QOKRRFO':[LU5YH(K>21P#G!
M526Z'.,X[XJV/$>DMH]KJR7BR6=WM%N\:LQE+=%50-Q/7C&>#Z&N7TF[A'Q4
M\07<F^.&33+4*\B%02I<LN2.H!&1U%<9H,EUH_AWX=ZQ<6MR=.TN6\BU"-86
M+V[2[ECD9,9P,GG'1O>@#MO"NL3:C\1O%EN+V\EM;>&T,<%RK)Y#,)-P"$#&
M<#G'(QR:U_$'BV#0=;T73'MKF5]1E=2\5O)($149CC:#EL@<#/&2<"L3PQ>Q
M7GQ0\374$=P;:YL[/RIS;NJ/M#Y^8C'\0^O:I_&[&T\4^#=2DAG:TMKV83/%
M"TFS? RKD*">3Q0!2M/%,6B>.?&"ZMJ5[+901V<D$/EO*8E:-V<JB*2%Z9..
M.,FNR;7M-%A:7J7'G0WBAK;R4:1I@5W955!)XYZ<=ZXW3;B)?'/CR>4,D<UK
M:"-G0@/MB<, >A() ('>N7TZ6;1O#W@36+ZUU&32[2PFL;\6OFK+:.Y0AF5"
M&Q\F#^'M0!ZYI&MZ?KMH]SIT_FI'(T,BLC(\<B_>1E8 JP]"*YO4-;O=8\?_
M /")Z=<O9V]G:"[U&YB \P[B D2$@A<YR3C..F#S6CX2327@O+_1[">WMKR;
MS#/<"17NFQS(1)\V.V3R<'M@GG;^";PE\4KGQ--;S2Z-J]FEO<SPQF0VLR8"
MEPH)V%1C..#UQ0!TSZ/J-IJNFS6&J7;6*3-]LMKB3S=ZF-P"&;YAABIQG'MQ
M4EUXNT2R=_/NV2&.;[/)<>2YACDSC:T@&P'/!R>#P>:GM=>M-3D1-,?[6A^_
M-&#Y<8]VQ@GI\HY^@KS731);_"/5_!FHV\K:_&EU:I;E"6N9)'=HY4_O*2X)
M;H,$G&* /0[WQ;HNGZJ^ESW;?;U@^T?9XX))'9,@94*IW')Z#)Z\<&J)^(OA
M8:?#?_VDQM9&V&46\I$)W;?WOR_NN>/GQ6%ID#Z9\3-'@NI#(UKX8%I+<$':
M91(AQNZ9(4G'7%<_*-_PH\=VZ12&:XU2]:&(1G=('DRA5<9((Y!'I[4 >D:E
MXRT'2=0DT^\OMMY'!]H,"1.[E,@9 4'<<GH,GKZ&EMO&6@7FA0ZS;ZBDME-*
M((V5&+M*3@1A,;MV?X<9KE/[3L;;XMZ9<W,Z1POX9(65^%4^>O4_P]".<<\=
M361MFT*QU#55TXC3]4\3B>*9K0RM9Q;<&Y6/!P2RG:2.-P.#T(!Z$?&.AIIV
MH7TMXT4.G/LNQ)"ZO"<9Y0C=T.0<8(I++QGH6H:G#IUM>,US/$9H 8)%690,
MML8KM8@'D DBO-[A\6WQ0A6'47-[:1M;/<6\FZ?-MMX) Y+=%X/L .-RYEC.
MO?#21,E((YO-8(<19MM@W?W<MQSWH [+3O%&D:M97UW97$DD-C(T5R3;R(8W
M499<,H)([@"M&RO(=0LH;RV+-!,@>,LC(2IZ'# $?B*X#6=(OK/QW+86,>=*
M\4Q WN#CR'BQYK8_Z:1'9G^]@UVTFKVL&N6VC%)OM$\#3(5A)C"J0""W0'GI
M_P#6H T**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** (KF$W-K+"LTL)=2HDB(#I[C((S^%8?\ PBT__0SZ]_W^B_\ C==#10!S
MW_"+3_\ 0SZ]_P!_HO\ XW1_PBT__0SZ]_W^B_\ C==#10!SW_"+3_\ 0SZ]
M_P!_HO\ XW37\+7)1@GBC7 ^/E+2QD _38,UT=% '#>'?A[=Z%826C>+-5=6
MF>8>0J1 %V+-D$-GD^U;'_"+3_\ 0SZ]_P!_HO\ XW70T4 <]_PBT_\ T,^O
M?]_HO_C=5=0\(ZG/:,ECXRUJUN,C$K^5* ,\C;L'\ZZNB@#F=-\'MI@C\OQ%
MK4@$IFD5Y8\2N6W,6^3N2>_>NFHHH HV^F10ZC/J,C&6[F41^81C9&"2$4=A
MDDGN3] !>HHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@!KAS&
MPC95?'READ ^XR,_G6'X0\.R^%M#&F/>K=JLTDJR"'RS\[ER"-QSRQK>HH *
M*** .?U+PY<7_B[2-=6_CB734F18#;EMXE"ALMN&/NC''YUT%%% !1110 44
M44 %%%% !1110 $9!%<EI7A36M(@2PM_%4S::A(19+.-IU4G./-Z$\]2I-=;
M10!#:6L-C9P6ENFR""-8XUSG"@8 _*IJ** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH QM>T?4=7:U6RUVXTR!"PN4@A1FG1@!C<P)0CG!'K]*
MU;>WBM+:*V@01PQ((XT7HJ@8 'X5)10 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% '/MX<N#XZ3Q*+^,*MB;'[-]G/W"X?._=UR!VQBN@HHH **
M** ,'0] O-.NI;S5-:GU>[(:.&26%(A#$6W%0J#J2%R3UVCIBMZBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHJ.>=+:!YI Y
M1!D[$9S^ 4$G\* )**YVT\<:%?Z>NH6<E]<6; E9X=-N70@$@X81XX((_"MV
MVN(KNUAN8'#PS(LD; 8W*1D'\J ):*0D*I)( '))[53O-4@L;RQM94G:2]D,
M<1CB9E!"EOF(&%&!U- %VBHY9DAC=VW$(NY@BEVQ[*,D_@*IZ'K5EXBT>WU7
M3I&DL[C<8W9"I(#%3P>1R#0!H4444 %%%% !1129&XC(R.<4 +1110 4444
M%%9FO:_8>&M+;4=2>5+9652T<3/@L0!G .,D@9.!S6G0 45D3>)M,BNI[9'N
M+F:W.)UM+62?RCUPQ12 V/X>OM27'BG1[?P[+K_VOS=-B4L\L$;2%<=<JH)!
M&.<@8[XH V**BM;B.[M(;F(DQS(LB9&#@C(K.L/$FG:E-JD-JT[2:8X2Y5H'
M4JVW=@ C)X]!SVH UJ*JZ;J$.JZ;;W]NLJPW$8D02QE' /JIY!JU0 4454U+
M48-+TRYU"<2/#;H7<0H9&('7"CDF@"W13(I%FB250P5U# ,"#@^H/2GT %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %(WW3]*6J.L7JZ?IDLY=XSPH9;62XP3
M_L1_,: /-?AE>Z_:_!_3&TW3+6=5$^QS=$/CSWR?+V8)'.!NYQ[UTNN:EK-C
MXTT#0=+GLK>ROK:X.&MBQB,2KC'S $?-P..G?I6!X9N'\*^&;?0['7)G@M]_
MERS>%KTO\SLQSA@.K'M4XGL?[=T#5&U74Y'TJ"6)Q)H%V6N&E \QR0HVDE<@
M 8&: ,SQ%KNN7?PM\8Q7.H@7FDW[V+7,$00W$68^HYVDB3!QZ5U^LZKK&C^(
M_"NGK>0S6VH7,L-R6@ =L1LXP0< < =,\=:Y::RTJ[T+Q1I=SJFI%-=N6NB\
M?A^[4P.=N.JG</D7CCOS5^^O+?4;_0+VXU>_:?29FG8_\(Y=@3,RE2  /E&"
M<=3[F@"]X1.HR^//& N=2DGBM[J&-8VC4#:80P QT W'Z]^36)X*UR?2_AKX
M0L;2-GNM3GGA0JJDHJM*[, Q )PN!DXYSSC!TK*_L-.\4:QJ]KJ6IB'4RDCV
MKZ!=-MD2,(#NV E< ';@'(ZXXK%32M)3P5INA+K.KQWNE7!N;#48=!NE:)]S
M'YE*$,/F((R,C% &MJVO>,]%\.>*+N:%4CL(EGT^]NXHR\JX^='2-\!E/1L8
M/I5JZU?Q/9^*= L?[0LI(=<@F 1K4@6KQQA]P(;+\$C!P,^G2LR]E35_"VI:
M7JWB#4[F\OXA ]R/#ETB11^B1A>I[DD]O0"K-U>65UK?AW4VU&]#:,DB[!X>
MO,3>8FQCG'R\#CKSZT /A\9ZKI6G>)8-1>*_O=+U"&SMYEB$8E\_9LW*#CY2
M_.",@=NM:,5YXOAUFXB\AY-,>S:1+N\BB#03KT7;&X+(1^(/>N>GLM#U"/Q-
M#J-_J<L&NR1S$0Z%=QO;N@4(RMM.<;5/3J/PJWI6I3V]LZ:OXFU34Y4B:*V8
M^'+F)4R,;W 3+MCCJ!R?7- $&G^+/$YT#P=X@NKVTD@U:\@M+BT2VQQ*2-X?
M.<@@' &,<<]3?TB;6%\>^.76\DO&LX[;R+5D4!\PNZQ@_P (#,?KGFLA+6PC
M\+>'M$75[_;HMW#=),?#EWF7RB2JD8XZ\G^57VGL4\0ZYJEKJ^K6Z:O;I'+$
MN@W19)$C,:NK[.  <XQG('- &IX+\4_\)%=J$U?S98[9OM^G7, AGMI\IT7
M.S[XYSVY-;7B6]O;)+#[-<P6MO+<A+JX<@R(FTX$2D'<[,% &#UZ&N6M;W3#
MXEL]>U*XNY[ZTM7MEDM_#]W"90VW)?Y6SC;P.@R?P?XDU'3]:O\ 1]0L=1U.
MQO-+G>6,R:#=31N'0HP9=B\X/!SQS0!G7?C?7HOA]XIU.WGA^V:-J3VD<L]J
M5:6/,>"R9&U\2>F..E;_ /;6LZ3X\MM-U2]MKBPOK">Y58X-AMFB*Y .26!#
M=^X[=*Y.ZTNQN=$\1Z4=?U8PZW=_:G9_#ER6C8[-W1!G/EC'0 $\'K6W=WUA
M>^*M-UN>^O2+.VEMVMQX>O,2B3&XYQQ]T8X/XT 8WB_4M3\2?!Z?Q";M8;:[
MDAD6R$2E5A^T*%RWWM_ ).<=1CO7IVO7,]GX=U.ZM1FYAM)9(AC.7"$C]0*\
MIDTBW'A.Z\*6_B+4DT1Y ]LDGARZ>:!1()-F_: RY!Q\H/O@8KT*/QEI*PJD
MIU.1MN&;^Q[H;CWX\N@#-^$D<:?#'1I4.][A'FFD)RSR,[%B3W.?Y5Q>L/):
MZW\6M.M\BQ;25NG0?=29H.3[%N2?7%=#I=Y9^&XI[/0+Z\ATV21I8K6Z\/WD
MHMF8Y8(5"_)DD[3TR>:(U\-#0-;T^:?6I;K6U<7U\='N1)(S+MX'E8"J.%7H
M!^)H (M7\2^&SX4N+N[L[O1]4DM[![6.W*/;-(G[M@^X[^1SD#V SQ8T66X@
M\1?$::T>-+B.XA>-I4+J"+93R 1G\Z@M;NPD_LA-8OKZ\ATEEDMHX?#]Y$'D
M52JN^5;) )P!@9.?0!+.ZLK.^\270U*^9M:(;!\/7@$)"!!V^8;1[<_E0!8@
M\8:G)X/\&W<C(ESKLT,-Q=;!MAWJ6) Z;B1M&>,GOTJ>RUOQ,^K>+K"*:QND
MT=%%F\\/EF61X_, DD#!1MZ'"C@@Y%<CK&JZ7H_@_P /^'9==N;2WM) 'OKO
M0IA ZHIVI)'(OSDD@@ X^7/& "6>L6VOZ%J.@MKJ7^C7UM(AO-)\/W$)MYLK
M@$*&5MP))''W>O- '6:1XCU&X\80Z(-2^V6]UI+70N3;!0DRNJDQD !XSNR.
MO3[QK"T/5]=TSX+:AKT.IK/>Q-=S W, ?D3R;CP1R?R'I5FSEAC\2Z9KEYKV
MISW%I:/:2I'X;N8TD0LK?+\AV\J,]<]MM5H[2PB\%ZIX776M3-G=F40LWAVZ
M)A21R[ _+\S98X/ ]J .L;Q!=W_B;3O#EM/]FEDTO^TKJX5 S!=RHJH""H)8
MDDD'@8QSD<WJ_C?7].\.>+X!):_VOX=FB'V@P$K/#+@HVW.%?!.>HR.G/$US
M/IQU/2-9L[_4(-7L+8VCRMH%VT5S">J,FT$<C((;@^M5M5MM'U70-<LFU#4H
M[[6Y4DO+P:!=D83:%5$V\ !0!DGJ3WH Z*+5M<T_X@6&DZA=VUU9ZG9S3)'%
M!Y9MWC*\!LDL"&[]QGCI5/PIXMGUW5(+6?4OLVJ1%_[1T:Y@$;Q<'!B. 64'
M'.6R#GCI4-SJ%E=>*])UV34+X&PMY8#"OAZ\ D\S;N.<<?=&.#^-1:>+*]UC
MP]-J5_=WEWI;%+>X&@W4$DI93&/,=@0%^;)Z G!.!D$ ])HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** &O&DJ%)$5U/56&0:$1(T"(JJHZ*HP!3J* "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBN$M=4\0ZAX^\0Z##JL,
M-OI\$$L#O:!V)D4G#<C(!';% '=T5RGP_P#%-UXKT&YN+Z"**[L[V6RF:#/E
M2LF/G3/.TY]3T-;=KKNDWUZUG::E:3W*KO,4<RLVW.,X!Z9XS0!H45G3:_H]
MM<&"?5+.*4-L*O.JX;&=O)ZXYQUQ1=Z_H]@$-WJEG '02*9)E&4/1NOW??I0
M!HT50O-<TG3W5+S4[.W=HS*JRSJI* 9+<GH ,YJ*XU_28[&*X.KV445S&7MY
MFE4JZX^\.>0,CGI0!J45Y5%XN\02_"W3-=&I1F]EU06\TH@3$D9NC%@#H/EQ
MSC_&O2-1UC3-(0-J-_;6BD$@S2A.!U//89'- %VBJ5SJ^FV<44MQ?VT4<R[H
MV>4 .N,Y![C!'/O39=:TN"U@N9=1M4@N%WPR&5=LBXSN4]Q@@YZ<T 7Z*CM[
MB&[MH[BVE2:"50\<D;!E=3T((ZBJ=UKFDV-T+:[U*T@G)4>7),JG+?=&">_;
MUH T**Y/QAXLM]#O-(TT7]O:SZA=K%+(\B!H(=K,7PW')7:"1CFM+2GN=,TF
MXN-:URWO+82-+#>NJ1 0$ KO(PI(Y^8  C'% &U168?$6B+';2-K&GA+O_CW
M8W*8FYQ\AS\WX5D>.=?DTSPIK<NDZE;Q:K86IN#'\LCH.Q*'H#ZD4 =5161I
M.OZ;?M'8IJ=I-J:0))/;I*ID7(&25'(Y/ZU/-KNDVU^EC/J5I'=NP187F4,6
M(R%QGJ1VZT :%%<]!XMTO4?$.H^'K._@2_M(T&XL#F1M^553]XJ%!..F?8UE
M> O&4.J>%M%.M:O9G6K]9&$3.D;RXD=1M08[+C@=J .VHJAJ&MZ5I+*NH:E:
M6A8 @3S*G!.,\GIGC--O?$&C:<[)>ZK96[I%YS++.JD)D#<03TR1S[B@#1HJ
MM+J-E#I_]H2WEO'9;!)]H>0"/:>C;CQ@Y'-1'6M*&GIJ!U.S%E(0J7/GKY;$
MG  ;.#DT 7J*H7VMZ5ICA+[4K2V8@-B:95X)P#R>!GC-2OJ=A'>P64E[;+=7
M +0P-*H>0 9)5<Y/'/% %JBJUIJ-C?O,EG>6]PT#;)5AE5S&WHV#P?8TE]J-
MEID(FOKN&VC)P&E<+D]<#/7B@"U16?\ V[I'D6D_]J67E7A"VS^>N)B>@0Y^
M;\*@7Q5H#Z9>:E%K%E-9V6?M$T,RN(R.QP3SZ#O0!KT5BZ/XITK6/#MOK4=W
M;QVTD2.^Z9?W)8 [&/9N0,5./$>B'37U'^U['[%&Q1[@W"A%8=5)SP?;K0!I
MT54L]4L-1DN([*]M[E[:3RIUAD#&-_[K8Z'VJE'=H/$=[NUZV>&*V4OIV$#6
MY!.9&;.[!&!@\<4 ;%%9,?B?0)KBUMXM:T]YKL$V\:W*%IL$@[1GGD$<>AJO
M:^+]'O/%-[X?BO(3>6B1EP9 -SMNRBCN5"Y..F: -ZBL\:YI+7XL!J5H;LL4
M$/G+O+#JH&>H].M:!( ))P!0 45GVFO:1?SM!9ZG:3RJGF%(YE8[,XW<'D9[
M]*@/BKP\K0*=<TX-/*88A]J3]XX."J\\G) H UZ**S[?7=(NKT6=OJ=I+<G=
MB))E+-MX; SSCOCI0!H450NM<TJQG,-WJ5I!(I4,LLRJ5+?=SD\9[9ZTR?Q%
MHEL$,^KV$8>-I5+7"#<B_>8<]!@Y- &E169/XCT2UM(+N?5K*.WG0212M.H5
MT/\ $#GIR.>E6+O5=/L+9+F[O;>&!_N2/( &XSQZ\<\4 6Z*S_[=TCR+2;^U
M+/RKQ@ML_GKB8GH$.?F_"JP\6^'&LKB\77M--K;.(YIA=(5C8] 3G@F@#9HJ
MK_:5C_9ZZA]LM_L3*'6X\P>65/0ANF#5=/$.BR:?+J"ZM9&SA8I+/YZ[(V'4
M,<\'V- &E16=;Z_H]W?RV%OJME+>1)YDD"3J71?4KG('(_.J?A[Q=I'B:6^3
M3;N&4VL[0X$@+.%"Y<+UV[B0#T./>@#=HJG)JVFPZ@NGRZA:I>NN];9IE$C+
MZA<YQQ44.OZ-<6MQ=0:M8RV]L<3RI<(4B_WB#A?QH T:*Q/[0AD\11M'XAM#
M;"Q:5M/7RR6&Y2)]V=P4 X].<UR^O^/XK_X?:]K'AC4H8[JP+[#A9&(5MN[8
M>@)S@D4 >AT5FZ?KNF7UT]A!J5I/J$,8:>WCF4R)TY90<CDU!XG\3:?X4T:3
M4M0E55!"1H6P9'/ 4?U/8<T ;-%<5J/BA[;QUHR)J]K_ &#=6-U/*P*; 8]H
MW&3T^8]QTKJ;75]-OM-_M*TO[::QP6^TQRJ8\#J=V<<=Z +E%4K#5]-U4RC3
M[ZWNC"0LHAD#%">F0.E8WBKQ--I-]I.BZ;%%+K&KS-';B7)2)%&Z21@,$A1V
MR,^M '345S>H6WB2PL1/8ZHM],KH98;BV4!DW#?Y>S!!VYQG=Z>]:M_K>EZ6
MX6_U&UM6(W8FE5.,XSR>F>] %^BJ=QJNG6DD$=S?VT+W&?)6255,G&3M!//
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
M.0,YW."?^^<#Z8KN)+.UE5%DMH7"#"AD!VCT'I2?8;,NS_98-[9RWEC)SUH
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
M?C3K$*0+.WPW4>4O/Z5B:GHVKW^HI91W&GP>&WC43VZP-Y[D-ED!SM",, \9
MP3ZYH M^&8)%TQK^Y0I=:C*;N96'*[@ B'W5 B_\!KG?&C2^'O$^B>*[:VDG
MSNTN[BB&6D23F+\I0!_P.N[IK(KC#J& (.",\@Y!_.@#S'PM8:AINO77@J\4
MR6L%PFL"95Q&8V^8QJ.V+@$@?W0:UM)>!/C+XC56C#'3+4L 1G.Z3)/YC]*[
MC8H<OM&\@ MCD@=!^I_.HOL5KYC2?9H=[9#-Y8R<]<F@#Q>2XA/[-VI$2H1]
MJF&=P[WI(_3FO6KB[T0:[IL-PUH=5ECD:R+*#(4 &_8>H&,9QUJY_9]EY9C^
MQV^PG.WRAC/KC%2"VMU>-Q!$&B!6,A!E >H'ITH EHHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBL[7=;L/#FBW.K:G-Y5I;+N=@,GDX  [DD@#ZT
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
MFUPJ;9]@RRC:Q(8 YPP% '0450U;5[71K6.:Y+DRRK!#%&,O+(QPJ*/4^^
M"20!5*T\3V]SJMUI$EG=VVJ6\'VD6DNS=-'T#(P8J1GCDC!ZXH W**\U\)6T
M?C":^U#5K"\CO+/6IWM[T2HK1B-]JP@JY;;@8*XVGDY).:Z#6_%%[IWC71-#
M@TR>>*]CFE>5&CRP11\JAF&,%@23CMC/- '545SFK^,K/2+>]NVL[RYLK!]E
MY<VZH5A/!/!8,VT$9V@X^H(%6_\ B!I]IJ<FGV^G:IJ%RMDM\BV5N'\Z)FP&
M3D9[_EZD"@#K:*Y"7X@V:G5U@T?6+B722OVJ..!0RJ4W[OF8=NW4]@:EB\?:
M;-<:1ML]0%CJS+':7[0A87D9=RIR=P) /.W&>] '545REKJVC1^+/$;06-\-
M3M+>!KQ]I(E3#[ B[O9N0!U[U#9?$;3+V/1KA=/U..RU>18;>[EA41B5L[4;
MYLY..H!&>,]: .QHKE]3\=Z=I@U*5[6\EM-+F2"]N8E79"[;>Q8,V-ZYP#U[
M\TV;Q1>K\1HO#J:9.]M_9YNFF5H_FS(BAN6!"K\V>Y)X'&2 =517(:-KWAVU
M@\3ZE#%<6,5I?.=1DN=WS2A%R57).,;0  ,GH*T$\5VZ:O9Z;?V-[I\]\C-:
M&X5-LQ499049L,!S@X]J -^BN*F^)FF16%_?#2]7>UTZ[>UO9%MUQ 5(!8Y;
MD9/09/&2 ,9[1'61%=""K#(([B@!:*Y>X\=:;;6']J/;79T83>2VI*JF%3NV
M;B-V_9NXW;<=^G-97BS4YY?'/AW1GTNXO--GCNII808BET51=O#. 0N\DAL<
MX(SB@#O:*P/+LO WA.4V]O?7-C9*\OE(_FR(F2Q W$9"CH,]!4J^);:33-(O
MHK6YE3561;=$V%OF4N"?FQC:"3@G@4 ;5%<W>^-+*SMKZ\6SO;G3["5HKN[@
M162(K]_@L&8+_$5!Q@]<'%E/%%C+K]KI$23227=F;VWG3:8I8QMZ'=G/S#J*
M -NBN2N?B'I5IX?U#69K2_6#3[YK&X3RE+)(&53T;&W+ 9S6WH^L?VNMTW]G
M7]D()C$/MD/E^:, ATY.5.?8]00* -*BN=U?QA::1!?7)LKRZM-/;;>7%NJ%
M83@$Y!8%MH()V@X^H(J*3QQ8?VR-*M+*_OKE[$7\/V>)=LT18 ;69@._4X''
M7.,@'3T5Q)^)NEC0UUG^S=6^PI(8KR4P*/L;!]A$F6YP>NS=@5H:GXVL].UZ
M31%T[4[O4%M?M2Q6T ;S$W;?E)('7/)P..N2 0#IJ*\O\;>(K#Q7\(M0U73V
MN8C#<11/%)F.2&03HK(Z@]<'IR.:[R^UR&SU*/38;>>\OY(3.+>#:"L8.-S%
MF  R<#G).<=#@ U**Y*X^(>DV_AR;6S;7SV]M<FUO(EC426D@8*1("PQR1R"
M1R#TYK:NM92TO[2R-I=2RW,4DP\H*VQ4V[MWS9ZLHXSR: -.BN)3XG:4^C6F
ML_V;JJZ7/.8'NF@4+ WF&,;QNS@L.J@XR,X/%:VG^++:]\0R:)+8W]E="W-U
M";J-56>(,%++AB1@D<, >>E '045S$GCC3H)--DFMKN/3]2G6WM-0*IY,CMG
M9T;< V."5 /XBJ=Q\2-/AM]6G32=8G329FBO#';J/*"J&+_,PRH!Z=>#QCF@
M#LZ*Y#4?%]Q%XLT#2['3IKFTU&WEN?/C:/\ >*JC 4,PP!O!)..V,\UOV6J?
M;-3U"Q^PWL/V)D7SYHML4^Y<YC;/S =#Z&@#0HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "L/Q?X9MO&'A>\T.[E>*.X Q*@R492&4X[\@<
M=Q6Y10!YG\,_A%#X U&[U*;4S?7DT7D(5B\M40D$\9.22H^E>F444 %<+\3Y
M3!9^&95B>4IXBLF\M/O-@MP/>NZK&\0>&X/$7V 7%Y=P"QNH[R(6Y09E3[I.
MY3D#/2@#FM4L-5U+Q1>>)-'LW66RT6:ULQ=1F,W%P[;@-K8.U<#K@$M[&LO3
MK359?%GA#5VT'5@8[:XAOI[MDWB1U3DC=\J AL  #T%>H@84 DDCN>]##<I7
M)&1C(.#0!P%[H%U'\2_)M&3^R-7C2^U&'/*RV[*%('HY,8/J$:O0*Q?#_AJU
M\.Q2"*[O[V:7 >YO[@S2E0257<>BC<< >IK6N(1<6TL!>1!(A0M&VUER,9![
M'WH X.#0+JW^)5Y9P,G]AW)CUF>'/*7()0#'HS*LF?6(U8L;>^\,^/?$-W<6
M=U=:;K/DSP3VT1E,<B)L:-P.1G@@XQ[UT6@>'K;P]:-##<7EW*Y!DN;V<S32
M8& "Q[ = ,#KZFM:@#RB3PMJNB^%]#N1837$]MXB.KW5G;X=XHW,GRJ,X8J'
M7(!ZYQ70>'(M2;XB^(=2N-(N[6SOK6T$,LVT<H'R" >OS#@9QWP>*[>B@#C_
M !KI%EK5UI\%_8ZCMC262#4].#^=9R_*!C9D_,">Q'RC-8D+>,+>T\,V^L6M
M_?VQ%PM\]GM2=CN_<>80PV@KRV#UZGKGTNB@#QR70]:'PJ\3:&N@W<=W-JDD
MEM"H4B1&N XVX/0*.IP/3-=1K;ZQ?>)Y;:32;^ZT>;3A]D$&(T,Y+;A/D@X
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
ML>AZAX2UKP?,EC=ZG;6.DR:;.]HH9ED/ED,02,*2I&>W>O2J* /'KS2-=E\
M^+[ Z%>B\OM?:ZMXU"MYD?GQN2"#Z(W)P#QC->O12"6)9 &4,,X=2I'U!Z4^
MB@#R^&RN] \2ZU9WW@M]<M]1O7O+*]AAB<#S,$QRER-@4YYYX/2M>VLKRV^)
M\%[)8.EG%H LVE@A/DK,)0^Q1UQ@<<8[=:[FB@#R.?1]6E^$WBK2ETJ\^WWN
MH7,EO 8CEUDFWJ<] ,>IX_*MA]16V^,D,[VUVT;^&U!$<#.Z?Z0?O(!N]N!7
MHE8H\-P#Q<?$GVV[^UFU^R>5E/*\K=OQC;G[W.<YH X'6/#.J?\ "O\ Q2(=
M.G>^US5A>PV:*"Z)YL9&[L"5C+'GOCK7075M>Z7\2$\2+:75UI5_IJVDWE1,
MTEM(KEE)0?-M()' .#UKN** .+T#PL+B+Q5+JELR6_B"Z=OLSXW+#L" GT9L
M%O49'>H_A[9ZC;Z5-=ZS*+B>TW:;;RQ@MYD$#LH?'7<QSGUVK72:[H::]:16
M[W^HV0CF67S+"Y,+M@$;21U4YZ?2KUI:06%G#:6T8C@A0)&@[ # H \G_L?5
M_P#A20T3^R;W^T_MV_[/Y7.W[9YV<]/N<]?:NEU6QN=0^)%C<I:W:V+:/<6C
MW/DD"-Y&4J#GGH#].]=S10!Y=X/M;VRL['P]J/@5%U*QV0G5#!$;9XT.!*'S
MN+;1T SGKCG$B:?J)T/XC0?V;>"75);AK)3"?WP> 1J1Z?,.^*]-HH \X6RU
M2UU7P'J*:3=SI9Z=-:7*(H#0R-'&!N#$8&489Z?I76Z=K[WOB'4M(ETR[M6L
MPKQSR@;+A#QN7';/'/\ CC:J&*UAAFEF1,2RD;W)))QT&3V&3@=!D^M $U%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 445S?C[Q._@[P7J&MQ6XN)8
MJQQMG;N9@H+8[#.: .DHKQ[X0?%?5O&^LWNDZQ:VXEC@-Q%-;H5  95*L"3_
M 'A@^QKV&@ HHKE?&VNZKH,>BOI:VCF]U2"RD2X5N1(3R&!XZ8Z'K0!U5%<)
M9^(O$VG>+KSP[JT=C?SRZ<]_ITMLA@#LIP8F#,V.2.<]/T9IGBO5'\3Z-I-Q
M=6ES_:5E-),T$)V6\\84E4<$K(H+$$9)!'7F@#OJ*X/3_%FL?V3XCMM1:S_M
M_3+H6T,44+*DGF8%NV"Q)#E@.O'/I7:JEU]A"-/%]K\O!E$9V;\==N<XSVS^
M- $]%<%I7BS6;KPQ?QW1LT\36NHG3C"L+>4)"X"-M+9*%"'SGH#Z5I0ZSJ6M
M:[K.DZ;=6]L=(6*.2>2 R>;.Z;ON[AA ,>Y)/(QR =717G-KX_U*^T_PW=+!
M;02W>L'2=1MV0ML=0^XHV1C[@QD'K[5T.D:W?W7CCQ#HMR8&MK"*VE@9(RK_
M +T.2&.2#C:.@% &]>WMMI]H]U=RB*%,98^I.  !R220 !R2<53TG7].UJ:\
M@LY9//LI!'<0RPO$\9(R,JP!P1R#T-<M\45O#INB?9[F.*-M:LE96B+$MYHV
MG.X< CIW]16BFK7]YXJN?#UK<V\5Q9V<=Q>78M\EW<D(JH6X "DDDGJ ,=:
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
MGZG!);.OWB6)5E^C \CO4L\>I-\;HE2]@5!H;NJM;DXC^T+E?O\ WC@?-^E
M&[-X[\.PZ8FI"_:6S,*3M+#!)((XV)"N^U3L&0>N.A]#70QR)+&LD;!D<!E8
M'((/0UY]X4M[_P#X65XSCENK9X4:S66,6I =3 2 OSG;C//7//2NC\2Z]+I4
MVDZ=9B/[?JMU]G@:0$I&H4L[D C.%' R,DB@"_!KNG7&NW&BQ3EK^WB$TL7E
ML-J$X!R1@\^AK1KS6/\ M.S^*/B!Y+N"6XB\/Q/!*8,#:)7(#J#R<YZ$<8JT
MOC+5W\+^"M7Q:!]:O+:WNX_*; $H))3YN"-O?/6@#T"BN#U#Q3KE\FLR>'H"
M\NG7+VT,#6C2+<N@&\,^X;<DD#'3&23G [&WEN;S289C$;.ZF@5C'(-_DN5S
M@@$9P>.O:@"W17E?A?Q/J>E?#>PU"[NHKV]U/4WL[7S(BN)I+J12SD-RO5L
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
M]?T^ZU^ZT2*20WUK$LTJ-$R@*QP""0 >AZ9K3H YWPIX>NO#RZJMQ=PW(O\
M4)KX>7$4V&0@E>6.0,=:KW_A?49O&$NM66JQ0PW-B+*>*6W\QD4,3NC;< I.
M[N".,X-=510!YW'\.-1MO#GA^"UUV.+6M!9OL=X+;]V8V&&C=-V2" ,G-:>K
M>#+[7_#QM]3UH_VPMQ'=V][;P[$MI8_N;(R3P,MG)R=QYZ =C10!R4GAWQ!J
M/A[4K/5]:M9KR\M'M$>&U*0PHXPS;=V68\<D@<< <Y74?"%QJ7P]@\-R7\:7
M5O% L5TD1V[X2I4E">AV#(SWKK** .0MO"NK2^+H=?U35+29O[.:PGMHK4JC
M*SACM)<D=!R<YYX%5O#W@W7M $>E+XD$WAVW?=! ;;%P$SD1&3.-O;.,D<<=
MNW!!Z$&EH X!O >K6EGXBTK2M8M8]'UGSY/)N+9GDMY)5(<(P8#:2<\CBNOT
M/3YM*T*QTZ>X2XDM8$A\U(]@8*  =N3CIZUH44 <5!X,U&VL-:TB+5(!IFK7
M4]Q(X@(GC68YD13NVGJ0&QQGH:LZCX2NDUO1M3T"[M;)M/M'L##<0-*A@.W&
M,,I!7:._-=910!P#?#N\D\*:]HLFLHS:EJ3:A%,;;F)S*L@# -AN4&<!>IKN
M+-+F.TC6\FCFN,?O'CCV*3[+DX'U)^M3T4 >=7WP[U6YT3Q!H,.MVT6EZI=2
M74>;4M+&TCAV4MNP5!!Q@ GU%;T?AS4E\:Q>(7O[5RFFFP,(MV7=EP^_.\XY
M'3GCO73T4 <!_P *^O?^$3NM).JP?:CJG]J6UPMN0J2>;YFUEW'(SQU'6KB^
M$M;D\2W.NSZW;K<W&DG3RL%J5$;;F8,AWY&"1UR3STX [.B@#D#X+_M'7(]5
MU@V;3K8RV4S6D1C-TL@ )DR3P #A><9ZU%X:\*>(=$6WTVZ\2K=Z)9D?9XQ;
M;)V5?N(\F<;1@=!DXQTXKM** /.7^'>K0>'-9\,:?K5K'H=\9&@2:U9I;;><
ML@8, 5R2>1GD_6N\L;>>UTR"WEF2:>*((9 A16(&,[<G'YU:HH Y?PGX8O?#
MM]K<]Q?07*:I?/>E8X2AC9L#;DL<C 'I3M7\.:C=>+M/U_3M3AMWM[62TDAN
M+<RJ4=@Q9,,NU_E SZ5TU% 'G@^'>I)X(/AL:U R+?\ VI)FM3D*)O. (##)
M+=3P,=!WK5N/"NJ6_B^3Q'HNI6UO->P)!J%O<P-)'+L^ZZX92& XQG!%==10
M!SO@WPY=>&-(FL;F^CN]]U+<*R0F/;YCEB#\QSR?:G>-?#UQXK\*WFB07<5J
M+M0KS/$9-H# \ $>GK7044 9XM+O^P?L330?:O(\KS0AV9QC.W.?PS7)Q^ ]
M0B\->%](75+8_P!A7D5R)3;-^^\O< N-_P N=QR>:[RB@#FK?P]?V_C34/$
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% #?*C\WS=B^9C;OQSCTSZ4ZBB@ HHHH **** "BBB@!LD4<T9
MCE171NJL,@_A38;>"V0I!#'$I.2(U"C/X5)10 4444 -6*-'=U159^68#!;Z
M^M.HHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
MB2KL3G."?EZ#&,8P,=* *.A>'I]$\57-RNJ6ZVMY:Y&EV\#)&'5AF9<N<<,
M0 ,Y!J/Q@UROB#POO5YM(:YF6]MHU+M(?*/EDH.752"2,''!QQ6OX?\ "FB^
M%X9(M(LS"),!F>5Y&('0;G).!DX'3FN?\=:1+JFK:8]WX=GUC2;>.0G[#<B*
MXBF; !&70E=H/ ;KU' H YW4='O;#P#XZOI9=2MH&:>33(VNYD,4(4$8CW81
M=V[ P#CKQQ5O5+6+0(_#26\UXL?B"_M8=2GDN7;>!&2%&3A-YP#MQD#'2M?1
M/!EG-:7UO/8:G::/>1+&^G7NHO*SG)RQVR-L&.,!N>X&!737/A[2KW0UT:ZM
M?/L%556.61F*[?ND,3N!'8YR* ..NK8Z7\1)-(L4(TG4='EN+BS7_5Q2HP"R
M*.BD[@.,9(SU%8=O<S/\-?AQ=M<2FYDU6QC>4R'>ZLYW*3G)!QR#Z5ZA8:+9
M:;+)-"DCSR*J///,\TC*,X7<Y)P,DXZ9)/>L:/X=>%HH8X5TP^5%<"YBC-Q*
M5B<$D; 6^09.<+@9QQP* .:M?#=IXC\<>.-.U&ZU![6%[0PQK>R 1LT.[</F
M[$D@'@9Z5O\ PPOK_4/AYI<^I3-/<CS(O/<Y,JI(RJQ/?*@<]^M9^D^'6NO'
MOBR\OK*_M[2]^S+;2I.\2RHD6QP=C ]1QG\.]=U;6T%G:Q6UM$D,$2!(XT7"
MHH&  .PH \GN=(MM1?XG3W#3[[:4RP>7,R!)%M58/A2,D$#KG]3F]:ZG=:[J
MGAC2;ZXMV2[\/1WNR[C9TN9SM#9 9=S <@'/WB<<9':+X1T51J8%O-C5,_;?
M]*E_?9&.?FXXXXQQQTJOJ'@3PWJFDV.F7FG>9;6  M/WT@>$   *X;<!@#C/
M8>E '+C31H]OI7A^]UR?5ICJLIMK%%VK(@B+^1*S,Q,<88-DD\;1@\5EB2X'
MPQ^)%I,0J6EW>10PK(72%/*1MB$@?*"QP,#KT%>@3^"O#UQI]C8OI^V&PD,M
ML8IGC>-SU8.K!LG)SD\]Z:O@;PVEMJ-LFF*D.I'-TD<KJ). #T;@' R!C..<
MT <GJ6FV=UXX^'K3P*YEL+I7))Y"PH5'X$G\ZAFT>UU?Q9\2%NS,5BBM618Y
MF0!A:Y#?*1DC'&>E=S=>$]%OHM.CN;-I1IV?LI::3=&",$;MV6!'!!)!'6E7
MPKI"7.I7"P3+-J:A;QA=2_O0!@?Q<8' QCCB@"#P+>3ZAX!T"[NI6EGEL(6D
MD8Y+-L&23ZFN$L?#5OK]MXY6\O\ 40UGJLXM)/MTH^SL(D8,/FYP?[V< <8R
M<^GZ7I=GHNFPZ?81-%:0+MCC+L^T>@+$G'M7$^&?# N=3\5MJ^GWT,6H:D\T
M:M,Z1W$!10 RJV#R&X(Z'!XXH R[&_O=4F^%%]J)9KN=9WD9ARY^S-\Q^HP?
MQJIXHG']C:SK.F337$MMKD2C4II-CQ,)HT:"$ 9,:Y*G) .3PW6O3;SP[I=_
M?6%Y/;MY^GY^RM',\8BR,'"J0.G'3IQ6;<_#WPM=_;Q/I89;^7SYT\^0*9,@
M[U4-A&) R5P30!@R:3;ZK\6=8L+V6[ELGTB"5K?[5($+&1P> W X' P.^,UJ
M?"VYGNOASI;W,\D\B&:+S)&W,529T7)[X50/PK8@\+Z1;:F^I06\L=V\ MVD
M6YD'[L=%QNP .V!P>:L:-H>G^']/%AID+06JLS+&97< DY.-Q.,DD_C0!QMC
M!;^,]3\96&ISR)=6=W]EMMCX>TB\M2DL?]UBQ9MW? '08I;&>/6?'S:%J$[7
MUA::+!/;"?D719L-.PZ,>% ..,G&,UT&J^!O#FMZNNJW^FK)>!0C2+(Z>8HZ
M*X4@./9L^E7=0\.Z9J5U:W4\#)=6H*P3V\KPR(IZJ&0@[3Z=* /.8=*U36_"
M'BW1H;FXDGT;4Y4TBX:1B^%"N(BV<L.=G/8^U;MAKL7B+2W\5:; "NGZ4QAB
M _Y>&3>R$=]@"J/]]J[2PT^UTRU6VLX1%$"6P"22Q.2Q)Y)))))Y)--T[3++
M2;0VMA;I! 9'E*+TW.Q9C^))H \]T/2)M6TOPQXFM]?MX'S#)<7$<3F2\#X5
MX9#YF"2QQT^4C@#&*3PCH]E/<>)-4O[V^SI6O79@D>[D(A147.03\PP?XL]!
M75:9X!\,:/JSZGI^EI!<LQ<;9'V(QX+*A.U3CC( J_IWAO2M*6^6TMF5;^1I
M;I9)GD$KMPS$,Q&2.M 'G.F,]MKO@&YLO.%O?F=7O)I?W^H(8&</,HXY(##)
M)&>W2GZI::KJ6G^,;/RKR;7_ .TB-+N[;=B*,A#&JRKQ'M&=P)'4DYS78V_P
M\\+6JV:QZ7Q92&6VWSR/Y1((VC+'Y>3\OW?:N.3PLEQJ-Z^L>"]6;5+BZDE:
M[TW4A%;2 L=K<3(5^7&<KG()YS0!J7$<EUXWC\*W$\#00Z0D\4-Z9)Q.[2,)
M&R7!8KA<9)(R<8KI?!^FW&C:"-,NM7.JO;2N@G92"JYR$)+,3M!QG/MVJI/X
M$TK6=&TRU\0PM?75BF([GSW$J'N!(I#'L,GKC)YKH;"PM=+L8K*R@6"VA&U(
MUZ#O^)SR2>2: /)_&<X.A>*M7TR::XN++4HU_M&638UI(KQ*88 !DJ,G=G:"
M6/WJZ'Q=IEG=?$[P7YT ?SC>B3D_,%A&*V[OX?\ AB^?46N=+#C46\RY3SI
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
MW;11RS00M(L<CE%; S@D X_*O,Y_^2;_  P_[".E?^@5Z3K?_( U'_KUE_\
M030!!X7U:77O"NE:M-&D<MY:QSLB9PI90<#-:U>)+H<.G?#7PAXFTMKB/7T^
MP)%()W)G5V53$5)QMP3P!V^M;B6!\;S^++2[U"TMKVTU"2".22W9I[.-0/*D
MC;S%V XW9 Y.<YH ]1KG?&GB"[\,Z(FH6MK#/FYAA<2N5VB214R !S][U%75
MN9K3PF+J.8ZA/#8^8LNS;]H8)D-M[;CSCWKRK4K:QU/X-Z/X@DV7&ISW5I//
M>'_6/(TZAU+?W020%Z#:,#@4 >U45YM-;?\ "7^*_%FBWMS9K+:^5';1W%N9
M'AB:)2)8CO7:=Y8[@,Y"Y/ %5]3L]5LH=/NXT@\8V5GIJP7<$AV3D;FQ<19R
M"S!2.N3L&#S0!ZC17FFFZKIFM>*?#FDNS3:'-X?%S8PW8&)Y=P4[U/#,J#..
M<9)]ZK>)M#LM,TWPUIMEJ5]-#'XFAA):X;,2ON8Q C PO '4C'7B@#T>[?4E
MOK%;.*V>T9V^V-*Y#HNT[=@ P3NQG/:LKP[X@N]7UKQ!87=K#!_9=RD"&)R^
M\,@?)) ]1VKFM5T*P\/>,_ MKIB2P6YO;LF(SNZ\PNQX8GN356S\+Z5XF\4^
M/(M665HTO8=C+.R"(_9T^<8(&X>ISC\3D ]1HKQSPWJVHZQ%X-TO7+F K>:5
M/*GV^$RI=RK(%3<NY=S>5\PSG[Q.,X(N7EO)X9;1O#<FL&ZTR_UYHYPJ&-;=
M"GF):@EF.PL5XST..AH [6V\07<OC^\\.RVT*6\-@EY',KEF?<Y3!& !]T\<
M_6M74GU)(H#ID5M(YG03"X=E BS\Y7 .6QT'2N-TG3K/3/C1J<5E;QV\<FAP
MR&.,;5!\YP< <#H.G?)[U/\ $M/]$\.RAY%9=?LE^5R 091D$ X/XT =Q17G
M/]AV.K_%C7[*_66XM'TNVD:!YGV%B\@Z9Z<=.G?&<5J_"NXFN?AKH[SRO*ZK
M+'O<Y)5)75>?8 #\* .QHKQWQRT%QHGC74]/+SW%C.BM?7#@/:2H$_=V^!D
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
M$S6B[(&!9&1?[N5()'L>*Z"B@".WMX;6WCM[>)(H8E"1QHN%50,  =A4E%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %<=\2M)-[X7.I6UNDNH:/*FH6X*YW
M>60SI[AE!&/7%=C2,H92K $$8(/>@#R(:W;V'C4>*+&RBDTSQ':M:6AV<RW2
M ,A/IYA+I[[ 35[6_"^G6GBSP!I#1;H"MY%,%)038MR3N ]23GUR17H2:/IT
M=I8VJV<(@L"K6L>WB(J"JE?H"13+W0M-U'4+6_N[42W5H2;>4LP,1/7;@\9[
M^M '%QZ+I^C_ !6T.PL+?RK1=#N(Q$79@%$D8 ^8GUKEAI&E+\)?'3KIUF)8
M[[4%C80KN4)(=H'' 7C'I7KTFB:=-K$>K26P:_B38D^X[E7NHYZ'T[U%'X9T
M2)M19-+M0=2W?;/W8_?;OO;OKW]: .(OGM;77_"FA@:=::9=6,LB136P>"6Y
MQ'@%0R@MM+$9[MTSC&7XC\.VVC>&DLHM2:Y1?$=JZQPJ8DL_,D0F) &.  00
M,\9]Z]$N?!OAR\T./1;C1[633HCNC@*<(?4'J#[YS3CX2T Z5;:6-+@6QMG$
MD,"Y55<'.[ /+9YR><T <UI&G6FB?&*^LM-A6VMKG0X[F:)/NO*)V7>?5L=^
M]/\ B7:17$WA(OO#-K]O$621E.TA\C(/'0<]>*ZM-"TV/5_[66V_T_RO)^T%
MV+&/^[DGIGG'KSUIVI:+IVL-;M?VPG-M()8=S$>6XZ,,'AAV/6@#S&_\WPIJ
MGQ"C\.0"V$6D6]W%#"/E24B0-(%]<#)]<<U<UFTM;'0?!FN>'41+^2]LXUFB
M^]=12C]XLAZOD98DY.1FO0(="TV#5)]3CM0+V==DLQ9B74= <GD#L.U16'AG
M1M+F22RL(XC&6,2@DI"6^]Y:D[4SDYV@=: .1\(Z1I9\8>.%-C:HPOT1"L85
M@K0*6 (Y&>2<=>:YK0-26U\!?#JUOI-ND7M[+%>LY^5S^],:.?[I?!(/7'->
MK'P]I']J7.IBPA6^N4$<UPHVNZ@8ZCVXSUQ4/_")Z#_8+:$=+MVTICG[*PR@
MYSP#TYYX[\T <;XM@L/".D:S/I-R]O'=7ED^H0KS#:PM($=E1<;=Z@[L')]N
M*UM)\.V5CXH_M.'4[)8[ZP,;V-A;^5#.@((F(#MR-P7=Z$"N@L/#6BZ9H\FD
MV>F6T6GR B2#8"LF1@[L_>R..:KZ7X/\/Z#9W=OI.CVMNETI695!'F#!^4GD
MXY/';)XH N:%I^F:5HEK8Z.J+IT28@"2&08))X8DD\D]Z\T\<+97UCX[NK1!
M//9P(LUS=L#]FD2,,J6X R.H).1\QXSS7HOAK0;?PWHL>FVJ(D2N[B-,[4W,
M6VKGG SCWZ]ZCN_"'AZ_OKJ]NM'M)KF[C\J>1TR9%QMY]\<9ZXH XVYT^TU;
MXD>&Q>H;A+G0IFG1G)64@Q\,,X(Y.1T/>L!+YM%\)W.F12-!I'_":-ILVUB!
M!9E\L@/\*_P_1C7JD'A;1+:ZM;FWT^.*:UB\F!XR5\M.ZC!X![^O>A/"NA)8
MWMB--A:UOG,EU"^665SU9@3RQXYZ\#TH Y9-,L--^-=C]AM8;82Z%-N2% BD
MB:, X'&<<9]AZ5Z#6'8>#O#NF7<%W::3;I<VZ>7%,P+NB^@+$G_.*W* "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH ***K:AJ%GI.GSW]_<);VL"[Y99#@*
M* +-%<]X8\<>'/&/GC0]22Y>#'F(49&4'H<, 2/>NAH ***R]:\1:5X>CMGU
M2Z%NES,L$3%&(+L< $@<?4X% &I16%;>+]'O;-;BVEN)=TLD2Q+:R^:S)]_]
MWMW8&1DXQR/6L_5O$WA[4_#4-X=<N[2TENTB6:T#QRB57'[IAMRN3\I! X-
M'6T5AWOB[1;#59=+FN93?Q0?:#;Q6\DCLF<94*IW'/89/!]#5+_A8OA<V-M?
M+J#M:SL$\Y;:4I$Q;:!*=N(SNX^?% '4T5Y]J/B)= ^*MRE_J-X=/;1%G2U4
M/*/-,Q4E(T!).U?0\9[5T,7C;P]/I5AJ<6H>99WTZVT$J0N096.T(V%^0YX^
M;% '045EOXBTN/5+K37N'6\M;<7,L9A?B(G&X'&&&01QFLRS^(7AB_ :VU!G
M0VYN5?[/(%9-P3@[>6W%1M^]R..: .GHK+A\0:=*+TO));_8D62X^TPO%Y:G
M)!^8#(^4\C/2F67B73+_ %5M+CDFBOA%YX@N+=X6>/.-RAP,C/!QT[T :]%9
M>K>(M,T.XLH-0FDB>]E$%OM@D</(>BY52 3Z&IY-7LHM3.GR2LMPL!N&S&VQ
M8P<;B^-H_$T 7:*Q+?Q9H]S=VELMQ(C7H)M'E@>-+C S\C, &XY&#R.1D4J^
M*]':TU.Y%Q+Y>EL4O?\ 1I-T)"[CE=N2,<Y /% &U14%G=P7]C;WMJ_F6]Q&
MLL3X(W*PR#@\]#7!-J;>+/%_B#0S>ZQ8)9Q6R6<MI'/"8Y&5W9W( '90 _RD
M#CJ: /1**P(/%FC)]CA>^D=;AQ;PW<D#+%/(.,"3:$))!Q@X/;-1:EX\\.:3
M>W5G=WSK<VH1IHTMY'*AC@'Y5.1[C@=Z .DHJKJ.HV>DZ?-?W\ZP6L*[I)&Z
M =.W).<# ZU0A\4Z3-+>Q&:6*:RB6:>*:W='6-LX8*1D@X/3/3% &S17-6GC
M[PW?3:=';WSL-1.VUE-O((W8@D)O*[0Q /RDY]JT-/\ $6F:IJ5_I]I-*]UI
MY NHVMY$\LGD<LH!R.1C.10!JT54TW4K75[%+RR=W@<D*SQ,F<'!X8 XSWJA
M?^*]'TUKG[3<2>7:,%N98X'DC@) /SLH(7@@G/0$$X% &U168?$&F#5[72_M
M)-W=Q--;J(V*RHH!)5\;3@$=^]8^L^/=,T_PMK&M6@GN_P"S)'MY8EMY%*S
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !7&_$B&=]'TFYAMIYTL]9M+F98(FD=8U?Y
MF"J"3CV%=E10!PEY,\_Q5T&]6TO5MAI=PCR-;.%1G9"JL<84D*>#R.^#7-O#
M<O\ #+Q[:K87WVB[U.^>WA-I)OE61\H57;D@^M>OT4 >?:DSS>,O %Q':W;0
MP1W/GR"UDQ%O@"KO.WY<L,<U@Z!%;6VGR>$?$'A6_O=4AGD6-F@=[6[4R%DE
M+_=4<C.>F/7BO7Z* .)TP2#XNZW,;>Y6"33;>))F@<1LZLY8!R,$@,.]4-'T
M6]L/'%[X?5%/A^*==;AP?N,Y8"''8"56D'^[7?7L$EU8W%O%<26TDL;(L\>-
MT9(P&&>,CKS5#0=$.BVKB>_N-0O)B#/=W.-\F!@#    '0#U)Y))H EU]MOA
MW4OE=R;:10L:%V)*D   $FO/9-/U.X^"N@)9:?<2WNF"SGFL'C:*27R2I>/!
M .>"1ZXXKU.B@#RZ]L['QIX<UG_A'] O+2_ETV2W^U7\#PODX(@!?D@D'./E
M'KS6YH7B/_A)[6UMAH=_9ZC#"R7,EW:-&MFQ3:=CL/F).  O;DXQBNUHH \D
M\)"T.E:;X9UCPE?MK>G,D1\Z!VMLQG G$A^3&!GUSP,U><2#6?B?*]O<QPW%
MC%Y,LD#JDNRV96VL1@X/'%>FU2UBP?5-'O-/280_:H7A:39NVA@02!D<X- '
MFL4*^)_A]X'TJQAF:ZA>PGD<PLHMTB4%W)(P,@$+_>W#&1S70^%_.LO'OBZV
MGL[M/M=U%<0RF!O*:/R57._&WJ,8SGVX..ET'2VT30;'2S/YZV<"0))LVEE4
M!1D9/.!6C0!Q/B^&\LO&7A;Q"L$UQIMDUQ!=K"A=HA*@"R;1R0",$CH#1I=N
M6\?:YXI5)DTUK"&U4^2P-PZEF9U7&2 "J@XYYQTKMJ* .+^%*2V_PWT>SN;>
MXM[FWB9)8IX6C93O;LP%97BBYO+K7?$NERZ;?HDFF!;%K&U;_3F*/GS)E' 0
MG 4L!R>N0*])HH \AL[U;/4OA2]W;W4'D:9<P2++;L&1E@A4DKC(&01G'OTY
MJ#QAITA\/?$KQ D3Q66HQ6L<&]"AE,0 :3!YP2V >^W/0@UZ/J?AV34/%6D:
MX+X1G3%E6.'R<AQ* 'W'=Z*,8Z>]2>+/#_\ PE/AN[T5KHVT5TH2218]S!00
M>.0 >/>@#GM5A7Q+XH\)W%A#,%TR62ZN9GA9/)0Q[?+.0/F9B/EZX4D]JI>&
M]/N]1\+^.M-BBN+2YO\ 4M0:W>>!XMRRC"."P&1[BO1+=)([>-)I%DD5<,ZK
MM!]\9./SJ2@#RFYAN?$GPPTGPLEC=VVM1-:6\L<D#+]F,+IODW8V[=J$@@\Y
M '-:6D:I::=\3/'8NA+AOL)&R!I-^(/NC:#EN>!U/;O7HE8.D^'9-,\2ZSK+
M7PF;53$9(O)VA/+78NT[CVZY[^E 'GFFZ)>>'[#X>V=S970:VU"XN9TB@>06
MR2"0J&*@@8WJ#[YKJ_$@D;XF^#94M[EX;=;T32I [)'OC4+N8# R0>IKMJ*
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
M \#R;-Q564J<#(YP:=HVGMI6C6>G-.)_LL*0K)LVEE4  D9/.!0!Y-XAGO\
M4]#U5)M(U2*]MM;CD^QVME(L*PK.I\W*C$S,!N)RQSR  ,UUFF3L/BGK=]):
M7D5M+I=LJR/:R!2RERR@XP2 PX%=W10!YAX9\-S:W\$[?1IHI[+48O,D@,\3
M1/!.LS/&V& (YV_@373>!9+W4]%7Q!JD*PW^J)&[1@Y$<:KA%!]"=S_]M#5_
M7M"N-;>U$>M7UA;Q[Q<0VNT?:%8 ;22"5Z'D8/)[X(UXHHX(4AB0)'&H5%48
M"@< "@#G_&MK87V@K:ZE;WDEM+<1@R60;S;=@<K*NT$C:0#GL,U2\"_VS$=5
MM-1O7U*R@F1;'49H?+DN$*98-P-VTX&[OSZ5V%% '#ZB[:9\6;;5;J&X73Y-
M$>T%PD+N@E\X/M)4'!V@GGK7-:KH-_%X4U_58["XVWGB"'4TM$B/FB!)(\OL
MZ[B%9L=<=>>*]=HH \V>_P#M_P 29]4BTK4)].D\-O"C26<B+*WFEMARN5R
M0-P&>V<C*>$[:[T;Q#96VD7E_=^&Y+61Y+74(&\W3"-I5%=@&YZ;#R N>>M>
ME44 >+RP7;?![4[(:=J!NY-:,J0?8Y=[(;Q9-P7;G&P$YKI]7AFO_B=";>*Y
M2*;P_<6HNOL\GEI([J5!;& < G\*]!HH \I\(O9W%AI.@ZIX2OQKFFM$C_:(
M'-O&T>!YZR'Y,8&1CDDX'K4EO:W5AXCMKSPU+J$4=WJI74M$O(&:%5+G?<1E
M@-@XW@@X.0/:O4J* /+8K6ZL?$D-[X:EU");K5BNI:)=P,T.TR'?<1EA\G3>
M"#@Y Z\5U7Q#TZ_U/P5>0Z9#Y]W&\-PD&<>=Y<JN4S[A2*ZBB@#@] U31-2N
MTU>U\-:E;3VD#^?<7EI(LD((YB3.2[$]ER./4@'*TY+KPSXQA\0+IMPVG>)=
MQN;:"TD9]/DX*N0 <;@!YG3YAGD"O4:* /.M&U6ST_XC>/!=+*0[V;*$@:3?
M_HX^48!RW^SU/YUS=EH>H>"],\)7NI:3>7EA;VUU!>V]H&>2S\Z42H=JG) P
M%..F/I7I>D>'9-+\1ZSJ[7PF;56C:2+R=H0QIL7:=Q[=<]_2MZ@#ROQ%!:S^
M%H+C1_#]Y:Q7.M6EP5%I)YTP212\KI@LHP#][DXSW%:.I-N^)FH7;:;=W5F?
M#+0D"WDV3.)&<Q;L8W%3T]Z]#HH \ITW1]3BDN-$T'4;Z[T*]TJXC1-1A99-
M,D*@(@D8!L$G[AY 3-3>$KBQU&#2-,OO"6H1:YIS1B7[5 _DP/'@&59#\O(!
M*XY.0.F37J%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5D:_X
METWPU%:RZD\J)<W"6\;)"SC>QP,D# _'TXS6O7%_$>*>:QT-;>TNKEHM:M+B
M06]N\I6-'RS':#@ 4 :MMXMLKRW1H;/43<2/(B6DEL8YF\L@,VU\849')('(
M'4XK*U;Q5X;U;PO'>7%SJ"6AODMV%NLD<L5PL@'EOM^Y\V <D Y^E4?&*3:=
MXQTSQ#-HESJ^D-9/9W$5O 99;=BX=9/+ZD'&#Z?E5/Q-9K<> G_LGPU<V0NM
M4M[A;6&R(F=5DC9Y)$0':2%/7G &>>  =?>^,-,LM<ET8QWLVH1VWVGR(;5V
M+INV_+Q\W/<<#!R16?\ \+*\/G2H=3'VXV3/Y<TPM'VVK;MF)3CY2&X(Y['H
M03 /-_X7 ;_['>_8_P"P1!]H^RR;/,\[?MSMQG;S^G6N2N+'4)?@[XITY-+U
M(WMSJ%P\-O\ 8I0[J\^]2!MZ;><]J -_4=9&A?%RY,C:E<P/H2RK9VXDN"9/
M/8$I&,X^51G&!Q[UNP>/="N=(L=5AEF>TO+I;-6$1S',S;0CKU4Y]OYBLN:6
M2Q^)\.M3V=]_9UQH2VJ31VDCXE$S/M954LIP1U ].M8&H^'=2M?"U_JBZ?<,
MUQXGCUG[%%'NE6 2)_ /XR%W$=><=10!Z$_B6PBUF[TF07 N[:U%VZ"%GW1%
MBH9=N<\@C YXK*L?B-H.H6RW4 OOLKP>>EPUHXC;YP@0-C!<LP&WW]:RK:\F
MN?BA<ZN-*U1-/DT%(DFDLW&6$SMC;C<#C^$@'VY&:WAVQ1?@C9:7K.BW\P2-
M(+JR^SR+, 9AEE7&XE0=^1_=H [1/$5H%OC=Q7%E]AC62<7" 85LX(*DAONG
MIGGCKQ5>/Q=I_P#:<FFW$-Y:WBVYNDAF@)::('!9 N=V.Z_>'I7!W.A>);GP
MYXBT>QN[O5K")+6?39=2C*3.Z2>8T!9@"XP@Y(ZMCUQT'A^^TW5+A-0M_!EY
MIMQ;0OYT]W8&.2+(P8X^-SDG^Z,8'/) H N1?$GP_+::=>YO%L+]Q'%>/:L(
M5<DA59N@)(_QQ6GIGBO3M4U6ZTQ4N[:[MHA.8[NW:$O$20)%W=5R,=L5YS!8
MZA'\'O"VGMI>I"]MM0MGFM_L4I>-4GW,2-O0+SGOVK>UC3[K5?B+J"P6]W'!
M=^&)+%+MK:01K,TA(!;& <'/_P!>@#HU\9:7]ML()%N8HM1)6RN9(B(KAL9P
MIZ@D<C(&[MFJ$OQ*T"*TN[O;J#6]G<M;74JV4F+=E(!+Y'RC)QSSP>*P/"3P
M75OI6EZAX&N;?6M.,8FGN+(>1&T> 94EZ$D#*[<G)],FJ4EI?2?#WX@VBZ9J
M/VF^U.\DM8C92AIEDV[&4;>0<'Z=Z .TN_%K0>.[+P]'8W$D<UD]TTZ("#\R
M*NWGH-QR?I[UJ>(?$%AX8T:?5=2:5;6'&]HHFD(R<#@#CGN<"N2(NK;Q]X<U
M3^S;^2UDT:2S+1VS9CE+QL X(&S@'EL"K?Q=_P"25:__ -<%_P#1BT :=CXW
MT>^\1+H:FZANY$:2W-Q;/&ERJ]3$Q'S =?<<C(I;GQKI%I"UW*9_[-2?[/)J
M CS DF[:06ZX#?*6QM![UDZO:MXH\6>&+BSM[J*/3))KFXGFMWB,8:/:(QN
MRQ)&0,X"\]L\[I]CJ-O\)K_P-=:9=MK,<<UE%BW<PS[W8I*),;0OS G)R,'O
MB@#I;V26/XP:0B7,_D3:3<.T/G,8RRO& P7. <'J!5S1-:T"*W\0ZA;W=VD%
MM?/]M>\\P".4*NX(K<A<$8 '7IVK)33[FP^(WAJ/R+N:WL]&DM)+L6[F/>3'
MC+XP,[2>M8,^C:QJ/AOQS!8V%TEY)K@U"TCN('B6Y1#$P +  Y\MA^5 '>CQ
MA8"_FT^6VOH;V.U^V+;O#\\L(."R $Y(/\/#>U/M_%NFW?AF#Q!;BXDL;AD6
M(K'\[%G"+A>O+$#UJ#0/$;>(IXYH]!U&P\N,B>34+8PLC''[M,\MSR2../4U
M@:%H=Y8>.+[1 %/A^TF&L6P!^Y)+N418_NAQ(X]#MH ]"!R <$>QI:S[751=
M:Q?Z=]BO8C9B,_:)8ML,V\9_=MGYL=#Z&M"@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH *Q?%7AY/%7AVZT6:ZDMX+H!97C4%L @X&>!R!6U10 R%9$A199/,D PS[=
MNX^N*?110 4444 5[^U:]T^XM4N9K9IHV03P$!XR1C<I/<53T+1$T2S:(W=S
M>W$K!Y[NZ8-)*P  )P      !^N2=2B@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBHYY3#"\@C>3:,[(P"Q^E $E%9'ASQ)8^*=*74],$S6;L5266/9O()!P#SP
M01TK7H **** "BLB^\16=AXATO1)HK@W.I>9Y#K'^[&Q2S9;/H.V>M2>(==M
M?#6AW.KWL<\EO;+N<0)O;'T_Q- &G16>=67[?86JV5XZWD3RB=(LQ1!0#B1L
M_*3GCUP:M2W*1PSR*&E,():.+YGR!G:!ZD$8'N* )J*K:=>?VAIMM>?9KBV\
M^-9/)N4V21Y&<,O8CN*LT %%%% !1110 4444 %%1S2B"!Y2CN$!.U%W,?8#
MO5#P]KMIXFT&UUBQ65;:Y#&,2J%; 8KR 3Z4 :=%%% !1110 4444 %%%->1
M(T+R.JJ.I8X% #J**I:AJ/V"2S3['=W'VJ<0;K>+>(L@G>_]U!CK[B@"[111
M0 4444 %%%!. 30 450TS5$U'28-0>VN;%9O^6-['Y4J'=M 9<\$GI]15^@
MHHHH **** "BBB@ HHHH **** "BBFF1!((RZ[R"P7/) QDX_$?G0 ZBBB@
MHHJEJ>H_V9!%+]CN[KS)DAV6L6]EW'&XCLHZD]A0!=HICS)&2"V7VEP@Y8@=
M<#J>H_.LWP]X@M/$NEG4+*.=(A-)#MG3:VY&*GC)[@T :M%%8WB#Q-8^'-*_
MM*Z6::W$JPDVZ;\,7"<\@#YCCDT ;-%%% !137=(XVDD95102S,<  =R:P[?
MQ99WL!N[*SU"ZT_G_3(;<F-@.ZC.]Q[JI![9H WJ*IZ7J=KK.F0:C8R&2UG7
M=&Y4C<,]<'D5<H **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HI
MOF)Y@CWKO(W!<\X]<4/(D2%Y'5$')9C@"@!U%%% !13'E1#M+#?M+!!RQ QD
M@=3U'YBLSP_X@M/$EA+>6<<\<<5Q);,LZ;6WH<-QD]Z -:BBB@ HK(O/$=E;
M:F=+A2>]U!4$CVUJFYHU/0N20J9[;B,]LT[3_$%GJ.I3Z<B7$-[;Q+++!/"4
M*JQ(!ST;H>5)''6@#5HHHH **** "BBB@ HHHH **R(O$EA+XIF\.XN%OXH!
M/EX6$;KQG:_0D;AGZ_6M>@ HJEJNJ6NC6#WEXSB-2%"QQEW=B<!5502Q)["L
MWP]XPTOQ)<W5I:BZM[ZTP9[.\@:&9 >C;6['UH WZ*PD\6Z7)<(JM+]FDN3:
M)>;/W+S@D; WKD$9QM)X!SQ5C4/$%I87WV(1W%S=B$W#PVT>]HXLXWM^.<#J
M<' .#0!JT5@ZEXQT;3='LM4::6YMKT@6WV2%IFERI;(503C Y]*9H'C/2_$E
M]/964=]'/!&LLBW5H\.%)(!^8#J0?R- '0T444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%1SK*\+K#((Y",*
MY7=M_"@#QCP]J>IZ+^SUINH:5>"VN([LIDQJ^X/>E".>G#5W%C>ZQ8?$O^Q+
MS57O[.[TMKU5DA1/)D654(3: =I#=&)/'6H(?ALD'@5/"2ZQ.;%)A,LIA7S0
M1+YN,],;_:MP^')'\7V_B)[\F>&S-GY*Q (R,P9CUSG<!WH 7Q5=W=II]J]K
MJ$-BKW<23RNNZ0QD\K$NUMTAX &#U-<8?'6IZ/I/C![AI+B33+R""Q-XBJX\
MY4VB39@$ OGL<<'FNS\3>&U\11V#)?3V-U872W5O/$JMM< C!5A@@AC61)\.
M+&['B"/4-2OKN#6UC-Q&^Q=LB*H$@(4?,-H('0>E &=K%A=V?Q-\"FXU2XO0
MQO01,D8PX@.67:HQGTYZ#'?.1XAU*^\6_!W7O$(U&6"WF2<06B(A00I(4PV5
MW%F"DDY&"1C@'/60^"+QM2T2_P!0\37UW/I!D\EO)B7>'7:=WRG)QU/?M@\F
MG+\-%&EZOHUGKMY:Z+J3.YLA$C"%G.6V,1D*3SM_7K0!/-J>I6OC;PIIL5X1
MI]]8W#2P"-?O1HFT[L9_B_2LCPFNI0Z9XYNH]9NWG@U6\2-IEC<;D2/:Y^4'
M. !C.W':NH;PFS:YHFJ-JDSOI,$D$:R1K^]5P Q8@#G"C& ,8[TRV\'?8GUX
M6VJW*P:O+),T#(A6*20!78'&3P. 3@>AH PM-\5ZE?:?X$TU[LI>Z[:-<75V
MJ+N CB#L%!&T%F8=N!GCI3;_ ,0:YI5_XKT,Z@TLMEI)U73[UXD+JN&!1P %
M;#+P<9QUSUK8'@*W71-"LX]0FCO-"(^P7RHN]0%VE6'1@5X(XS[5:G\)+=6^
ML-<7K/?ZM;?9)[H1 >7%@@+&N>!\S'DGD\YX  .:L]8\06MUX&O;K66NH=;1
M8KJU,$:H"8#('4@;@V1SS@YX Z5Z37*-X,9H?#<7]IN!H)4P'R1^\*IY8W\_
MW3VQSS5S0++5+75]:DN]1NKNQGF#VJ7*!3"<MO5,<[ -@&>N">AR0#.\3ZGJ
M>@^*-"O6U"1= NI_L=W#Y<>(Y&'[I]Q7<%+<'GC(JCJ_B?4=.TZYU"*[+1ZC
MJ\6F::)(TV0 L(VDX +?,)",D@@+ZU<\;WVFZI;77@QXIYM2U&V'DQK Y1 6
MP)"X&T;"-W)_A]2*U=4\):9JWA5/#TRR1VD21K"\;8DB9,;'4_W@0#F@#'O-
M1U30O'.BZ1)J,]Y8:W%/&K2I'YEM-&F_<"J@%2,\$'!'IQ6"?%6O?\*A77_[
M3?\ M*+4#"9?)BQ(GVORL%=N/N^@'-=O:>'I/[4M-3U6^-_>643Q6S>2(U3?
MC>V!G+D*!GICH!DUS\_PS6;1;W11K]]'I<]U]JAMTCC_ '#&42D!L989SC/
MST.!0!WE>*^%[W6=#^&G@[5;7566V>^BM)+'R4\MXI)V5B6(+;N<@@@>W<^R
MF.46OEI.?-VX$KJ"<^I P/Y5QT?P\2+PCIGAQ-6F%MIURES%*85WL4?>H/;&
MXGMTQ^(!F^--?UK2;?Q)=VFJGS=/CCEM+:TB5UB4*"WV@LN 6.< -G;@@=ZT
M]5UC5-,\7>&[F6_D70]5S;2P>7'MBN"NZ/YMN[#888SUQ]*2_P#AVE\-?A_M
MN]AL];^>YMHT3:)=H4L&(+8X!VY[=<<5K:KX4M]:\)#0+Z[N)5"IBZX64.C!
M@XP  <CMVH QM0\0ZC9V-M<1W$TW]M:LMK8@)$###ACN3( 8L(R5+$_?7K@@
MZ7AX>)8M=OXM2\V32&C5[22Z:+ST?HR'R^"O<$\CI5KQ%X4T_P 1: FD2F6V
MCA9)+66V;:]NZ?<9#V(Z?2G:!H5UI0:74M:NM7O"OEK-<(B!$]%5  ,\9)R3
M@>@H IZAJMS=>.+;PS;W+VB?V>]_--&%,CCS!&J+N! &223C/ Z5FW6J>(-$
MM](T>_NTO-1U"_E@2ZME17\A4:0'#X3S"% /&.20#WT_$OA!==U&QU:SU.YT
MK5[(,D5W;JK91NJ,K AAWY[U'JO@:UU?08K&XU&^^W0W NX]35@)UG P'X
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
M.<[^^,=*NUQ3ZO?Z?\2[BPGOYY]-BT WOD,B9$@EVDY !)('?U-8MQX@UO\
MX5?%X[@U%_MBH+Q[,A?L[1%\&'&,C"_Q9SD>G% 'I]%>?K<ZQK/C^_TJ/7;R
MST]])@O(UBBB$D3.[#"L5/H.H)]"*V/AWJ][KG@73K[491->-YL<DH4+O*2,
MF[ XR0H- '445YGXUUS5],M/$U[9ZM*\^GK'):PV:*8[90JDB<L,%F)/RY)V
MD$ =:T;V[UB]^(UGI,.LW%I876C/=/'%'&61Q(BY1BIP<'^+=WP.X .[K'7Q
M%;-XO/ALV]PMT+(WHE91Y;('"8!SG.3Z=JX:Q\7ZO#X<MM/FOC+J$_B.30TO
MW1=PC61OWA&-I?:N!QC)!(/-:%I9267QN"M>7%RC>'7*^>02G^D)D @#([\^
MI[<  ZGQ+XCL_"NC2ZMJ$5PUG$0)7A4,4R0HR,@\D@<9K3MYC<6Z2F&2$N,[
M),;A]<$C]:XCXS_\DFUSZ0_^CHZEU^ZU<>/O#NE6>KS6EG?VETTR)%&Q4QJF
M&4E3S\QZY'M0!V]%>86WBS5M*\-ZU!/?-=75KX@&D6U[<(NY4=H\.X  )4.W
M;!P*W=9FU?PC;:QK9U,WVF0::\L=I<@&3[2N3D, /D(QD=NV* .RHKB+2+Q6
M=6TJ[ANI6TZ:,KJ'VF6(@[E^22(*ORD'MT(]^:Y1];\2Q?#N]\3MXAN7N=-U
M.2)8?)B$<R"Y$9$GRY/RG^';CTSS0!Z^98Q*L1=1(REE3/) P"<>@R/S%5=/
MU![]KP/8W5K]GN&@!N$"^< !\Z8)RISP?8UQRVT[_&ZX U&[6,:)',(PRE1F
M=@5 *\ [1G'/O2:)/X@UO0_%]K%K,RZE::M<6UC<F./*!$0HI&W:1D\\=S0!
MW]%<1X:UZY\3:5X<:&\GBN/+:74N$W9C_=M&PV\$R=, <(U9=OJGBOQ+H$6O
M:%(\=RUT[112S1BV,*RE3&ZX+9VJ<MUW=,#@ 'H\\IA@>58GE*C.R/&X_3)
M_6N1M?B9H-QI-KJ\B7UMI5S)Y4=]/;D1;MQ7YB"=HW C)P/>NQ/W#]*\5\(^
M']8\7? O3/#]O]AMK"ZDD$UW)*S2JBW+L=L>S&<C'+?_ %@#U(^([8>+8_#I
M@N!<R6C7BS;1Y10,JD YSG+>E;-<*;=+3XOZ/;QYV1>'IHUR<G EC K*;Q!K
M%I=>')QJLE\UYK)LKR6%!]C=&\S"1Y )*A5^9<C(8$F@#T^BO,IKGQ!>WOCJ
M!?$EY FD%'M#%#$&!\CS K$IRN3TP"?6NW\+ZC-K'A/1]2N=OGW=E#/)M&!N
M9 3C\30!8GU>TM[Q[5GR\47GSL,;8(^<,Y[9P<#J<'L":$U6"0V:B.42W:EX
MHBH#;!C+D9X W+[_ # 8SQ7(_#TKKFE^);N^02F_U>ZBE5_^>:XC5/H%7'XF
MM2'X>^&X+32+9+.3R](G-Q9DW$A9'+;CDYR02 <'C@4 :^NZY8>'-'GU74Y?
M*M(,;VQD\D*/U(K05@ZAE(*D9!'0BN*\6K9Z_JW]A7UK=W&GP6SR7 M[=I?W
MLBE(P=H."JEVY[E#VJ'X9:G<ZGX,?1KV::'5-(=M/G;;MD 4?NWPP/5<=1U!
MH [RBO(+OQ5K]GX)+R:I=R:YH^J20ZBL4469X(SO=L%<*OE%2& ZD#O79SZC
M=W<6MZGINKQ0V=O9!+62YV_9Q-LWF5CC.T!HQUQPW% '645Y[H^KZD?'%GI0
MO[^6RO-'>X,MS&JEIE=!YL8(RH.X\, .F!61I?B#7K'X>W'C74-<GO#9"\C^
MQ&&-8YF$S)&6( ((..F!C QU) /0=7\16VC:GI5A/;W#OJ<_V>*2-1L5MI;Y
MB3GH#T!K8KS3Q%87<&M^ KBYU6XNWDU(><KA=C.87.Y0 -HZC XP1W&:]+)
M!). .IH S9M>T^W\0VNA23@7]U!)<11^JH0#^/)Q_NMZ5I5XQXIN'GLE\=6E
ME?-J=C?"]MW^RN$:Q4;"F_&-K1YD/NQKNO%OB.>U\&VVL:1)_HUS+;F2[50W
MD6TC#?* <CA3WX'4]* .MHKAM*N=3O/'FI6-GK=S/H<%G'*LB"*0),^X%-Y4
MDD !P,\9YX(%<]I.O^(+;X:IXTOM>EN94BFB^RO#&L3.;@QI(Q !RO7@@8 '
M')(!ZU17#22^)M$U-M3=YIM%CLII+R&[FC9_,1"RM'L7C."".G<"J^FS>+=1
MB\/:S9SL8KKRI+])Y8_(>&1<DQJ!E67(V\\]R: /0:*\HDU#Q'/X5\;Z@/$E
MW'-H>H78M2D,0W+%&C*K_)@CJ,#'4DYXQJC4]9M/$?@^ZDU::>#70Z7-FT:"
M&/\ <&13'@;A@CNQS0!Z%17G!U+Q1XFTR_U#0)9(+N"_EAM5:2,0!8I"A612
M"QW!23W&X8Q4Z2:[JWCW5M&;7KFSM%TZWN%6V2(M$[EP0K%3Q\O4@GW% '>R
M2QQ*&D=44L%!8XY)P!]22!3Z\=EU+4O$/@SX>ZC>:C<)=3ZW'!.T.U1(5,HW
MD8QG]V#Z9)XK;\3^(;S1-9NK/5K[4=,L9(8TTW5HXU>W63;AO/PIPQ;U&,=-
MO6@#IKCQC8VVKZIICVFHFYT^T-V=MJQ6= %)$1_C(W*"/4U-I?BG3]5@T^:-
M9X8[]6^SFXCV9=<[HR.SC:W!ZX.,X.-'[%;R7+W8W&:2+RQ('/RH><+Z9.#Q
MUP/05R/Q+@32_AC?RV $$FG&*YMF!Y1TE5@<]23SD]\GUH [BL/Q3XJLO"&F
M?VEJ4%VUF&"O+!%O$9)P-W.0">_2M>VF^T6D,^W;YB*^/3(S4>H6%KJFG7%A
M>PK-:W$9CEC;HRD8- %74M<@TK0GU>X@N#!&@=TC"LX!]@<'J. 35VUG-U:Q
MSM!+ 7&?+F #K]0"<5YOX&M]0DU6]\(ZE<"YLO"MQ&89"?FN%==]N'_ZY@$_
M4)_=YZ/4M7N+KX@6?A:&XDM83ISZA/)%@/)^\$:H"1P.6)QSP.G.0#JZ*\EU
MSQ3K^EZ!XYL5U*7[=X>>WDM;[RTW213895<%=I*C()P,\5UVI:E?VWQ,T+3H
M[MQ8WEG=236Y52I:/9M(.,C[Q[T =917,>/I-7M?"5WJ&B7<L%W8@7!2-4;S
MHU.73YE/\.[&.<XK"/B\P?$#3Y#JD[^'-0T\LA94$4=QL\T MC=S%\V,]QZX
M !V^I:@^GK;,EC=7?G7"0$6Z!C&&/WVR1A1W-4T\26S^*YO#OV:Y%U%9_;=Y
M4;'3=M&TYR3G/8=*Y;6;_7=,T7PQ='5+E)K_ %NVCN(I(X\^3*^?*/RY&U<+
MD<GGUJZO_);Y/^Q<7_TI:@#>\.^(;;Q)97%U;03PK!=26KI. &WQG#=">](G
MB*W?Q<_AO[/<+=+9_;?-91Y;)O"<'.<Y/IVK"^&?_(*US_L/7W_HTU1U>RNM
M0^,0M[74IM/9O#IW3P(K2 ?:.B[@0.<<X/'IU !Z'17EEAXNUVVM&T*]N?M6
MHQZ^=)%\BHC21^690V#\H<@;>F.<\FNL\.P^([76]1CU*0R:3(J/9^?*KSQM
MT=25'*]"">1TH Z>BN1UG5KVX\8Q^';3SU5=/-[(;>1$D?,FQ0&;H!@DXYR5
M[9!Y_4+SQGI6E^'H;_55BO9M>2Q=T2.3SK=@S*9  ,/P 0I /XT >G5GZAJ@
ML]/BO+>TN-0222-56S4.<,0-_4#:,Y)]*X=KG5H;_P :Z#/K=[<16VFQW=M<
MOL6:(NLFY0RJ!C*#'&1GCUJBMWJ>B?![PK>V.K7*22#3D<,L9'ER>6I0?+D#
M!Z]?>@#U,RQK*(BZ^8RE@F>2!C) _$?F*RO#_B*V\1)J+6]O<0&PO7LI5G4
MET"DD8)X^:N96WG;XW7 _M"[$:Z)',(MRE1F=@5 *\*=HSCGWK)T[7)?#OAS
MQUJ, 4S+XFEBC+=%:0P1ACGCC=G\* /5*Q]?\16WAX:>;FWN)5OKR*S1H5!"
M/(P52V2,#Z9Z5SES=^)/#EY>:O<-+/H4&G337$-W-&THE12P,90#@@8(Z#J*
MPO$*7][X7\%ZS=ZI-+->:OIT\T("B'YW# *,9 7. <Y(ZYH ]8ID4L<T2RQ.
MKQN,JRG((]0:S/$ZR-X5U7RKB:WD%I*RRPMM=2%)X/;I7"Z)JMWIOA7X?Z-!
M?3J^MPQAIW"$P1I '94^7&3@ $Y/)[XH ]0HKCM-U/4-.^(]QX9N+F2\LI].
M&H6LDH!DA(DV-&2 -PY!!/(Z9-+X]O=3T2VL-=M+Z>/3[.Y3^T[>-$.^W8X9
MQE205)!X(XS0!V%%<'XC\57>CZ7XF\26MP9[+3X8[>U@(4Q/.2-TF0,E09$'
M7^%J=KE[JOA74/#=R-3GO[;4;Z/3KR*8+RT@.V5, ;<$<@<$'IWH [JBO,_[
M>UH>"O'MU_:DWVK2+ZZ2SFV1[D2.-&52-N",D]1FI[Z]UV^\3^&]-M]=N+.#
M4](EFF,<,9*R*J?,N5ZY;OD>@'4 'HM07URUG87%TMO-<-#&T@AA&7DP,[5'
M<GH*JRP75OX>:'[?*UW%;;3>;%W,X7[^W!7)(SC&.:\^TJY\23_"V7Q9+XGN
MC='1)9UA$$6Q95!</RIY^7!^O&., 'IEI.;JS@N&AE@,L:N8I1ATR,[6'J.A
MJEXAUN#PYH5WJ]S!/-!:H9)%@4%MHZGD@?K7*W/B"_BM/ ZW%RT%CJD0_M"^
MX4A_(#(A;HN]\\\'C QFL/4;O5;[X?\ C][S49KS3[<7%O8.Z1A9(PH.X,J@
ML025SD@X]<T >J6TZW5I#<("%E17 /4 C-.26.1I%1U9HVVN <[3@'!]#@@_
MC7G]K<ZMI/BKPC:MK$]Q::Q9S)-;O&@CB:.)74QX7([CDMFL_P -+K=KX9\9
M7.E75Y?:A%K-W%##*R$OM=06!*_?V @9XSCB@#U.BN0\%:_::[<ZB;74KU_)
M6))-.U"/9<6<GS;@PP"0WR]ST//:GZQJ5_:?$?PU80WD@LK^"[,]N54JQC52
MI!QD?>/>@#K**\IU7Q%KUOX.\>W,.L3K<:1J+16DOEQDK'MC.T_+@_?//7WK
M<:]U71OB!H]K<ZO/>6>JV5S)-#)&BI$\01@8]H! PQ&"3]30!T7BCQ%;>%-
MN-8N[>XGMX,;UMU!89( /)'&2*V*\:\47M[XH^!^H>)9=0GC-V/-2U3;Y21>
M>%6,C&2< $MG.[VXKK[_ %/4]8\3ZUHMA)=0KIT$(#6LD:-YDBLP<[P<@
M=.&SGC !VU%>:3W?C!=4\%Z7J&KBSO-02[BO_LB1NA:.,E74E>&QSCH#VXKT
M#3+6XLM,M[:ZO9+V>) KW,BA6D/J0.!0!;HHHH **** "BBB@ HHHH ****
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
MNVV-F )P"<*.3]*=10!Q6C:A)I#WSMIGB6[>\N#<2-/:1 AB N!M(X 50,]
M*HV4:V'C#4/$<.G^*!-J"HMQ;?9(O*8(,*<=<@=\]S7H=!. 3C/L* .$C_LY
M-?U36#X8UUY]2MTMYU:V4J5 (/&[^(;0?]P552RTU/ 9\'CP]XC_ +/-N8"X
MMU$G)SNSNZYY]*ZSP[XBA\1Q:@\5K/;&QOI+*1)]N[>@&3\I(QSZUKNZQHSN
MP5%&68G  ]: /-+>Q>+6-/U>9/&-Q?6=L]MYDEM"!(A((! P."H/')[DU/I=
MG9:?X4NO#<^B>);[3KGS=ZW%K&&'F,6;!4CNQ(]*[/P_KUAXFT2WU?39#):S
M[MA(P>"5((^H-:= 'E46CR"/1X[AO&5Q'I$XFLP]I!E0%*A6./FX.,GMZ5TN
MMZM)K.CW.G#2?$MHMPAC>6WM8]X4C! +$@<=\5V%% ')2:RTNCMIS:%KVQH3
M"7%E'G:1C[N=O3MC%<7?)_PC_@:TT&*V\8#3X+F-OMAMD:6U16+C 4?,-P P
MPP,^V*]AHH \E\->(M5DNDFL+SQ3JNGG<DRW6D11[,J2K(P"Y8-MXY&"?:M3
M3+*QT_P;+X6GT/Q)?:;(LB$7%M&&P[%CRI'=B0>U>C44 >:Z#:-HZK'=P>+]
M7@B0Q6\-]!&RQ*1M/0C<=I*Y.>"0,9J#0M(30)TC@@\92Z5#)YMOIDT49BB;
M.1SG<0#R 3C(!YKU&B@#S--/C31]?TS[#XJ,.N32S7+&TAW*TBA7V>@P .<U
M-+ LTOA^5K#Q1NT/_CWQ:0_O#LV?/Z_+QQBO0XYHY7E2.16:)MD@!^ZV V#[
MX8'\13Z /+6T>*/7+R^L+?QC86E_*9KVPMXD$4SG[Q!)W(6[E2"?45IP,+;Q
M+>:Y!IGB5)KFV2V,(LXO+1$SMVC.<C)ZFN_HH \LBT6VA\+Z;H<5CXL5=,O!
M>VES]EA\R.0,S<_PD?.W4=ZNWT;W\&I6DMGXH:QU)%2Y@DM(FX"*A*L3E2P4
M9///(P:]&HH KV!0Z?;^7!);IY:A8I!AD&. 1ZBL+QCIC^)-.3PZBMY-U+&U
MY)CB.!7#,,_WFVA0/<GM72T4 9\>F21Z[)J/]H71A>W6 618>2A!SO QG=V^
ME:%8M_XCAT_Q/I.AR6EP9-3$IBG&WRQY:;F!YSGIVQSUHT#Q'#K\VJQ1VEQ;
M/IUV;259]N2P56R-I(Q\WK0!!H_A2/1_$6K:TFHW4T^JF-KB.4)LRBE5VX4$
M8!]:EUCPS!JFJV&KPW,MEJ=CN6*XB .Y&^\CJ1AE/7U!Y!%;E% '-W/@K3KW
M1-8TZ\DFF?6/FO+DD"1VP I&!@!0JX&,<<YR<PVW@MDUO2]8O->U*\OM/BDB
M5Y!&JR*^W(*A<8^7J,$YY/ KJJ* $95=&1U#*PP01D$5R:_#O0U\+V/A\QR-
M:6=TEU&6;+%E;.">X*DI_N\5UM<X?%JR7B+9Z7>WMG]N-A+=VZAA%*#@DKG=
ML#9!;L0>W- %GQ'X<C\1I8)+>7%L+*\CO(_)"_-(ARN=P/'M31X:0>+V\1_;
M[G[2UF++R<)Y?EAMW]W.=QSUK<HH Q?#?AR+PW;WD,-Y<7*W5U)=L9PN5=SE
ML;0.,TS4/#0NO$4.O6E_/9W\=L;1BJJZ21%MV"K#KNYR"/QI]GXCAO/%6H:
M+2XBGLH(YVDDV[)%<D#;@D_PGKBMJ@#EK_P%I&H>'9-(E>Y5GN?MOVU)-LXN
M<Y\X,!@-VZ8 X  Q5_0= DT=7>[U:]U6[<!/M%V5RJC^%0H  [D]3W/ QKS3
M1V\$D\TBQQ1J7=V. H'))K(N_$<-IXKT[0)+2X\V_BEEBG^7R\1@%AUSGD=N
M] %3Q+X-@\07]EJ<&H7FEZK9ADAO+-@&*-U1@00R]\&F7?@F"\M=,BDU2_,E
MA>K?^>Q1I)YU! 9R5QC!Q@ #& .E=110!SR^$[<Z]JNJRWMS(VIVRVL\!"!!
M&H(&,#(/S'OWK/;X?P/X4L_#TFM:D]M:21/%(?*W@1$&-/N8P,#MD]S78T4
M8,_AB*;Q5;^(4O[N&ZCM1:2I&5"3QA]X#94D?,3]TCTZ53@\!Z<-*UW3+RXN
M+VTUJX>YN4EVC;(^,E2H&,;5(ZX(KJJ* .6T?P4FGV[V^I:SJ.M0>2UO''?N
MI6.-AM(^4#<2.-QR<9 QDYSD^&L:Z79:4?$6JMIUA=1W-G"?*)A*'<J[BF6
M/3.>/PQW5% $-S:QW=C+:3[FCFC,3\X)!&#7+)\/K,>'=.TI]3OY)-,D22PO
M&*"6V*#"A<*%(QP00<]^V.OHH R=/T)+35)M5N;A[O49H5@,[J%"1J20BJ.@
MR23U)/?@ 4_%6N65C"-)N+"ZOIM2AECAMXK=G24XP49@,*#GJ< #)K?::-9D
MA:11*ZEE0GD@8R1],C\Q3Z .?T[PCIUKX&@\+7,0GLQ:_9Y@?^6A(^9O8EB3
MGUIEEX26#^S%OM2NM1BTMMUFDZH-K!2JLY &]@I(!]\X)YKHZ9--';P233.L
M<4:EW=C@* ,DF@#D+WX>P79UZ)-8U"WL=:W/<V<6S9YK(%+AMN[D '&<$CG(
MXJY%X-CAUC1]2&JWSR:5;-:Q*XC(=&P#OP@R?E'(QTJY?>(X;'Q1I6A26EP9
M-265HIQM\L>6NY@><YY';OUK2O[F2STZYN8K66ZDBC9U@AQOD(&=HSQDT .N
MX#=6DT"RM$9$*[U )7/<9R*P;7P=!:>!7\)IJ%VUFUN]J)F">:(V!!&=N.A/
M.*W[:5I[6*9X7A:1 QB?&Y"1G!QQD=*EH \U\4VL>E/X<TJ?4]9L+*PMW\O5
M;> 2KO"B-8Y%",H)4L=Q ]NIQ:T_1K[Q'I&IZ3<^(M1O]%O+<1BZGLD@E!).
MY4R@W+CJ2OI@]<==K^NV/AK0[K5]2D*6MLH+E1DG)   [DD@5H1R)+$DD;!T
M<!E93D$'H10!STGA))=3T&_?4KLRZ*CI -L>) Z[&W_+_=';%01>"(K8:LMK
MK&HP1ZC>?;=B&/$$Q=79DRO.2@X;(QGCDUU5% &/IV@1V>LW6L3SM<:A<0I;
MO+L" 1H20 !WRQ))SVZ 8J'7_#*ZW?Z9J$.H7.GW^G.YAG@5&.UP%=2K@@@@
M#MQBMZB@#BY?AQ9S:3KNFMJVI>1K4WG7.60D'"@[25/7:,_IBM6?PNMSK^DZ
MQ+J-TT^F1211IM0(X< /N^7.3M'0BM^B@#@Y?A?:-HFH:#!K>I6^AW;F06">
M65A)8,0C%2P7(SC/Y\U>U7P(E_K$&L6>N:GINJ)"+>:YMF3-S&.0'4KM)'8X
M_I7744 <U+X-MWU/1+Z/4+R-](\TPC*MYK2#$C2%E));)[CDUTM%,AFCN(5F
MAD62-QE74Y!'M0 ^BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH *SM?GEM?#VHSP7L%E-';NR75P,QPM@
MX9O8=:T:S]<T:T\0Z'>:1?!S;7<9CDV-A@/4'U!YH XS1]3U >.[/2DN]2^P
MWFC/.7N\%GE5T'FHK9*9#'Y6 '3Y:YZ#5O$,?PUL_%,GB&]EO+?4_*,1"".:
M,WAB(<!>?E/8@# P!U/=6W@:"#5K#59-:U>>^L[=K832S)^\0D$!@$ X*@\
M9_BW5#_PKO3_ /A$O^$:_M/4_L/VC[1NW1;]WF>;U\OIOYZ?I0 EK?3^)?&/
MB'3#>7-K:Z.((8UMGV,TDB%S(Q[XX !XX.0>T/PB#+\,M*#-N8/< MC&3Y\G
M-:5QX,@?Q$VNV>J:A87TT2PW;6YCVW2KPI=60C<!QN7! JYX8\-VWA31(]*L
M[BYF@C9F4W#AF&YBQ' '&2: .0UKQ#<Z7XGN;779]1TRWFNXO[,U*$DVACPF
M8I,<*Q8."6'?@@ 5HZ?>WT_BWQOILE]<&VLX;5[8;^82\;LVT]>H'7-:E]X/
MM]1CO;:ZU"\ET^]G$\UFVPID$':IV[E4E1D9]<8S27G@ZVN?$%UJ\6HW]HU[
M"D-Y!;NH2X" A2<J6! 8C*D?SH X-+K4->TSX7W-Q?R+?74DK27052X)@?+
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
M\L"X9=ZKG<,%5'(/(..U &#JVFM8?%#P.?M]W<AUO@PN)-_S"$98>F<\@8'
MP!6=!K<WA[3?B!J-N5$RZ\L2._1#(L$>X_3=G\*ZBW\"(FHZ/?7>OZO>SZ3Y
M@MFG>/[KJ%(;:@W<#J>3ZU-%X&TP6NNVMU-=7MMK<K37<4Y3&\@#*[5!& JX
MYXP#0!22Q\6V6LR3VUU$;"6SD0P7EV9F^T@$HZG8, _Q#.,<@5F>&?$,][>R
MV$D^HV/B*#3I/.TS5"2DLWRXF1NA3(8?+@8;H*V]+\"0:=93VL^M:QJ"/;O;
M0F\N YMT8;3LPH&['&XY...A.;3^$(+F5)M0U"\O9HK26SAEEV!XTD #ME5&
M6(4<G\N3D P/!GB WNNQ:=J,^J6.M0V;"[TS4#D3/E/WT3?=*C##Y<##=!BM
M?Q9K5Q9ZQX<T6WE:W_M>[>.6=<;EC1"Y52>A8X&>P)QS@U>M/#4<6IV6H7=]
M=7]S8PO#;27&P% ^W<3M4;F(4#)_J:E\0>';/Q%:P17+2PS6TZW%M<P,%D@D
M7HRD@CVP00?2@# M+N_L?B)=^%I+RYGTZ[TO[=;R.^Z6V8/Y;*'/)!R""<D&
MJ_PILS#H5_-]IN),ZG>)L=\KQ,W.,=?>NHLM!CM;ZXU"6[GN=1GA6 W4@0,D
M:DD*H"A0,DGIR>N<#$?AOPU!X8LYK6VO;RXBEG><_:2A(=SN8C:J]230!C^(
M[N\T?QKX?NGOIUT;4'>QGAW81)V7,3>O)#+UQG!K T#7M0O(-;T.74;TZC+?
M1C3KB1@'-I-\T<BC&/E19&/'.W!]*[WQ!H%CXFT>32]11FMY'1SM.&!5@PP>
MW3\B::WAS3F\2P:_Y.+V"T:T0C[H0L#T]1R![,: ./\ [,FO_BKKEI%J=W9+
M_8]H&EMRHE/SR8^9@<>IXR?7KFIH?BW5]4\.>"[26;?>:L+D7$PD$32"#(P&
M .TMP20,\'&.H[6/PQ%%XEO=>CU"]6ZNX%MW3]V455R5VC9G())Y)]ZQV^&>
MD'PM9:$+W4573YC/97BRJMQ;N222K*H'4GJ#^@H Y?QK8>(;3X?>)(M6U M:
MI<V\E@([DO,L;2JK)*VT;E!)QG.>_2MGQ%82GXC>#;.*_N8V-KJ -P2&EQB,
MG!(QGMG!K<E\#V5WX9O=%O[_ %&]^VA?/O)Y@9R5(*X., *1D #'7KDYE/A&
M)]9TK59=5U*6ZTV.2.,NT9#^9C>6^3O@=, 8XQ0!Q]IXGU;3-"U2R>^DN9X?
M$JZ/;W=P5WK$Y0@LV,%@&8 D=<9!Z5M?8_%&GW>K2'43#I4FGL\*O<B>>&Y7
MG<A=,%".H.<'IBKC?#[29M,UK3[N>\NK?5[DW4XE9 4EX^9"J@J1M7'7I]:F
MTWP:MA8W-O/KFKW\TT)MUN;N97DBC/4)\NWG R2"3@>@H I?#V'4[S0-*U[4
M=<O+Q[S3HM]M(%$2L<'>,#.['!R><GV /$=Y>Z#XST/4I+ZX_L.]D-E<P;AL
MBF8?NI.F<$@J><9(-=#H&BP^'=#M=)M[BXGM[5!'$TY4L%'0950#CZ5@>,)[
M?7Q<>##IM]-+>1QEI_L["")"P)?S.FY<9 [G H S=5\0W^GZ&NI07<H&NZS#
M9V3OAEM8';8)%!&/F"LXSG[Z]ABKEY<WVA>/]$TA+RZN=,UN&X1HYI"SP2Q(
M'WJ_W@"#@C. <8Q70ZOX;TS6M .B74!%GM58Q$=K1%<;"A[$8&*99>'D@U&#
M4;V^N=1O+>%H8);@(/+5L;B BJ-S;5R?;C'- 'GZ^(-9/P;L]:.IW']HIJ/E
M&?(RZ?;3%AAC!^3CI7I>MZ@=(T'4=2$?F&SM9;C9_>V*6Q^E<M+\,M.ETNYT
MHZMJJZ;+=?:HK5)4"V[^8)#L.W)!;/#$XSQSS79-;QR6IMYAYT;)L<2<[QC!
MSZYH X73HO%5Y_PC^LVM_'Y%PJ/J FN]T<T<B@YC39A&!(V@$9Z'-<[<ZAXA
M_P"$)\7:S_PDE^+G1=5N4M0%C"LL;* ) %^88XP,#GI79Z%\/K+P_.@MM6U>
M6PA<O;:?/<!H(&ZC QDX/(!) //7FE/P_L6T#6=&;4]2-MJ]Q)<W)+1;MSG+
M[3Y? .!V^E &3+ ]W\9=-E-W=H'T%YO+27"J?.CR /0]_7 JM;WGBKQ3X>&O
M:)=1V]Y]KD:(37>V 1)*5,;QA#_"IR>N>00.!U<OA&VEUC3=5^WWZ7=C;FUW
MHZKY\1(.U\+ZJ#\NTUGQ_#K3K?5[J[M=2U2VLKR4SW.F17 %M*Y^\2N,@'N
M0#TZ<4 9UM%K6L^/_$NFGQ)?VUI8_89H4A6/(W!F9,[?NG!'J>,GCFW\7HV?
MX8:RRS31%$0_NWV[@74$'U'/2MRP\-0Z?XEU+7([V\>?45C6:)S'Y>$!"8 0
M$8!/?OS5G7]$M/$>A7FCWQD%M=)L<QMAASD$'U! - ''>);&4>/O UI%?W*,
M4U ?:&(>0 Q)G!(QGL"0<53CU76;;P;X]@76+M[C0YIQ:7;A&EV"%9%5B5P>
M21G&<5UA\(12:KH^I3:MJ<UUI2R")I&C/F>8 '+_ "=P ., 8XQ4)\"V9L]?
MM3J>HF/769KLYBR-R[#M_=\94 =_SH Q=8UW4M.TWP_J-Y!J5SHKZ>&OIM.8
M^=%,50K(X'S% -^<<<\@\5U_ANZBO?#>GW,&H_VE&\*D7F,&;_:(XP?48&#5
M6+PRUM]B-KK&H0M:VHM ?W3"1!T+@I@L.Q&._J:OZ+H]IH.CV^EV*LMO I"[
MCDDDDDGW))/XT <WXH\C6]:31;JPNKW3K>W>6Z2"/<#)(I2-3SV4R-]=AJM\
M*=3N)?#<V@ZAO&HZ%,;*59!AC&.8F([93 _X#74:1HBZ1+?2B_N[M[V?SY#<
M[.&VA>-JKQA5&#GI6</"L6G^)]1\4VMWJ$E]<PA9;16B$4P0?(N-F<]@<YYZ
MXH XE-=UW4/#^FS0:G=6_BB75S;7MC$5)BB\UE9?+8%558P&#X]R3FM>6#6]
M4^(.K:$OB?4;:UATZVN(VB6(.KEV!_@Q@[>>,^X'%8.BPRG3XXK#Q#XRLM6(
M:0Z8]B6CBE8EBI:2+;MW$_,SX/7->AV'AH6WB*3Q#-?W+W]Q:I;SQ#9Y)"Y(
MVC;NX))'/?F@#E4NO%'BO2+[4M#NUMKV*_EBM=]UMB18I2FR2,(=VY5R2><M
MP0.*MSW^L>(]:U[2[.8P/IL<$<9M[ORMLLD0D\P_*=XRV #Q\IXYJ\_P[T\:
MY>:A:ZGJME!?2>;>6%M<;(+AS]XD8R-W?!&:EU?P'9ZEKJZU::EJ6D7QB$,T
MFGS!!/&.@<%2#CL>OZ4 8<D_B=?$O@_2]1UHQ3WEI=K?BR"&-I(E7#J2N<G)
MSG(!Z 50C;7)=$\:0GQ+J2G09YC9RJ4\QL0B11(VWY@"<8XX)SGC':OX0LCK
M&CZE'=WD3Z5')';QJZ%6#@!RY92S$X&3G.>:BC\%6L<&O0C4]1*ZVS-=$F+(
M++L.S]WQ\H YS^= &);^(=2UV]T+3%)5KK0H]3N/*G\AI&<JN P!( ))P,=1
MS@8-#4Y?&&CZ3H5O?ZV%NI/$,5GYD.V0R6SDE1+E!\XQ@XP".N<UT%]\.]/N
M[#1X8M2U.TO-(B$-IJ%O*J3K'@#8Q"[6& .H_F<V;KP19W=EIUO)J6I;K&]2
M_$YD1I)IUZ-(64Y],# Q@8P!0!SXDU&WUOQAH$NLW]S;1Z7'>02R.HEB9A(&
M"LH& =H^G;%;?PTM_)^'6@L9II/,L87Q(V0OR#@>@J\OA2U'B"_UB2\NY9;Z
MV%K-"Y3RS&,X PH(^\><]ZK6/@N/3M"L=)MM;UA(;*>.2-Q.H<HG2(X4 IC@
MC&3W- '3T444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 45Y]XQ\6:AHGB?3+B @:%8W,=OJ[^AG!"9]D^1C_
M -=%K9^(TL]O\/-<N;6ZGMIX+5Y(Y8)"C @>HYH ZBBL6+6[>SL[""7SY[J2
MT68QPQ-*^P  L0/<_4]LU(WB/31::?.DDDIU",2VL4<3&25=H;.W&0 ",DX
MR >M &M16?I&MV&N6TDUA,7$,K0S(Z%'BD7JK*0"I'O5]F"(S'. ,G R?RH
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
M<7&J1M)9M'"[K,JJ6."!C.!]WKD@8YJK_P +$\/FRNK@/?%K1V2YMQ8S&:#
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
M;_D( '.<(*QEU;4-:^!.HV=]8WRZS#8O9O"]K('F8#:K*"N6W#!R.^:]8HH
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
M5A>19E*!3&"H/S+M V]3GBN=M=&O?"OAOP-<7]K<"&QU2:>YCBB:5K6.82[
M54$X&Y0<=":]AHH X3PC-)-\0O&5RUE>P071LW@DGMG17"PX/)& >1\IP>>0
M.:N_$&QNFTBTUK3H'FU'1;I+V*.,9:5!\LL8_P!Y"WY"NNHH \SM_#VLV7C,
M0.C26/B&!;O5&!RL,T3AF0?[+*R1^X4^E:U_N_X7#I$HAG,*:5/$\PA8HKLZ
M%5+8P"0#WKMJ* /+;#S!X7^),9MKH/=7EZ]NIMW!F5X552@Q\V6!'%=OX.R/
M!>B(R.CQV$$;I(A5E94 ((/(((K;HH X+PG')-K?CB)4G@:[O=\$LD+H'7R5
M3<I(&0&!Z5A>$FL9=+TOPWJ_A?46UW36CB9)XI#;J8^!.)"=@7 R,<YX .17
MK5% 'E]J7%A\2P;:Z!NI9FMP;=_WP-NJ#9Q\V6!'%,G\S^P?ADGV:ZWVD]LU
MRHMWS"%MV1B_'RX8@<UZG10!XOXGN;S4] \102:5J4-Y;ZNCK9VEDZQ&)9XS
MYQ95Q*S*,\DGT QFNM\_?\8;>^-O=);'P^T1E>W<*KF97"$XP&V@G'6N[HH
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
M#II?'.BP:'>ZM(]P(+"4PWD8@8RVS#KO3J!TYY&#GI6G+K5M"=-#),3J+[(
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
M9&><UYGXP.JZOH7B^QET;5?ML=Z#:V]I:NL$L"O&1,64 2NP!R"6(P,*,$T
M>B7WC+2K'6IM'9;V74(K<7'V>&TD=G0G:-N!\W.>1P,')%26_B[1[KP[;:Y#
M<.UI<N(X1Y9\QY"Q7RPG7=N!&/8]N:P;>667XMOJ1L+^.T;0$A$KVD@7>)F?
M;G&-VT@X_#KQ7(65EJ]CX;\/ZFNDZA(FD:]<W-W9_9G64PR/(!(J$ M@/G ]
M?K0!U>BZE+=?%_5H,W\42:3$[6MT[;4D,K9*C)7!7;RO'XYJ_P#$2UU.308Y
M]$U&>QU475O';NLS+&2\JKAUZ,/F[C_"J&DW;ZA\6;G4H;#4%L)M%BBCN)K.
M2)2XE=B#N (X/?'\JWO%TI2PL56"YF8ZA:N1! \NU5F1F)V@X  )YH P;;Q:
M?$O@#7'D$VFZ[IEM,MY;1R-');SJC$,"#DJ2,@\@^^*Z8ZG:Z1!861:XN;N>
M,F&!6,LL@4 LQ+'H,C)8@<@=P*Y#XD>$K^ZM[CQ+X8!76/LCV]U %.+ZW92"
MA']\=5[\8]*MZC#>:/\ $;2?$,EO<3:7+I+:;,T,32&VDWB0.RJ"=K8VYQQC
MG% &O/X[T*V\/WFM2S3BVLI3#=(+=S)#(#@JZ@94Y(Y/'(YYJQ8^+=+O]=_L
M>/[3'=-"9X3-;O&DZ @%HV(PP&1T]<C(YKSWQ+HE]<>'_B%J=M8WCKK;VT=E
M:I;N9)/*559]@&0"=W4#A<]Q72ZGYMS\2_"UU%:WIMH[*Z22<6L@6-G";0Q*
MX4G:>O3O0!U6N:M#H6@W^K7 +16<#S,HZMM&<#W/2N=\)V%UK_ARSUS7+Z]>
M\U"(7(BM[N2"*!'&4151AG"D9+9).>:)_ <USI.J6%UXHUF_COK.2V"7KQLD
M9;HX"HIR"/7UJOX.UV;1O#UEH/B#3[^UU+3XEM28[.6:*=4&U7C=%(.0!QP0
M<\4 ;5I(_AC3+@ZSJ4UVK7A6VED&Z60.1LC"J.6R=N .<9]:FMO%&GSW=Y92
M+<V]]:1":6UEA)D\L]'4+G>,\?+GGCK7/^-8-5O;70M:MK">1-+U6.[ELT&Z
M5X,%2P4=7&XD+UQ[\4YH?[5^(=IXCMXKE;"PTR6&25K>1&F=V!"*I 9L $G
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
M+*),;=F,-G/;'7 KHO%VD:I87/A_7="B-UJ5BPL95/\ RVAE 3+>ROL?VY-
M'1CQ'8M;&;;/DW+VD<?E'?+*I(94'?&ULGH-I.< FLV?X@Z#::5J5_=/=0C3
M)1%>0-;L986;[NX '@Y&&SM/K6-XRTFXTFW\,W]KIMQJUEH\KK>6L*[I9$>/
M:90O\3 _,?7)]S67XH@MM5^'7B.;0O"]Y;27Z0QIFQ9;BZ97!R4 +;5'0M[]
ML9 .ZL?%FF7^NMH\?VF.Z\DSQ&:W>-)XP0"T;$?, 2/SR,BH8/&VCW$]FJ-/
M]GO;EK2UNS'^YFF7<"@/7JK $@ XX)K)U(RS_%#PW>0V=XUM'8W223?99 B,
M^S:&;;A2=IZ]*Y!YM4U'3_#5Y=:)K*:A9Z]'+>VL5FZ06J R<1H  XY!WC<>
M3EAD"@#O;KX@Z):R:G%MU":33"!=I#92,T8*[MQ&.% YR>#VS3-4\;PVNL>&
M[2SM9[NWU@/,MQ%&6!B$3.-O<DG:?89K$M5N!JOQ&E>POU2\2/[.3:2?OL6X
M0A/E^;YN.,_E5"T@O;&S^&-[)IFHLFFP26]W&EHYDA=K;8-R8R!N&,]/>@#O
MIO$UE%</&(KF6..Y2TDGBBW(DSE0%/?JZY.,#/)K9KRW5;*\@URZU?PR-4LM
M7>_1;K3)8'>TOUWJIDR1M4[>2X/&W\3ZE0 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !17G/C7Q-J6
MD>([#4[:3&A:3=1V^K =&,XQD^T8,;?]M!Z5W.JZK9:+I<^I7\PBM85W.^">
MIP  .I)(  ZDT 7:P=0\.-?^*M+UW[<8WTY)8XX1$"K"0 /N.<Y^48QT]Z:O
MB^Q77!HUQ:ZA;Z@T'VA86MC)F+INS'N &>.3G./454TWXA:+JFUX(M06UQ.9
M+N6U988?*SN$CGA3@$@'],T =716##XLLGUJTTJXM[RSN+Z-I;,W,85;A5&6
MVX)((!!VL <=JBD\:Z7#-8>;'<QV=_.+>UOV0>1+(<[0#G<,X."0 >Q- &EK
MFF3ZMIC6MMJ=WILI=6%Q:[=XP<X^8$8-3:9IT.E:?'9P-(ZIEF>1MSR,Q+,S
M'N222?<USL_Q$TB&'5)([35)UTN4QW8BLVS$ H8L0<84 _4\X!Q5F'QQI,^I
MZ=9HEYY6I<6=XUN5@F;;NVJQ[XR1Q@XX- '245SVJ^,M.TB*YN9X;J2QM)1%
M=7D,8:.!N =W.XXR,E0<=^AJ.Y\<:9#JUSI<-OJ%W>P6ZW'E6UJSF1&) *G@
M$<=>GOGB@#I:*XK5/B! FB>']3TBTN+RWUB^AMD<*!Y8+X92"1\WRLH'3(Z\
M<VY= N[OQ'=ZFM_J]O:WFFM!+;?:0 CD+M,2_P #J V6SU88[T =517!7B7_
M ('\$6^JRWEU=RZ6V;@3R^8\UJTI^1ST9T1@0WJI[$UW(FB: 3AU\HKO#YXV
MXSF@"2BN;L/&VEZA=:9%'%=1Q:JKM87$D8$=P$&3C!++P"1N R*IS?$G1(;7
M4+D6VJ20Z=<M;W;)9M^YV@$LV<84;OKP>,"@#L**RKS7K2">VM84EO+JZB,T
M4%M@L8QC+DD@*O(&21DD 5S/PONFN[+Q(Y>Z95UZY1%NG9I$4!,*=Q)XZ=:
M.[HK$U/Q/9Z;?RV(@N;NZAM3>316RJ3'#DC<=S ')!P!DG!XJK<>.M$@31G#
MW,J:PF^S:*V=@XV%L=.N!]WKGM0!T<B>9&R;F7<",J<$?0TRVMH;.W2"W0)$
M@X Y]R2>Y)Y)/6N<3QYIC:3JNH-:ZA'_ &2^V]MGM\30C;NW%<\KM.<C/%:1
M\06WV/2KE8+ATU-U2W5 I/S*7!//3:"<]@* -:BJNI:E::1I\U_?3"*VA&78
M@GO@  <DDD  <DFLZ'Q1:/JRZ5<VUW9W\D+3P0W"*#.B_>V%6()'&5)!&>E
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
MU]-<0F>*&V"EFCX^?+$ #D=2,YXS0!J45RG_  L7P_\ V?IUZ)+HQ7]U]CC
MMG+),,@HXQPPP>.I[ T]?'-E+9:W+%8:A]KT>,23V4T0CE*E2RL,G&T@'G/8
M\4 =#>6EO?V<UI=Q++;S*4D1NC TZVA:WMDA::2;8,!Y#EB.V3W/O65X2UF?
M7_"^FZG<VTD$UQ;12N&  8L@8E<$_+SQGFLVR\2RZOXRUSPZ^G7<5O910KYR
ML%.7#DMN5LJ" H&.>O2@#K**\O\ AYXRM=/\#>'+?4O[0E>[F:W-ZT3/&)6E
M<*KR'N>!GGW(KKM4\9Z;I4VI(\5U.NEQI+?O @(ME8$@MD@G@9PH) H Z*BN
M4O\ Q@\'B_1]&M;"XN(+VVDN?M$84AE 7 7)']X$GZ8SSC:UW6K?P]H]QJEW
M%/);6Z[Y?(3>RKW;&>@[T 07_AV#4+MKE[_5868 ;+>_EB08&.%4@"JW_"(6
MO_05UW_P:S?_ !57'UZW6'2I1!<.-3<) $"DC*%\MSP-JDYYZ51O/&FF64%Q
M>/'=/IMM,8+B_CC#0Q.#M;/.X@'@L%(!SSP: '?\(A:_]!77?_!K-_\ %4?\
M(A:_]!77?_!K-_\ %5:3Q%9OXA_L14F-V;,WL9 !22(,%RK9QU(ZXJ30]=M/
M$%E+=68E58IY+>195VLLB':P_ T 4?\ A$+7_H*Z[_X-9O\ XJC_ (1"U_Z"
MNN_^#6;_ .*JSJ?B*WTU[B-;6[O)+:(37"6J*QB0YP3DC).#\HR>.E9[>/\
M0O-TI('NKG^U8'GM#!;.PD51D@<?>Y QU'?% $__  B%K_T%==_\&LW_ ,51
M_P (A:_]!77?_!K-_P#%5DZQ\1+>#P+J^O:=8W<EQI\CVTMM-&$>"88'[P$]
M!N4\9R#70/KR1QVZ&RNVO;A&=+-53S2JX#,<MM Y')8=0.IQ0!5_X1"U_P"@
MKKO_ (-9O_BJ/^$0M?\ H*Z[_P"#6;_XJJC?$70$TRUOV>Z$=Q??V>4^SL6A
MGS@I(/X2/3OVS5VV\66UW!&8=.U+[7(T@2RDM_*F*QD!FPY "Y(P21G('7B@
M!O\ PB%K_P!!77?_  :S?_%4?\(A:_\ 05UW_P &LW_Q5%MXTT:\T:/4H))6
M$ER;-;?RR)OM .#%M[,,'/8 9SCFL'P[>R7/Q9\11LE] J:?;$V]U(6V,6?)
M7YF4 C'W3C\<T ;W_"(6O_05UW_P:S?_ !5'_"(6O_05UW_P:S?_ !5-\57N
MDVTNB1:K]M#3:G"MH;?> 9\G:'9<#;UR"><=#BF77CG3;;5-1TV.TU*ZO=/1
M))8;>T9F*MGE<XR/E//3I@DF@"7_ (1"U_Z"NN_^#6;_ .*H_P"$0M?^@KKO
M_@UF_P#BJS=4\>Q1VGAJZTFTGO;;6[E$25% VJ06(P2#O(4C'0<\],[5UXD@
M@N)K:&SO+RYMX5FN(;9%9H%;.-V6 W'!^4$GCITH K_\(A:_]!77?_!K-_\
M%4?\(A:_]!77?_!K-_\ %5J:3JUCKFEV^I:=<+/:7"[HY%XSV((/(((((/0B
MLL>,+$RZW$+2],NC -=Q^6-P!!8%1N^8%03Q_/B@ _X1"U_Z"NN_^#6;_P"*
MH_X1"U_Z"NN_^#6;_P"*J>W\36EWI^D7T$%R\.JLHML*N<%2X+#=P-JD^V.>
M>*Y\^*-*TG1/%NM:3:ZA=2V5R[7<4Q9?WJQJ3M#GY4 QG ]< \4 ;/\ PB%K
M_P!!77?_  :S?_%4?\(A:_\ 05UW_P &LW_Q5<KKVL2RWO@/59Q?6QENRLT(
M+8ES S<1J2&R>G&>U=EH7B6SU][Z&"&ZM[FQE$5Q;W47ER(2-RG&3P0<@T 5
M_P#A$+7_ *"NN_\ @UF_^*K?C01QJ@+$* ,L<D_4]Z=10 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %5M0O
M!I]A/=>1/.8D+"*",N[GL !W-6:JZA81:E:-;3R7"(Q!+6]P\#\?[2$,/SH
MX^#P?::SX,G35)=26;48GFO8_,F4"5^6Q%_LG@#'116 LU_J?P1GTW7])U-=
M2M(X[?9Y1CDE99%$4D98 ,>%.WJ2",<BNX_X0S3/^?S7?_!Y>?\ QVJ>H_#S
M2=1M1"VH:]$ZN)(IEUBY=HG'1E#NRY'KB@#&T36;.Z\80ZEJUKK<.I-:&QMW
MNM(DMH2,[V Y;+MM]>V ,]:VC:#J.J?"/7-"%M<6=_/)>>4ES$T6[?*SI]X=
M""![9YK:T[X;6MKS?^(O$VJ,&W1FZU:5?+/(ROEE><$UJ?\ "&:9_P _FN_^
M#R\_^.T <[H,D.O^1"_@:71]3BC9;B[N;!(UMV*E287ZL2<8QVR3V!S?"$)A
MT_3_  WJO@)O[7T\I";V2Q1K5@G F$IZG:,X'.?S':?\(9IG_/YKO_@\O/\
MX[1_PAFF?\_FN_\ @\O/_CM '*VL%VMG\1@VGWX-]+*UJ#:2?O@8 @V\<_,,
M?KTJ.>VO#H'PWB&G7YDT^>V:[46DF80D#(Q;Y>,,0/UZ5UW_  AFF?\ /YKO
M_@\O/_CM'_"&:9_S^:[_ .#R\_\ CM '%6-N=&U76-$UGP1/K!NK^>YLKV.S
M2:*:.5RX65VX0J20<]OPSN:=!/:?%"^N7L+B.T&BP6ZRQ6K^3O1W9E0@= ",
M?D*V?^$,TS_G\UW_ ,'EY_\ ':/^$,TS_G\UW_P>7G_QV@#SZRTW5+?X;>%5
M;2=0,^F>(!=W-N+9O-6+SY6W!<9;AU/&?TKU^&0RP1R-&\9=0Q1\;E]CCO6#
M_P (9IG_ #^:[_X/+S_X[6W:6J65K';1-*R1C:&FE:5S]68DGZDT <Q\32Q^
M'.LP1H9)KF$6T,8ZO)(P10/?+"MR"WN=-\-QVUNJSW5M:".-6. [JF "?0D5
M-<:?#=7EO<3[I/LYW11G[JOR-^.YP2!GIVJW0!Y!9KJMUJ'@C5)]#UMKJUN)
M!?\ F6Y1(7:%EVI'D*L8) #  8QDDU:%I?-X/^(]M_9NH>?J-[=O:1FTDS,K
MQ*BE>.Y!^G>O5:* /,;3^T-!\7Z3KD^F:C<:9=Z'#I\A@M7DEM)D;=\\8&X*
M<GD#K6S\/(KR%O$QN].N[07&MW%S";B/9OC8* 1S_LFNUHH X/Q#+J<_BR\L
M)M+U&73I-. M'L4(6:4EMRRR C:!QA20IR<Y.*Y_1[748].^&L<VCZG"VFNX
MN@]J_P"Z'DLF3@' +''.#WQCFO7** .*\.6LC^._&LES8W"VE\]KY+S6[+',
MJP!'P2,'G(]_I53P)HU_8ZG>Z=>,)-/T"62TTQ]VXLD@63YO=$*H/JU=CK6F
M/J^E36*:A>6#2;<7-G($E3!!X)!ZXP?8FGZ7ID&DV"6D#2N%)9I)FW/(Y.69
MCW)))_\ K4 <_P#$;2-1UCPF5TJ/SKRUN8;Q(,X\[RW#%,^^./<"JEY _BKQ
M;X7U*UM+VW@TLSW%P]U;/ REX]@C <#)).3C(PO7D9[>B@#R":QU1/AAXOT$
MZ-J)O9+N[,06W9EF$DI9"A'W@0<YZ#'..*Z._2XN/'G@F[BLKTV]M;7:SR_9
M9 L1D1 @8D<9*GZ=Z[RB@#R7P[9MIMH_A76/ KW]_#,ZP7[V*26MPA<LDCR'
MI@$9')XXYXKIO#D<\?Q(\7W$EG=QV]V+3[/-);NJ2>7&5?#$8X)'U[9KM**
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
M1/&-S):745O=FT-O-) ZI+LBVM@D8X/Y]J[.B@ HHHH **** "BBB@ HHHH
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
M_4WUI%!%>O%^Y>;R\[-Q.[)P><8/K3K:VU'3]8\=12:5>/'J#>?;SQH&20&
M)@8.2VX8QCWZ5F_V?J*^#/AW9G3+[[1IE_:RWD8MVS"D<;JY/'."PZ9SVH [
M+5O&5CI$%Y=26EY<6-C(([NZMT5D@/&<@L&;&1G:#CZ@XJW_ ,0--L]3ET^&
MPU2_NH[1;Q4LK7S#+$S8#)R,CKST_' KF+2SN-"U[6M-U+P3)K4=]?RW=C?0
MV\4B%96W;)6?[FTDC)[=NF=NPM+N#XJ-<O82QVG]AQ68FB@981*LK,47T&",
M=NV<T =-K6MVV@Z'<:O>).;>WC,LBQ1EG"@9/'^-8MK\0=*N=9L-.DM-2M?[
M17-E=7-OLAN#C.U6SUQZC![$Y&9OB)_R3?Q)_P!@Z?\ ] -84EI+XIL?!4$%
MG=0C3KFWO[F:>%D6,1QG" D8<LQ ^7(P"<],@&_>^-+"RM[V\%K>W&GV,IBN
M[R!%:.)E^_QN#,%[E5..?0XR-<DCE^)O@:YMIV>&YBO6RLI,;J(5*D#./XCS
M[UFZ18ZGH?A'Q!X3N=,N[FYDDNA8S1Q%HKI)MQ4L_P!U""Q#!B/;-3KH5YH^
MO_#VT6"XN8-'LYX+JYCB9D0M"J*<XZ%@?H.N* -O2]9\/PZKXJNXUN+26SDC
M;4YKHL$XCRI4$G V = ,^]6X/%MK)K%KIEQ8W]G/>0/<6IGC7$RK@L!M8D,
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
MF$Y!1HP2"Q(Q[ 'D\4 =517&6_A*;2M'UG[#=7*7+W$EW8&6<RM ^T=S_"S
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
ME@8WX!W'&,YKHU)*@D$$CH>U %73]/ATZ!HXFED9VWR2S.7>1L 98_0 >@
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
M(M'M;R!"@>-VMUC!^9@-NY3SGI76?\(1X?\ ^?2;_P #)O\ XNC_ (0CP_\
M\^DW_@9-_P#%T 8UM:W\'CGQ=?OIUU]FN[&WBMY%3(E>-7# =^K#!.,UAQ:/
MJ\?P^\#:<=*N_M>F:E:37<049C2,DLV<X/48QG-=K_PA'A__ )])O_ R;_XN
MC_A"/#__ #Z3?^!DW_Q= '-SVNK:?XJ\9>7HMW=1:W;PO:SQ;?+!6#RV5R3E
M3D=,$G-4DTK6%\*?#RTDT>[6?2KNWDO$PK>6B1,A;ACGEAQU]J['_A"/#_\
MSZ3?^!DW_P 71_PA'A__ )])O_ R;_XN@#&L;6^M_&/C:]DTZZ%M?06RVL@3
M/G&.)E8#G(Y8=<9KG%L[_2_"/@2!M&OVUC3&8E+8QF>(+&0^$9@KHVY03GC(
M[D5WG_"$>'_^?2;_ ,#)O_BZSM4^&/AS4]C*-0LYT!5;BUOI5D"G&5R21C@=
MNU ">"KNT.HZFCZ7K%CJE\_VR=M3@5#/@*GR%"5VJ-HQU&1USFE\3^'[T>+=
M%\7:5#]IN;!7M[JT#!6FMWS]PD@;E)) )&?6IK#X<>'K"!4*7UU(,@SW-]*T
MA'ID,./8"K?_  A'A_\ Y])O_ R;_P"+H R/%]K>>.=&_P"$=L[.[MK2[DC^
MVWES$8A%$K!BJAN6<[0!@8ZY-*;.YT3XCS:FNF74NF3:3#9Q/;()-CQNQVLH
M.1PPP<8]Q6M_PA'A_P#Y])O_  ,F_P#BZ/\ A"/#_P#SZ3?^!DW_ ,70!QFJ
M>%M5@\"W\,=A++J&J:Z-5>UA(;R5,Z.5+9P2$09P>3G&>M=%>6UY-\4M(U*.
MQN#8Q:;-!)/LPJ.[(R@CKT4]N*T?^$(\/_\ /I-_X&3?_%T?\(1X?_Y])O\
MP,F_^+H \]1=UKJNF3^&O$5QH5UJLEUY6GQPS0R!9<_*^\-M9DW$ =R <==W
M59M6U_4KP+I5Y?Z)?:4CZ68V6.(2.K%C.&8'/*X!!QC@9JU!\)/#MM>++#<Z
MPENARMFNHR"%1Z  YQ[9K:3P+X=C142RE5%&%5;N8 #T'ST <=8Z9KEKIOPZ
MNWT*\9]&1X+JW5H_,7=;^6&P6QC=[\#K5[4/#^H:UXJ\70M;36UMJFC1V4-T
M1\GF /GWP-X[<\UTG_"$>'_^?2;_ ,#)O_BZ/^$(\/\ _/I-_P"!DW_Q= '+
M3Z9JOB3P/H_AB\TNYL[VWEMEO)7 \J-(6!9T<'#;@O '/S<XQ5RUL[^+Q'X\
MNGTZZ$.H1P"T;9GSBD&P@<\?-ZX]:W?^$(\/_P#/I-_X&3?_ !='_"$>'_\
MGTF_\#)O_BZ .-M_#B7GA#PQI6N:+J<,UC8[5O[/(GL9U"C"E"3AAGH"/E&:
M[?PA%K$'A6QBU^4RZDJL)';&XC<=F['&[;MS[YJ+_A"/#_\ SZ3?^!DW_P 7
M6MIVF6FDVQM[*-DB+%R&D9SD^[$GM0 NIWD6G:5>7L[!8K>%Y7)[!5)/\JY[
MX9Z1<:%\.=$T^[0I<) 9)$/5"[%]I]QNQ^%=%>6,%\J)<J7B1@_ED_*Q!R-P
M[X/..E6: /.X+#5K&?QW:MI%U(FHR27%K/&5*2!H%0*.<[MP[C ZY]:ITO5!
MX<^'=M_9=WYVDW%L]ZH0?N52%D8]>>2.F>*].HH \B\2Z?XEUK1]>M[S0;ZZ
MU"/4DDM)%D3R!;+,C+Y0W??*@Y.,]<GH*ZB&VU2#XH/JATFX-G?:5#!YJNF(
M'61F97^;T8=,Y/YUVM% %35--MM8TJ[TV\3?;74312+_ ++#'YUQ7@_0]2U#
MP?J,>L7:R7=Q;R:5#<ISF"+?&LGU8EFSWRM=7KN@P>(+:"">\O[5891*&LKE
MH&; (VDKR0<]*T+:VAL[6*VMXUB@A01QHHX50, #\* /,WT76-8^%UOX&O-,
MGM[^-8+.6X(!@6*)U/FJ_0Y1.!][)Y ZUK>1J>D?$37;J/2+J\MM7L[98)X2
MNR-X@ZL)"2"OW@<X/MD\5W=% '*?#6ROM,^'ND6&I64MG=6\.QXI2I/4G/!/
MKWP?:N;M[#4/#_B36;2Z\&_VY;:A?27EE?1)$0OF<F.4N05"G///'0&O3Z*
M.(M;*^MOB<NH26$@LDT%+,S0QXB\Y92Y51UQCIQCM7-1:%K:?#^TA_LBZ-W9
M>(EU%[;Y0[P_:3)E><$[3TS7KE% 'FNJ6NHZ9XUN-<F\)2:UINJVT*O%&D4D
M]G+&" ,,<8((R0< CKZV[ZPU$^)/!=VNB-!#92W4MS':JNRV62,J@..">1G;
MGG)]*[^B@#SK7["^T?Q[/K1\,MX@TK4;6*&1(8XWFMI8RV"%<@%6#<\]1[<M
MU#3]8TSQ%X>\3V^A;K>&&>VN]-LMIDMTD(9649 9A@;L?AD<UZ/10!Q7A*#4
ME\:>++^ZTFZM+6_EMI+>28I\P6%5(P&)SG\/QXJ7Q59WMQXR\(W5O93S6]E<
MS27,D:Y$:M$R#/KR>V:["B@#SF+3]27_ (6'G3+L?VF2;+Y!^^_<"/CGCYAW
MQQS446F:Q:'X=7JZ/=3'2K.2UO(4*!XG:!$!.Y@-NY3D@UZ710!P.A6VI^%;
M[Q-8SZ7=7T&H7TNH64T"AED,H&Z)SGY"".K8!!ZUO>!] E\+^"M*T:>0236T
M.)&4Y&\DLP'L"2!]*Z"B@#AM2\*W=QX\G>.-6T+6;5#JBD]9(3A!_P #5@I]
M50U-X T+4]#TZ:+5R7:R+6-DW4M:QLQ1OJP8#'HBUV=% 'DTGA[6KGX5^)=,
M32[A;^?5);N&!]H,D9N%E&#G&=H/&>M=#>IJ&H>/_"VK?V1>0VMO;72SEU4F
M(R! @;!/)VG.,XSS7<44 <?X&L[RSO?%#7=E/;K=ZQ)=6[2+@21LB*#[<J>#
MS3=3L]1MOBAINL0Z=/=6;Z7+9/)$5Q$YE1P7R1\N%/(R?:NRHH \K?2-6?P-
MX]L!I5V+K5-1NIK.,J,RI(%"G.<#[IZXQ4M]8:CI7B2TUQ_"\FMZ==Z9!:7-
MNL<;3VLL9;!"N<%3N(.#VSGIGT^B@#.T..1-,0RZ?#IY<EQ:1!?W0/0-MX+8
MY..,G'.,GD--T[4? _BS6YHM.N+_ $/6;C[8'M 'DM9S]\,F065NH*YQC&*]
M HH YO6+:[\6>'-5TV."2Q@N[.2!)+E=KL[# .T'(4=\\G/0=^:GTW5?$O@O
M1?#=YI=S9WMM-;"]E<#RXUA(+.C@X;=MP ,GYN<8KTFB@#A+"TOX/%'CF[DT
MZZ$%^D'V1]F?.V0[& YX^;UQZUBKH^KI\/? ^G'2KLWFFZC9RW<049C2(G><
MYP>HQC.:]5HH \[T34C8_$?QWBQN[C<]F4\B/=EOLX^4_P!TGU.!ZD52TS0]
M?\,:9X8T>2PNKS2PEP]_%I\BAEG=]Z*Q++^[&YAP0#CGCBNXTSPW!I>N:GJT
M5W=RSZD4:X64IL)1=JX 4$8''7ZULT >.Q:%KD/@C^RO[ N8YHO$8NU2,H5,
M(N/,)7!Z!<8Z9["NQCM;QOBTVJ?8K@6#:*MJ+ADPOF^<7V^OW3UQCM78U!>V
MJWUA<6CR2QI/&T9>%RCJ",95AR#Z&@#A])\/W-G\1-2M(Y$.A)(NKI$.L=U*
M&0K_ +ORM)CL2M=?;:A<SZS?6,FFSPV]NL;17C%=DY8$D*.OR]#FF:'H5KH%
MA]EMI+B8LVZ2>ZF,LLK8 RS'D\ #V %:= !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1139'$<;.1D 9J9S4(N4MD ZBJ?\ :,?]QJ/[
M1C_N-7D_V_EO_/U?C_D:>RGV+E%4_P"T8_[C4?VC'_<:C^W\M_Y^K\?\@]E/
ML7**I_VC'_<:C^T8_P"XU']OY;_S]7X_Y![*?8N453_M&/\ N-1_:,?]QJ/[
M?RW_ )^K\?\ (/93[%RBJ?\ :,?]QJ/[1C_N-1_;^6_\_5^/^0>RGV+E%4_[
M1C_N-1_:,?\ <:C^W\M_Y^K\?\@]E/L7**I_VC'_ '&H_M&/^XU']OY;_P _
M5^/^0>RGV+E%4_[1C_N-1_:,?]QJ/[?RW_GZOQ_R#V4^Q<HJG_:,?]QJ/[1C
M_N-1_;^6_P#/U?C_ )![*?8N453_ +1C_N-1_:,?]QJ/[?RW_GZOQ_R#V4^Q
M<HJG_:,?]QJ/[1C_ +C4?V_EO_/U?C_D'LI]BY15/^T8_P"XU']HQ_W&H_M_
M+?\ GZOQ_P @]E/L7**I_P!HQ_W&H_M&/^XU']OY;_S]7X_Y![*?8N453_M&
M/^XU']HQ_P!QJ/[?RW_GZOQ_R#V4^Q<HJG_:,?\ <:C^T8_[C4?V_EO_ #]7
MX_Y![*?8N453_M&/^XU']HQ_W&H_M_+?^?J_'_(/93[%RBJ?]HQ_W&H_M&/^
MXU']OY;_ ,_5^/\ D'LI]BY15/\ M&/^XU']HQ_W&H_M_+?^?J_'_(/93[%R
MBJ?]HQ_W&H_M&/\ N-1_;^6_\_5^/^0>RGV+E%4_[1C_ +C4?VC'_<:C^W\M
M_P"?J_'_ "#V4^Q<HJG_ &C'_<:C^T8_[C4?V_EO_/U?C_D'LI]BY15/^T8_
M[C4?VC'_ '&H_M_+?^?J_'_(/93[%RBJ?]HQ_P!QJ/[1C_N-1_;^6_\ /U?C
M_D'LI]BY15/^T8_[C4?VC'_<:C^W\M_Y^K\?\@]E/L7**I_VC'_<:C^T8_[C
M4?V_EO\ S]7X_P"0>RGV+E%4_P"T8_[C4?VC'_<:C^W\M_Y^K\?\@]E/L7**
MI_VC'_<:C^T8_P"XU']OY;_S]7X_Y![*?8N453_M&/\ N-1_:,?]QJ/[?RW_
M )^K\?\ (/93[%RBJ?\ :,?]QJ/[1C_N-1_;^6_\_5^/^0>RGV+E%4_[1C_N
M-1_:,?\ <:C^W\M_Y^K\?\@]E/L7**I_VC'_ '&H_M&/^XU']OY;_P _5^/^
M0>RGV+E%4_[1C_N-1_:,?]QJ/[?RW_GZOQ_R#V4^Q<HJG_:,?]QJ/[1C_N-1
M_;^6_P#/U?C_ )![*?8N453_ +1C_N-1_:,?]QJ/[?RW_GZOQ_R#V4^Q<HJG
M_:,?]QJ/[1C_ +C4?V_EO_/U?C_D'LI]BY15/^T8_P"XU']HQ_W&H_M_+?\
MGZOQ_P @]E/L7**I_P!HQ_W&H_M&/^XU']OY;_S]7X_Y![*?8N453_M&/^XU
M']HQ_P!QJ/[?RW_GZOQ_R#V4^Q<HJG_:,?\ <:C^T8_[C4?V_EO_ #]7X_Y!
M[*?8N453_M&/^XU']HQ_W&H_M_+?^?J_'_(/93[%RBJ?]HQ_W&H_M&/^XU']
MOY;_ ,_5^/\ D'LI]BY15/\ M&/^XU']HQ_W&H_M_+?^?J_'_(/93[%RBJ?]
MHQ_W&H_M&/\ N-1_;^6_\_5^/^0>RGV+E%4_[1C_ +C4?VC'_<:C^W\M_P"?
MJ_'_ "#V4^Q<HJG_ &C'_<:C^T8_[C4?V_EO_/U?C_D'LI]BY15/^T8_[C4?
MVC'_ '&H_M_+?^?J_'_(/93[%RBJ?]HQ_P!QJ/[1C_N-1_;^6_\ /U?C_D'L
MI]BY15/^T8_[C4?VC'_<:C^W\M_Y^K\?\@]E/L7**I_VC'_<:C^T8_[C4?V_
MEO\ S]7X_P"0>RGV+E%4_P"T8_[C4?VC'_<:C^W\M_Y^K\?\@]E/L7**I_VC
M'_<:C^T8_P"XU']OY;_S]7X_Y![*?8N453_M&/\ N-3XKU)9 @5@35T\\R^I
M-0A53;T6_P#D)TIKH6:***]4@**** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** # ]*,#THHI60!@>E&!Z44460!@
M>E&!Z44460!@>E&!Z44460!@>E&!Z44460!@>E&!Z5GZYJT.A:+=ZG.CNENF
M[RT^\[=%4>Y) 'UK*T_4O$T>IVT.MZ79I:W2,1-92N_V5@-VV7< "",@,.,C
M&.119 =+@>E&!Z5C6?BS0-0ANIK75[22.T3S)W$@ 1.?GR?X>#\PXXZU%%XT
M\-S6DMTFLVGDPE1*S/MV%L[0P/0G:<9]*+(#>P/2C ]*Q?\ A+= _LA=5_M2
MW^Q/(85DR<F0=4V]=W!XQGBIQXBT9H1,-2MC$;4W@?S!M,(ZOGT'?THL@-/
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
M&S^<) I.TX P1U./>I[OQ#KR&WL[/3]-N=16R:^N@MT_D[-V$6-MF2S8."0
M,'K19 ==@>E&!Z5F+K N?#":U86LMV);074%NF \NY=RKZ G(%<^WB_4[)=1
MLK_3[1M6MVM4A2VG8Q2-<,4168KE2I4EN#\N".N*+(#L\#THP/2N-_X2S5 W
M]DFPM/[?^W?8PGG-Y&/*\[S<XW;=F1C&=W'O21>+M5U 6MAING6G]L'[3]JB
MGG811>0XC;#!<G<S+MX'!R>F*+(#L\#THP/2J&B:I'K>B66IQ1M&MS"LGEL<
ME"1RI]P<C\*OT60!@>E&!Z44460!@>E&!Z5#=7=O91"6YE6*-I$C#,<#<S!5
M'XL0/QJC<^(]'M+>ZN)]1MTBM)O(G8MQ')M#;3[X(-%D!J8'I1@>E4)=;TR!
M[E9+Z!6M8DGF!;[B-G:Q]C@XI(=<TN<VPBOX&-U UQ" WWXUQN8>PW#\Z+(#
M0P/2C ]*HSZSIMKI"ZM/>11V#(LBSL<*P;&W'KG(P.^:HS>,?#MOIUO?RZO;
M+;7!98GW9W%?O<=?E[^G?%%D!N8'I1@>E8^H>*M!TK[/]NU:UA%Q'YL1:3AD
M_O9'\/(YZ<TV3Q=X?BU".PDU:U6ZD=$6(OSN<!D!]-P9<9ZYXHL@-K ]*,#T
MK+3Q'HSZRVD)J,!U!208 W.0,E?3=CG'7'-2VNM:9?-;+:WL,S7,;RPA&R71
M2 Q^@) /OQ19 7\#THP/2LN\\1Z-8:I#IMWJ-O#>S;=D+-R=QPN?3)X&>IZ4
MV'Q/HD^J3:;%J=N]Y#NWQ!^1M^\/0D=P.1WHL@-; ]*,#TKFS\0/"8CDD_M^
MRVIC<0^>#GD>HX.2.!@YQBNC1UD171@R,,JP.01ZT60"X'I1@>E%%%D 8'I1
M@>E%%%D 8'I1@>E%%%D 8'I1@>E%%%D 8'I1BBBBR ****8!1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% &+XNTNXUGPO>V5IM^U$+) '. TB.'4$]@2H'X
MU@ZAJFN>*K&?2=.T6]TU9K.=+N?48O+V,T3*B1D'YCO()89&%/<BNXHH \JU
MBSO]>M[::#1;C3TTS3A#-%=JL(G?S[=Q A)PPQ"PS]WYQSR:D/GZ_P",;Z>+
M1[JW"7>DR/'/& Y5&F)=E!.,<=>< 'TKTF^LK;4K*:RO(4FMIE*21N.&%5])
MT/3M#AECT^W,8E??([R-([G&,LS$L> !R>* //M5T35(?$$VJ(FJP6L6KSN7
MTZ)'FVR6T*B14=6W+N1U.!GYC[U5O?#.IWFBZ3;VVD71>QEGU607[J7G#3%O
MLQ*!5!D^\5QA<*#FO6Z* .;\46MWJ6AV-]86LDMU974%^EJ^$>0*?F3GHVTM
MC/?%8^M7>M^+]*U.RL-%N;6Q^Q-N&H1>3)<3;E(C0$\+M# L>"6&.AKO** /
M-=4L[WQ+J_\ :<&BWMO:J^G0/'=0^6\NR[61SM_NHN>>G)QD5%K/GWNJ^--$
MM-*N9KG49;:**ZCC!CC/D1\NW\.S[PSU[9->GU7@LK:WN;FYAB"S73*\S GY
MR%"@_D /PH X&.PU#]SH!TF[^T1^(#J+7YC'DF'[09]^_P#O%#Y>WK^'-1QV
M6K:7X5\*V\=I>6HB$@NIK.S2>YMV(. H96V[B2"V#VZ9S7I5% 'D$6CZS!X?
MAAETG4&FFTO6[0JR!W226821[RO'S!3@C@DCUK2O-.U)+#7-"&D7<MSJ]S#-
M;W:1YB1?+B7+O_ 8S&QP>3@8SFO3:* ."M]&O8[6Q_T*177Q1<7;_+R(VDFP
MY]BK+SZ$5WM%% !1110!'<0K<6TL#DA9$*''H1BO.B^M'P1_PA']AWO]I?9/
M[,-YY8^R>7M\OS_,STV?-M^]GC'>O2:* //I-!NXM-U>*&RD+/XBLKB([>7B
M1K7+_0!'Y]C6=I&@ZC!K5G87:Z](UMJ\UX>(4LU4O(XE$GEEF+!P"F[.6.<
M5ZE10!RWC>WU%+*TU?1K5KG4].E+10IUD61#&R_0%E;_ (!6/JWA>2UMM*T^
M'3IM1M;70;VTE6.3RS*[&WP-_9VV.0?45Z#10!YA86.MWEQ!N34I[2/4[=X;
MK4+18;K:(I0^_:!N524 8@=3UZU5?2]4O/#.DZ+'HEY;W6BZ9<PW,KQX25S;
M/"%C;^/>[!^/3G!KUFB@#EM,TV>V\4V4WV9H[>/1$MRVW 5PX.SZ@9XK,CU3
M4=!\0>)TB\.:K?2WEZDUH\$2^2_^C0IR[, !N0@GM7>44 >:6'A2_P!*TC6[
M)K=II_\ A&8+-)47(EF N2ZK^+K^8JY_8&HGQ;ID8MF_LJX2WOKQNRSVZ%54
M^Y)@/_;(UW]% 'EOA70=1M-4T6RO5UYY=,N)I)&E$*6D>5D7>CB/=)OW_=W9
M&XENG/J5%% !1110!GZ]#)<>'=3@A0O+):2HBKU8E" !7"7?AK5;35/"]Y86
MS-;SR6G]J0]XI(DPLN/]W*-]$]*]+HH \ETVPUZ]U+1S=6>I(T,=W'/ ;6*"
MTM'>)PJ1;0"RD_QDD=.03BG6NEZK+:6MZ=(O0MG9:1YEM)'MDD-O--YJJ">2
M,A@._P OK7K%% 'EWB'0M0\87MO<6FE2Z7&'N94:6,+]J8)!L^T)C(5F0KM/
M)5!GTKN]*UO^T)([:6PNK2Y^QQ74D<R !-Y9=F<_>!0YXQ@C!-:U-$:"1I B
MAV 4MCD@9P,_B?S- 'F6KZ!K+ZEJES8VDHDO=5DLV<<$6D]K CRCV5XU/_ 3
M4D/AS5KO5(M.A^TZ79V^J7FHBZ2)&&00D*J'!4Y#NW3^$'TKTNB@#EO!NFWV
MBQ:MHUXTT\$-VTMK=.@42QRCS&P%  (<R#   XK'\-V.HF;POI=QIMU;_P#"
M/0R)<7$J8CD81F%/+;^+<&+<=,8.#Q7H-% '-6$-[87WBZ\%K(QENEFMEQ_K
MMMK$OR^OS*1]16'?^&)%\ >';::PDOGTZX@O+VU"@O.<-YWRGACF1F*]\$=Z
M]!HH \ST^PNM)U./Q!;Z+>1:6-0N#'810?O889(8U+B(<@&6(MM'(#YQUK9T
M#1=7M;"#4)=1OK(-/<WL^EQQ1.'\V:24*Q*E@VUU4A6'(KLZ* /*X8=2\4:;
MK;7^C:K!KU_921P&YM]EO;(/F2%6SW(&YL?,?8 #1OEN==O+W69O"]S<6<5K
M;6YL+V,+),1-YDI5#][8-I&>&((%>AT4 >82:27%]JD.AZK96$NI136Z62^3
M=6Q6$H]PL6#]XD(5(R5RQ%=3X%TJ72M#G,\4\+WEY-=>7</NE56;Y=Y_OD $
M^A)%=-10 4444 %<YJZF/QQX;N&_U317=L#V\QE1U_\ '8I*Z.H+FS@O%C6>
M,.(I%E3D@JZG(((_R1D'@T >:3^'WUIK73K/PR=%NX!>)>W*Q!8F22*2/:LG
M_+0.[H_MMYP13[^UUSQ!:"6#2;^SFL-':SECE B::222$RQQMGGY(6 8'&7&
M#Z>GT4 >5S:?':>%O&(TO1[C2](O=/2VM;.>(Q%[MP\994/*@[X5]RN?<]1X
MVT<ZAI>E2263ZC%I]_%<SVR*&:9 K(V%/WL;]VWN 1SG%=+<V<%X(A<1B012
MK*@). Z]#CO@\\]P#U J>@#S6RL8[%/MMSX1DGTF74IYK:V^S!Y;)&B10PA[
M!W60D=1O''7$6C66J^%%CO3HE[,EW930PVEL@=K4_:)988FP<*-DNW/1=F">
ME>GT4 <=I>@Z[X=T"V-MJ4U[)9:;'#'I3+$L+RI$J\/MW\E2>6QSZ5S\FEW5
MS?WVL:/H=]9V4<]G>26<T?E/=7$<Q:5D0G[WEG&>-Q ZXS7J-% 'G!MK\Z]_
MPF TJ^^SC40?LODG[1]G^S&'S/+ZYWG.WKMYQVI--M]1T/5(O$D^D7\L=]]M
M\RV@CWS0^9,CP[E![JA!_NDC/K7I%% &+X2TZXTGPIIME=J%N8X09E!R%=OF
M89[X)(_"MJBB@ HHHH R/%&GR:KX7U*S@_X^'@8P>TJ_,A_!@IK@]"\+ZG<Z
M_;-J>GR1Z?J$+ZK>J_\ !=/YR&)O<),O_?NO4Z* /']*\+>(&O=+EO;.0&[G
M6TU%F[0VWDF-C[.8)/\ O]3=1\*:^+F^:SLY0;:Z;3[)A_SZW'GEW'LGVB/_
M +\5[%10!R/B*.79IXM-*NY+?1+^"9XTC!\Z+RV7,0S\VPNIQURO&:S(KBZL
M_$2^(W\+WB6=Q!/ L5M &G#&16$DD8P5,@4Y]-J[L9X]!HH \?-G?>%_#FK0
M7NE27C7/AY(BD#(XM"HF)CDR?E0!^&Z':V.0,ZRZ+?2>'_$&RQD:6ZN-.>'"
M<R*D5MDCV!5_R-=EJOA;1=;NTNM1L5FE5!&3O90Z Y"N 0'7))PV1R?6MCI0
M!Y9I^A:C!K<-C=)KTAAUJ6^^585LPAD>19/,\LN20P4INW9)' J_X8L]0T37
M=6UFYT6<0:M#)=0PPH6DM=CLWDD$X#2!O,P,#>6![5Z)10!PLAN[/6M9C?P[
M<:A_:]Q;3VY>(&%5$<:%96Y";"C-SUSQDUEVVG:D]AH^@?V1=QW.EWDT\]XT
M>(G7;* R/_$9#(.!R,MG&*].HH \\T[0;N&VTE6T]U,/A1K-@4^[*1%^[^O!
MX]J[+P_#+;>&M*@G1DECLXD=&ZJP0 @_C6C10 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
$0!__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>13
<FILENAME>exhibit101-ptagreement002.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement002.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%)D @9Y/2EH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBJVH3W-MI\\MG:FZN50^5"'5-[
M=@2Q  ]: /./'>IZC:ZQ!XILY7.F>&KN.&ZA49$RRC$[>^Q6C ]#O]*[K7?$
M-EH'AZ;6K@M+;1JI418)D+D*@7MR6'/O6+9>#=)N/"XAU;1HY;Z>!C>%Q&99
M)6R7;<#C)8DCGCCI7-1V6MVWP=D\.:_I<4M\@2RM$ENDQ<@N!& RDE748QG@
M%0<XS@ Z[_A*[F+Q5'X>N=&E^UR6INT>WN$>,Q@[3DOL.X-@8 /4'UQGZ9\0
MWO\ 3VU670;JUT>'[3]JO))D(@,)(QM!RV<8XSR<<U4T:[U"T\1P7>M^%]2C
MNYXOL4-]+?6\^U1EPF$*XW%>6QUQDXZ-T?PGJ-W\,M7\-:C";"YNI+HQN9$=
M?WDC.A^4GID9% &I;>/[5O$6GZ3=16\?]HQN]M+!>).%*#<4E 'R-CT+ X/-
M5G^)FG))I<YC@?3=2N%MX9H[M6F0O]QGBQE5/KDD9&0.E6-#N?%VJVZZ=XAT
M:WT]$C,=S=QW:R_:?E*_NT RN2<DMTQC'/%#PE'XTT:QM/#-YI=J;:RVPQZP
MMTNUX%Z8B^]OVC'/&>?8@%F;Q_=>1K\MKX;N9O[$F9+E7N(TRJH'+#KDX/ &
M>G)' JQ%XYWWVA[](N(M+UHA+2]>5<ERA=0T8Y (!P<_@*S;?1M8CM?':-ID
M@;5Y)'LQYT7SAH1&,_-QR,\]O?BHYM$UEM%\!6RZ7(9=&FMWO!YT7RB.$QG'
MS<\G(]ORH OZU\1['28;ZZCB@N;2PG,%R!=JLY((#F.(CY@IR#DJ>#C/>P_C
M::?7KG1],T.XO)X[*.\B<SI&DJ.2 <G.T<=^?;&367IEMXO\+ZKJ>F6.D6VI
M:7>7LMW:WK7BQ?9O-8LRR(<LP#$GY>OX\:%IIVJ6WQ'OM7ELY);-]+BM5G5X
MP9)$9F)V[L@'=Q[^@H SM2\>7U[X;\+ZKHUDJ1ZMJ<-K*L\NUXSYA#)P".3&
MREO3MSQZ!$TC0HTJ!)"H+*&W!3W&>]>6VGA;Q!;^ /#ME_9H.H:1K8OY+<W$
M8\V/SI'^5LXSB0=<=#7J,+2/!&TR*DA4%D5MP4]QGC/UH DHHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "JNH:;8ZK:-::C9V]W;,03%/&'0D=.#Q5JB@#GO^$#\(?\ 0K:+_P" ,7_Q
M-0W?PY\&7MJ]O+X8TM4<8)AMEB8?1E (_ UT]% '&Z7\*? ^D!_(\.VDI?J;
ML&X_+S"<?A6C_P ('X0_Z%;1?_ &+_XFNAHH Y[_ (0/PA_T*VB_^ ,7_P 3
M1_P@?A#_ *%;1?\ P!B_^)KH:* .>_X0/PA_T*VB_P#@#%_\31_P@?A#_H5M
M%_\  &+_ .)KH:* .>_X0/PA_P!"MHO_ ( Q?_$T?\('X0_Z%;1?_ &+_P")
MKH:* .>_X0/PA_T*VB_^ ,7_ ,36W:6EM86L=K9V\5O;Q#;'%$@55'H .!4U
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
M',RA&((+'GYB03DMG.3ZT^/PMIT-_JE[&;E;C5%5;MQ<-\X4;5P,_+@<<8H
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
MR(#AOQX/?-:2>'+"/7;G6D-PM]<0B"1Q,V-@S@!<X&"21@4 >5I)?+\(M/\
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
MS##8W$+PS06\DI^W!D+(VXOPXP6WCDC/- '<57%];-J+6 E4W21"9HQU5"2
M3]2#^1KQ>TBFA^%6B^(_[0U!]4M]554F>[D/RF\*,I7.&!!.<@D^N,5V&E:;
M:?\ "Y_$,WEGS!86DH.]OO$R D\\\ <=* .SU:;4+?399-+M(KN\!79#++Y:
ML-P!RV#C R>G:KM<5\5VDB^'E_<0SSP3120%6AE9#S,BD'!&002,&J'C:74+
M#6+G49]-EU?0A9+'.EG-MN=/8%RTR+D9R".001M]!R >B57M+ZVOTE>UE658
MI6A9EZ!U.&'X'(_"H=,EMK_0K.6WE::UN+9&CDY4NC*,'U&0:\ATVY_X1KX4
M7=WIY>V>;6I+.6X1S^XA:Z*EASA2%X!]2#0![917!ZI"_AWQ_P"%UT@R);:F
MT]M>VH<LCA8]ZR8)X8$<MU(.#5_Q_JLVEZ;I21SBWBO=4@M)YF8J$C;<3E@0
M0"5"D@CACS0!UM(S*BEF8*JC)). !7 S>&]6TY]=6QUZWL_[1L2MM9C>J03@
MA?-4EB5!W ':.I!ZUCQW=O?:;XGTG4]%N='U9-'=YK$RE[>5%#8EB8'!RQ /
M<\ YP: /4+*\@U"QM[VUD$EO<1K+$X_B5AD'\C6-XS\13^%O#DNK06:70BDC
M1T>4I@.ZH".#G!8<<?6N1TR&R@\'>!+-9;@RWD,4HT^-N+TBWRP<L?E1>&/;
M@#!.*P=2ENG^%GC6TN)& M/$ @A02F00IYT#!%+#.T%CCC\* /:SG:<#)[ F
MN8T3Q-J6NZ)K5S;Z9"NH6%[<645L;C*2/%QR^T8!/M6'<:6_AGXE^'3I=Y?/
M#JXN8]0@GN7F5]D>\2_,3M(.!Q@<@#%9$6]?AK\1I8IIH98=6U25)(96C8,I
MR.5(/X4 >KP-*]O$T\:QS% 716W!6QR >_/>L/5/$4^G>,-!T3[&CP:KY_\
MI'FG=&8H]^-N._'.?7BN9UAM7BM-"U"WTW^W-/ATU1>:='-MG4L%(F0?QL-K
M#'7KCJ:H2O8:YJWPS-C=W<EC+#>(LK.R3,JP $,V<AN""0<]<'O0!ZK17$>
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** .?A\%Z-:W,TUBMY8K.YDEAL[R6&)V/4[%8 'W %7-0\.Z5J>EQZ;=6:
MM;1.LD01BC1NIR'5E(*L#SD'/)K4HH RH_#FG1P7D92:1KQ!'<323N99% ("
M[\[@!D\ @<GU-5#X*T)M-T[3C;S_ &7395FM(Q=RCRG7[I!W9..V>E=!10!S
M>K>';"$:KK%O;7,FJ7%DUL2LTCEUP=J[,[>I].,DUG>!O"\%MX3T!=1M;M;R
MPA0FWN97*0S!<%E4G;GDX/09XQ6H?$-TOQ!3PXUI$+=]-:]6X$A+DB14VE<
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
MHS9W7C'2KPXU.+7)KB56^\T<@4H_T.#BO0[:VAL[:*VMHDB@B4)'&@PJJ!@
M#TK,U/POI&K7\=_<6SI?1KL2ZMIW@E"_W2\9!(]B<4 4_'.L3Z-X/UF\T\@Z
MC;V4DL0 R4'3?CT'7\*Y;6H$TC2O"&N:"["\GO;2"616)-]%,,.)#_&3][<<
MD8S7H-II5G9020Q1%EE&)6F=I6D&,?,SDEN..35'3O"FC:4\!M+5U6W):WC>
M>1XX"<@^6C,53@D< <$CH: . &C6NHR_$>*[>ZF2UFWVX>YD/E-]F#!ASU!Z
M9Z=L<TQ(3;Z5\-O$*W%RVJW]U:075P\[L98Y+=BRD$XQD#M[]:]"3PIH\9U(
MI;R@ZG_Q^'[5+^]XQS\W'''&...E,;P?H;V>G6C6LOD::ZR6:?:I0(6484CY
MNPX'H* .'L?"]EXDUCQQ9ZA=7QC@OE%N?MDG[AC"K;Q\W)!/&<@=@,G,?AF^
ME\1:7X1BU0R:CJKZ7-,UC<,! \>\(MQ*2"2<  8!)+$\<FMG0?#+77B?Q9<:
MKIU[!;ZA<HT+?:&C6>(1JI#!'YY!X8="?4UT]_X3T/4KJRN;K3XS-9(8X&1F
MCVH?X"%(!7C[IR/:@#RRW>YN_AMX+::]N_-7Q+':[TN'!,8NI% //. H SG&
M!74:;H]I!\1/$7A^,2C3+O2H+B2$S.W[PNZEP220Q '(YR :Z%/ ?AF.UBM8
MM,\N"*Z^V1I'/(H6;)(88;L22!T&3C&:GN]'MM-N;SQ!I^FRWFL?9RBI]K93
M,!RL?S-M SZCC- '$^&W>[M8/ 5\-]_I5\3>2'K+;1D21RY_Z:;HU/J"]=MX
MPNK:Q\':K/=W\^GVZVS!KFW'[R// *?[62 /KVJ/P]974MW>:]J>GI8ZA?)'
M%]G#J[11(#M5F'!;<SGCL5':M;4=.L]7TZ?3[^W2XM+A"DL3]&% ' :/;26G
MQ/BT\6@TZTNO#[.]K#.<LRRJH=]N ),,02"?]XURME9B#X3Z#X@6XNVU2WU5
M5CN'N')53>,C+C."""<YZ]Z]2MO _ARTNK:Z@T[;<VT1ABF,TA<(<<%BV3C
MP3DC QB@>!_#PT6/1A92#3HY?.2W%U+M5]V[/WO[W/UYH Q-,,'BCQQXLLM6
M03+IK06]K;N?]4C1[C(H[,S$_,.0 ,&IOA$,?"W1!DG"2C)_ZZO6U>^$-#U#
M5(M3N+-OML<8B\Z.>2-I$_NOM8;Q[-FK>BZ%IOAW34T_2K5;:U0DK&K$\GD\
MDDT <-IF@6>L?$CQ?%>RWDL5G/83P1_:Y $?RRV>&]<\=!DX%9VC6-SXO\(V
MWB%M=M=/U*&Y:>>\6U9IX'20[H6/F#Y,?+LQC&.*](L_#^FV&K7FJ6T,B7MY
MM^T2&>1O,VC"Y!8C@<#CCM6>O@/PPOB!M<728EU!I!*SAF"LXY#E,[2V><XS
MGGK0!SXN(;3XA>.+FXNFM88M'M7DN$&6B4+*2P]QU_"LS2HVL_&'@D6T+6]K
M?Z?<K([RYFO%6)&62<#C>2=W5CR>>U=^?#&CMJ-]?O:%[B_B\BZ+RNRRQX(V
ME2=N,$\8XS5*U\!>&+*2PDATM1)8$FV=Y9':/(QC+,<KZ*<@=A0!YW8R1>&_
MA[XKU#3T6TDCUZ>U:>-3F& W*(V,$$84GI@CUKHM1TRX\+F]\3Z;JEF -*G*
MZ?:6K+%=NB%UD/[QAD8^]CD'&>:ZZ'PIH=O+J+QZ;%_Q,BQNU;++*6^]\I)
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M_P#1V\E#O'/4'N<],=,Y7PY<'Q!9>$X-51M1U=M%>=[6](^SB(NJB=P02SD
M 8ZY;)&<T >LT5XYIFDW.M_!72=1@'VK5M(EDN;4.2WFK%._[H^JLB[0#Z#T
MKMO"]Y9^*]1D\5VJ VIMX[:T=EY/&^1O^^F">QC;UH ZVBN2\7&SGUSP[83+
M)<W4TTTD%@S!8)]L?S--D'A-P(P"<D<=QYW>HW_"J?%$#2E?L/B-X;=89&5(
MD^T1#:HS]T;FP#P,T >XUSGC7Q!>>&="74;2W@G/VB&%Q*Y&T/(J9  Y/S>H
MKF9[6+PU\3Y&TB!@;C0+BXFBWLWVB6.1=K-DDEN2,]>:YW4;:PU3X+Z3X@D$
M=QJ<US:33WIP9&E:X4.I;K@$D;>@VCC@4 >UT57OH4N+"XADW;'C8':Q4XQZ
MCFO&M-M;?1O@OI_BJ S)J<EK#;7%Z99&*6[W"B3Y0P'"YY&".3G.30![5(9!
M$YB56D .T,V 3[G!Q^587@C7[CQ1X2L]8NH(H)IVE#1Q$E5V2L@P3[**R](\
M.P:?XKMM8M-5L8H[NU,9LM/M?+BN@/F$I^=AD9 W8Z$#/(KE/#DEFWPN\*V=
MTT[R7.JRK!:1L%2Z<3S'9*2"/+XW'_=& 3Q0!ZO?7MMIMA/?7<RQ6T$9DDD8
MX"J!DFI()EN+>.=,[)$#C/7!&:\8U"V3_A$/B?I\\%MY-I+YL-O&-T4#F%6.
MP$<<\Y '.3@5T%ZUO!KWA70%&GVFFW=A+*L,UMOAGN0(\ H&4%MI8C.>3TSC
M !Z77.1>(+QOB'-X<DMH%METP7T<RN2[$R;,$8 '0^O;FN)U&U/A6+3=!.K^
M?I>H>(4CN41#'':QNI<6P^8X1B%XST)'0ULZ?IMEIGQMN8[&VBMTD\/)(T<2
MA5W?:",@#@< 4 ;OB;Q!>:'J.@0P6T$D&I:@EG*[N=R;E9L@ 8Z*><_A71UP
MOQ)MTNI_"$$A<))K\2ML<HV#%+G!'(^HKGK^VF\$^)/%$/A=9(K/_A''U!K=
M6+I#=!RJ,H.<$J&..^V@#UNBO.=)T&SNY?#OB.SUJSA1TV9L[9D>_5UY25O,
M)9A@MDC(()XP:XZXTNUB^$VNZPHE.HZ=J\[6=PTK%H"MT -O/''!]>_:@#W>
ML?Q'KJZ#8VT@C$D]W>0V4"DX'F2N%!/L,DGZ5R=X@\2?$#7M OY; K#:0&TM
M[VV,N8V5B\D8WK@[N"PYX7FLSQ'HEK!X4\&6MU=1ZU)!KUI:&^GA&Z5/.8%3
MG.1QM/)SC- ';:;-XM.N20:G:Z4-+CW;;J!W$DO *XC.=N/F!RQ]O?6L=3M-
M2-T+242BUG:WD9>0' !(S[9P?<&N-O;*WM/BYX?BMXA'"VE72^2O$8 ,8 "]
M!U/05A>'=$AD\)>+[?2S9:=?2:Y=6T$S1A5QYR;8CCG8QPN!V:@#UJBN%\%:
MA$NLZO97^A+H6KPP0O<PQ,IMI8P7"RQD8&#\P.?0>AKN00P!!!!Y!% "T444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
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
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 444@92Y4,-P )&>0/\B@!:**
M* "BBB@ HHI%96SM8'!P<'H: %HHI"RJ0&8#)P,GJ: %HHHH **** "BD5E<
M95@PZ9!S2T %%%% !1110 4444 %%%% !1110 4444 %%%% !112;UWE-PW@
M9VYYQZT +1110 444@=2Y0,"P )7/(!__50 M%%% !1110 44C,J#+,%&0,D
MXY/2EH **1'610R,&4]"#D4M !1110 4444 %%%% !1110 4444 %%%% !12
M%E#!2P#'D#/)I: "BBB@ HHHH **0.K,RA@67J >12T %%%(65<;F R<#)ZF
M@!:*** "BBB@ HHI-RERH8;@,D9Y H 6BBB@ HHI RL6 8$KP0#TH 6BBB@
MHHHH ***:'5BP5@2IPP!Z'KS0 ZBD5E=0RL&4\@@Y!I: "BBB@ HHHH **:K
MJX)1@P!()!SR.HIU !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
MP)7< 5(SWS^.SXHLM>\2?#[5K:#PV;.YN_)2"R$L7F?+(&9W;<%' X&2>/?
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
MSS8Q*(MZ^85+!,\D=,X].16?KFM6^AV<4TR/++/,EM;P)C=-*YPJC/ [DD]
M">U<5:S-!\:[JYO[&"Q9/#C22R1R;TD43K\V[:IX P<CMZ8H ](HKB5^)%A]
MOTB.2&+[+JT@BM9(KI'D5V&4$D8^YN[<G!X.*K3?$R==-U'4H/"VI36>F7<M
MO?.)8P8A&<,P&?GQR2!P .M '?T5S5SXMWNHTFP:]0Z<-2\YW,41B/W0K;3E
MS@G!QQU(JG<?$"W33/#E_;:7>7,6NNB0;2@*,RE@IR>O!]O4B@#L:8DL;R.B
M2(SQD!U# E21D9].*X:/Q9XAN/&6C:9-H0L4N+2>>6"6Z5GRCJH.5!& #D>N
M>V.;%MXDT^SNO&-Y;Z!-%=:84>]*&,27.(MP;[V.$QWS[9XH [2BN.LO'C7-
MWH N-%N;6SUR,?9KEY4.)#'YFTJ.0",@'OCH*DU'QS':6>N7]MI\EW8Z)*8;
MQUD"N6 #/Y:D8;:&&<E>^,T =;1573;TZCIMO>?9Y(!,@<1R%2P!Z9*DCD8/
M![UR&I?$[2].@%^RPRZ6+G[-),ETGG+\^SS/*ZE-W?.<<XQ0!J#P-I,5]/<V
ML^IV:W$C336]IJ$L43NQRS;5;@GOC%=!;V\-I;QV]O&L<48VJBC@"N6E\:73
MZMKNF6'AZZN;K25B9PT\:+('5F!!R<<#@=3GD#%5X?B*D]IH>I+HUVND:M-%
M;I=O(@,<DG"@IG)7=\I;\LC!(!NZ7X7TS2-4O-2MEG:ZNW9W>:=Y-FXY8(&)
M"@D X'H/05K22QQ!3(ZH&8*-QQDGH/K7(77CF\&K:UI>F^&+^^N]*\HR*)HT
M#JZEL@DGL!@=3GH,5A^(]9TWQ7H_@3Q!91?+-X@M0AD0"2/EPR'TY7![<4 >
MG45@7'B.:34-1LM(T_[?-IRJ;D&81C<R[A&AP=S[<'!P.1SZ9I^(5I+I^@ZE
M9V<DVGZQ<+:K.[A/L\I)&V08..01QGD>XR =C16%?^)H-,N]2%U%ML].M%N9
M[D/G&XMA N/O?*>,]U]:SK/Q[:2^)K31+J."*6]A>6VE@NTG4[!N9'Q]Q@.>
MX.#@T ==17#M\3--272Y62%M.U*X6WAGCNE:56;[C/%U56]<DC(R!6SXUUB\
MT#P;JFJV$$<MQ;6[2*)&PJX'WNG..N._M0!OT5S,'B2>&UT:SFM1)J^HQDPP
M^<-I54!:1VQ\HY'0$Y(&#5K0_$D>KZAJ6ES6S6FIZ:ZK<6[,&&UAE'1OXE(]
M@>.0* -RBN9U_P 6R:+KVG:/#HUU>W.H1S/;F.1%5C&H)7)/'4<G Y[]*J7?
MCQ;:WE4V,,=_;6R3W=G<WL<31EEW>6IY#OCGL.1SSB@#KGECC9%=U5G.$!."
MQQG ]> :?7FNH:GIWB+Q1\.-?L$!2[EN2CL@#A?(?*GZ'/'3-:VM_$:PTB*^
MNDCAN+73YC#=8ND6;((#F.,_?"DX.2O(.,T =I17*:EXU^RPZE<V6FR75IIU
MFE[/.TGE!XW4L!%E2';:I)!('(&<U9;Q7%/>V-EIT*3W-Y8_;XXYIO)S$<8
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
M6ZFG4 <3X9TO7-/M/%JFS-G=7^HW-Y822O&Z_.BA-P5C@@KDCTK"T_0/$O\
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
MN(W,\##.TQN2B@/SG'(([UR?P]U.31_A;H2VNGRW<MQ?36L4<8(5-UQ+\SL
M=J  Y.#V]:Z?0[[Q3>@2ZUHT&FB&,[HH;I9FN)/]GH$7KU.<D= #GD;#PYXJ
MT[P%HFE)8J\EIJ+RW]F+I5%U TDC[0X.,?.N5.,X(Z=0#?/B^*]T/Q0+O2%G
MDT;S(KNUCF62.9/+WG#,!D%2001ZC!I!XP33[+PE!9Z$_DZS H@CAE15@_<[
MP@'&< 8Z 8_*LJV\-Z];Q^.(O[)M8HM8A M$@N%P&, C"X(& #U/'L#4W]@Z
MT(O (_LYB=$4"\_?1\8@,7R_-SR<_3WXH N0^-M7GDUFQC\,%M4TEE,\'VY?
M*,;)O4K)MR21GC;VY(JU#XYM;VU\//9Q1B;7(&GMTNY_*4!0I9=P5LME@  .
M<$]JKV.EZK:^*O&&HOISFWU.. 6N)8\L8XRAR-W&2<CVZXZ5DV'A2Z;P1H'A
MW7O#2:C:VUL\5RJ31^9%*"NQXV+#@@OR"#0!W^F75Q>V$<]U:-:3DLKPEMVT
MAB.N!D'&<^]6ZP?!NEZAHWA>UL-3N9+BXB+[6E?>ZQER45F_B(4J"?:MZ@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHJEJ^J6VB:1=ZG>,5M[6)I9"!DX Z#W/2@"[17'6
M_C>23Q%8Z2]I9R_;XI&@FL[WSUBD1=VR;"?)D=&&<D$5'I?CF^U/49](_L2.
M'6;:\,%Q:/=G$<(7=Y^[R^5.0!QR2* .O^V6WVT67VB'[68_-$&\;]F<;MO7
M&>,U-7,C5X?^%DMI#Z1$MRNE&Y74,@R-'YH7R\8R!DD]>PXJ/0/%ESXCM;.^
MT^RM9;&[5_G2[+/ P4E4E4)\I.,'DX/'/&0#JJ*X_P"'FLZQKNC7-YJL=N#]
MMN$5HIF;&V5EVA2HPH P#DY]!784 1S7$-NH:>:.($X!=@N?SJO,=/U>TN+%
MY8;B&>-HY8TDSE&&".#D<&N<^*<:2?##Q"'56Q:,1D9P01@UPOC.\TL^ =&B
ML-/FL=8?[*MIJ<EHUK':O\N6:=E  (##&3G/2@#UC1-"TSP[IJZ?I-HMM;*<
M[02Q)Z9+$DDX &2>PJS?64&HV,UG<AV@F0I($D9"5/494@C\#6%>^);G3?%6
MCZ-<6436VI(XBO\ [1@&1%W%-FWJ1R/FYYK2TS4YM0OM2B-LB6UI/Y$<RREC
M,P4%N-HQ@G;U/(/I0!/I6EVFBZ;!IU@CQVL"A(D:1GVJ.  6).!]:N5R6I^+
M=2M_%LGAS3]"%W=?8/ML4CW0C1AOV8;Y3M'7U/3CJ1E_\+.?_A&/[4.A2K=P
M:FNF7UD9QN@E+*O!Q\X^88Z9H ]!HKE4\4:FE[:Z7=Z-%;ZO>2S?9X/M@=/(
MC )F9PN1DL!MQG/MR*5Y\07T_3O$1N=)_P")IH*K)<6J7'R21,-RR(Y49!';
M;D'B@#MZ*XI/'-];Z]I%IJN@M9:?K!\NSO!<B0^9MW!9$ ^7/;D_SQ)<>-Y_
M["OO$%AI:W>CV4DBNXN-LLB1L5DD1-N" 0V 6&0#TXR =C4,EY;0W4-K+<0I
M<3AC%$S@/)MY;:.IQWQTKFY/&<5SJD6GZ0EK<SS:?'J$"W%R83<(^[:(_E.3
M\N3Z9'J<)=ZXB^+_  S976B1FXO[>>2&ZD8;[8K&&= "N1G*@\B@#JZ*\_G^
M(6JKI>OZA#X;1X=#NY(+K??!2R(JLS)A#EL,3@X& .2>!OS^*%?6=-TG3X%F
MNKZS:^!F<HB1#: 3@$DDL!CZGZ@'0T5SWA+Q--XGM;R:73OL1M;E[1U\X29D
M0D.!P. <8/?-1Z]XFO=*GOUM]+5X+&S%W)<W4QABD)+8C1MI!;Y>?3(]: .E
MHKC)?'<K2^%A8Z.]PGB&!IH2TZH8R(O,VD8]QD_7 /0K:^/5ATG7KC6K#['=
M:+<"WF@@F\X2LP4Q[&(7.[>!R!S0!U<EY:Q74-K)<PI<39\J)G >3 R=HZG
M!/%22PQSQ&.:-)(VZJZY!_"O.]5:_D^*_@F2_P!.M;9VCO2)()S(3^Y&48E5
MZ<<\@Y/2NSU[7+;0--%W<%?GE2")6<(&D<X4%CP!W)[ 'K0!J45PX^($B7.L
M6K:?!<36%B;^*2RN_-AFC'WEW[1M<>F#P<TZR\=7TTWAJ2\T1;;3]>11#,+H
M.\<C1>8 R;<;3@@'.?4#I0!VU%<%H_BW4HKWQA>:VEM'IVD7!4F&9F,:+$K
M*I0;B<Y)R.3C%6X/'+MK]AIDEG:2KJ$;F&2RO1/Y4BKNV2X4!<CH<D9R/>@#
ML20JEF(  R2>U16MU;WUM'<VD\5Q;R#<DL3AU8>H(X-<=H?C/6?$-B+V'PNH
ML<W,<KO?+E7C8J %V_,&QC/8YXXR:UIXX2R\'>%=0T_PZB6NKW$5K':V\JH+
M<N6P , '[I_NB@#T"BN4T_QC-_:&NV.M:<EC-I%NMVYAG\]9(6#'(.U3D;""
M,54/CJ]6/PY.=%C:#7\?9=MW\T9*;U#Y7'*^A.",>] ':22)%&TDCJB("S,Q
MP !U)--M[B"[MX[BVFCF@E4/')&P974]""."*JZS<_8]$OKG[*MV(H'=H&8
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
M]+O-'76=,CM;35I5MX9HK@R&&9AE$D!48S@C()&1CIS0!U5,6&)96E6-!(X
M9PHR0.F37(>#]:UO5=?\2Q:A%:BWL[\VZ>5.Q\L"-"  4&<Y))R.3TK;U?5K
MNQOK&SL]/,[7(D9[B1BD%NJ '+L%."<@ =^>>* ->H!>6IO39"YA-T$\PP!Q
MO"YQNV]<9(Y]ZY2Q^($%[X9M=2%G_IEU?-IT-HDP97G#E>),?<PI;=CH.A/%
M95J]]'\:+V2;3K>.Y'AT%5@FRLW[_@EBHP<Y'(/2@#T>BO/(/B3?R^'-&\1-
MX=QI>H3I ^V\!EC9W**57: PSCJRGGICFMS3O$]_-XINO#^HZ3':W2V0OK8Q
M77FK+'OV$-\J[6!QZCGK0!T-K>6U]"9K2XAN(@Q0O$X<;@<$9'<$8-35Y??>
M+;Q/AA+J^A:5::6S:BUK)$LF-F;CRV9=JX+$G.>V<\FMJ^USQ%'\0=%TD6MB
MEO-9SSR1K=O\S*5'+>7V#<#')/)&!0!V$5Y;3W$]O#<0R36Y FC1P6C)&0&
MY&1SS4U<5#XG2WN_&<L.@11W>D>6\Y250UW^ZW@LVW@A< 9S267CJ^FG\-27
MFB+;:?KR*(9A=!WCD:+S &3;C:<$ YSZ@=* .VHKC=0\<R6]EXAO['35NK30
M93#<[I_+>1E4-)L&TCY0PZD9(/3J>FTJ]?4=*MKV2#R3/&)!'OW8!Y'/TP:
M)H+RVN9)XX+B&62!_+F6-PQC;&<,!T."#@^M35PL7BY;/3O&.I0>'HHI]'N'
M-PD<JJ;DK$KEV8+UVX'?I5FS\9WTFM:#:7VBK;6NMPLUK,MT'=76/S"KIMP
M1G!#'IR!T !V-%9VN:E-I&D37EO83W\RE52W@!+.68*.@. ,Y)P< $UA0>,I
MVO\ 7].DL(7O=(MDN<6]UN256#<9*@JP*G((/:@#KJ*X6R\?WT\/AF^NM"6W
MTW77CACF%V'DCE="R@IMP5.TC.<^PK5TOQ3-=Z]KFDW]C#8RZ6B2AC<EQ-$P
M)$@^087@@]<'B@#I:*S]%OKG4]%M;ZYM!:2W$8E\@2%]H(R,DJ.<8R,<5R\O
MCV]@T3Q->2:+"+O0)RD]I]M.9(PH<2!C'T*G(&.<&@#N**PK?Q!+=R:3]FM8
M9HKZT:\DDCG)\M %QM&SYLEP!]WH?2LJT\;W+:KH-I?Z2+/^VQ(88WG/GP%5
M+#S8RHQD ]"<'CGK0!V5%<IIGC"6Y'B--0L(;"XT-CYL9N2X=-F]9,[!A6'3
M@G@\5T&GW%W<Z7!<75HMM=21!WM_,W"-B,[2V!^/% $US=6]G;O<74\4$"#+
MR2N%51[D\"GHZR(KHP9&&58'((]:\EU#5=5\0?"[QQ+K-O:,+>6\BC,<K/L:
M,[0%4J, 8SNSDDG@9KJ=)\47MOJ^@Z+?Z2MO;ZE9LUG<+<AW+1(K,'3;A<@Y
M&&/^ !V=%<9-XYN;2?3'O-(^S6NHZF=.B2:8I< [F59#&5^Z2O8]&!YSBET'
M6M;OOB#XETZYBM?L-A]F1 D[90,CN& V89FR,\C&!UQR =E1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5D>*
M-$7Q)X8U'1S*8?M<#1K(!G8W53^! K7I&944LS!549))P * .3\/S^-G6*'7
MK"P@%JA\R>VN?,:]8 @;5*CRP3R23VQ@9XR[OP[X@34]-\4V,*?V_P":8]0M
MWN,0R6I_Y9 _[.%*G'7<2.<5W5G>VNHV<5W97$5Q;2KNCEB<,K#U!'6IZ .2
M.E:HWQ,37A:JMC_9!LB3*N\2&029V^G&.O7MBLO2?"5XOBK2M>&FQZ/?(CC5
MVMI@8;XE"  B]3O.[) (QWZUZ#5<7]HVH-IZW4)O$C$K0!QO"$X#%>N,C&:
M..\/:9XG\,^'-6LK>PL;BX2ZGGLMUR0)_,E+C=\OR8!/<Y/IUKMXRYB0R*%<
M@;@IR >^#3JK)J-E)J#Z>EW UXB>8]NL@+JN<9*]0.: ,7QWI=]KG@O4])TZ
M%9+F\A,2EW"*N>Y/^ K$US1?$FO^!AX873K*T\Z".WGNI[G>L:KC+*JKECQQ
MDBN^HH XGQAH4,7P\BT^WN2M]I:6[Z=,W+_:(R%B_%C\O_ C73Z-IW]E:1;6
M;/YDB+F63_GI(Q+._P#P)BQ_&H9_#6BW/B"'7I].ADU2&/RX[E@2RKST'3/)
MYQGFKE[J-EIL2RWUW!;1LP16FD"!F/0#/4^U '$WL]S;_&U'M[-KH?\ ".X=
M$=58#[1U&X@'GW']*J:EX+U=_#]TMO!!)J6HZXFJSIYVU(E5U(0,1R=J 9QU
M)[8KM_[ TW^WO[<\F3^T?*\CSO/D_P!7G.W;NVXSSC'6M.@#DO$&AZC+XGT3
MQ1I<2R7-BDD%S9R2!3+#(!G:W0,I&>>#ZBN>\8:'/'X:\=>([V,0SW^FB"*
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
M28XBAW>F2<CKQ6.OA37H_ GA+1Q9Q&[TB_MKBX_?KM9(6R=I[D]L@=Z]+HH
MX*'3/%WASQ)JK:+96&H:3JUQ]KQ<W)A>TF90'SA6WJ< X'/];J:/J\7Q$MM:
MDB6XM8M&-A),'56>4R*Y8)V7Y<=>I_&NPHH \P/@[7W\$W^GBVMUOO[<.J01
MM.-DB>>)=I8#@XR.F*ZUM7UR'Q/IEA/IMI]ANX&,LL5P6DBE 9L8P,H %7=Q
MRXZ=*Z*FB.,2F4(HD8!2V.2!T&?Q/YT <YX\T2]U_P *RV>G")KM)X)XTE?:
MK^7*KE<X.,A35-],UJ?Q]I6NS6,2V\&GRVTPCG#$.[*PQD#(&W!/'/:NQHH
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
M1)PN >.#P1DUF0^"?$D7P[T[P\R:<US9ZFMSO$[!7C6X,N?N\$YQCG&,YYP
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "LT>'M(&O-KHTZW_M1D$9NBGS[<8QGMQQ].*TJ* "BBB@ K G\$>&;G4)+^
M71;0W,K;I6"8$A]64<,?J#6_10 U$6-%1%"HHPJJ, #T%.HHH **** "BBB@
M!&4,I5@"I&""."*P+3P/X8L;L7-KHEI%(&WJ%3Y%;KD)]T'W KH** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K-U;P_I&O&V_
MM73K>\^S2>9")DW!&]<?TK2HH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHJO?2745C-)90)/<JA,<4C[ Y]-V#C\J +%%<#%\0K^Y^&#^,K7189
M6B#O-8_:B&C5&*M\VSJ,$D8''>MZ[\07,?A6SU>SM;>YFN_(\J'SRJ.964+A
M]I/\0/3IF@#H**H(^J_VNBO#:#3?LV7=9&,HGW= ,8V;>_7/:L+Q1XQ.E^"=
M2\0:-';WPLG:,B20JI*OL;& <X/TZ=: .LHI%.5!]1574M2M-)L)+V]E$4$>
M 2>Y)P /<D@#ZT 6Z*YVY\07<'CZP\/FV@^RW5G+<B?>2^4*C&,8 ^;U/X5T
M5 !1110 4444 %%%% !12-N"G: 6QP"< FN?\'^(+KQ%IM[<7EO#;RVU_/:%
M(F++^[;;G)QG\A0!T-%%% !1534M2M-)LVN[R41Q!E3)[LQ"J![DD"K= !11
M10 45SNM>(+O2_%?AW2H[:%[;5)98Y)F<[T*1L_"XQV'.?PK5LVU-KR^%[%;
M);+(!:-"[%V3:,EP1@'=GIVH NT444 %%%% !1110 4444 %%%% !1110 45
MSLOB"[B^(-MX>-M +2?3Y+M9PY+DJZKC&, ?-ZG\*U]1U*TTJV6XO)1'&TB1
M*3_$[L%4#W)(H MT5SG_  D%V/B(OAQ[: 6K:8U\LX<ER1(J8(P !R?7MTKH
MZ "BBL+Q!XECT6YT_3X+<WFJZC(4M+57V[MHRSLV#M11R3@GT!H W:*YZ[U7
M7M,%J]SIMI<0SW,,$CVT[9@#N%W$,OS 9Z@CZ8R1T- !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%<UJ>O:A)KEUH>AQ6KW]M9+>,;K=L;<Q
M5(Q@C!.TY;G''!SP =+14%E)<36-O+=P"WN7C5I80^\1N1RNX=<'C-8;^(+Q
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
MLYCEDC)@F!(,4@^ZP(YZ]?49%<OX7U0>+CID\EDL<^A6[BZ@V@>7>Y,?ECT
M".V/]J,]J['7+W4K#3O/TK23JESYBK]G%PL)VD\MN;CCTJ/P]ICZ=8S/<1Q)
M>WD[W5T(N5$CGH#@9VJ%7..=N>] 'F4975?@G/XK>0IXBB2:[-\O$T<Z2-\F
M>H7@)LZ8[5T.DEY?BI(MU"L377AF":Y@Q\ID,S!\CN>@_"NI'A/1%NYKE;$*
MTTPGEB$CB*24'.]HL["V0#DC.0#3M3\,:-K&H6]_?V*375NI2.0LRG:3DJV"
M RY[-D4 8/PI?S/ <!WEP+N[53G/RB=P/PQBN<\;BUO;7QQ<V@:ZN;&V3S+B
MY< 6+K'N5;? W!CPQ.0,D<G! ](TC1--T*V>VTNSCMHG<R,J9^9B<DDGDU1O
M/!?AS4+Z\O;O2H);B]C\JX9LXE&-HR,XR!P&QD>M '(7-G%JWQ!\+K>/-+'=
M:',\Z><P60CRNH!Z<G('7OFL./4I=%\*WFEPSR0:9_PF1TMG$A'V>S+@LH;.
M5'5<]@U>GV_A/1+6ZL[FWLO*FLXC#;LDKCRT/4 9Q@]3Z]Z1?"&@K87]B=.2
M2UU"0RW44KLZRN>KG<3\W YZ\#TH Y@:58:9\:=-^PVL5LLNB3[DA4*I(ECY
MVCC.._? ]*F^*MG:W6BZ.UQ;Q2E-9LU4NH. TH##GU'!K>L/!?A[3;VWO;;3
ME^U6T9CAFED>1T7T!8D_3T[5HZMI%AKFGO8:E;)<6SD,4;(Y!R"".001U% '
M$7VCZ?>?%VST^6!?L2^'91Y"$JA N$&T@=1[=.*YRQU273?".G:<UTL&F_\
M"47&G/)<;G1(%:0I&WS [=P4') QP>.*]0C\,:1#J4>H16ICNXH/LZ2),ZE8
M_P"X #C&>?KSUJ)?!^@+I-WI1TV-[&\<R3P2NSJ[DY+?,3AL\Y'.>: *'ASP
M]_8'B+4GCU. Q7L22_V;;6QBBA(X\Q1O;;N[],D9[5A:[G3_ (Z>'+^\.VRN
M]-ELK>1ONBXW%L9[$J0!ZUV>@^&M'\,VCVNCV,=K$[;GVDLS'MEF))QVYXJQ
MJFDZ?K=BUEJ=G%=6S$$QRKD CH1Z$>HYH LSS101AYG"J651GNQ. ![YQ7G.
MC6]MXNM?&+:RH-];:G<6L4C'#V<:*/*,9ZI_>R,9))KMM/\ #VFZ;(DD$<[N
MG$;7-U+.8^WR^8S;>..,5'=^%M&O;^>]FL_W]P@CN#'*\8G4< 2*I <8X^8'
MCB@#S73)+O7[KX876L/<&YO;6\%Q^]9?-40_*Q /4CDD==QJ6V\.:9+'\0=,
MDA=K'3I3)9V_FMLMV:W#ED&>#NY'IVQDY]*N?#^EW>H65_-;9N;$$6KK(R^2
M",': 0!D<'U'%1)X6T=&U!EMI =1&+L_:)/WW&/F^;TX^G'2@#SI(3K=Y\+3
M?W-TYOM,F-UBX=?.Q;(><'ODY(Y.34+6]KX:E\<:%]LO[;0$-D;=+:3,D4LQ
M^:&,L> YP#DX ;MUKH]:\*-_PE/A"+3](N6T;2A<B1XKD+Y(>-53:3('X([=
M!74S>%]%N-(NM*GL(YK.Z;?<)*S.TK<?,S$[BW YSD8'I0!Q%A;-;^._$>FM
M;PV%M-H<4[6EE*517WNN[("_-@#) ';K6%IMA#:>#/AQKD32C4Y=1LX'N#*Q
M9HI-P9.N-I';\>N:]-B\%>'8;G[3%I<:7'V<VWG*[!S&<Y!;.2>3SUYQFE_X
M0[0?[/LK#[$PM+&436L0GD A<=&7YN".WIGB@#DM2GC\!^.KRZ6V\RS\06Q%
MO'C.+U,XB'H) 1Q_>%=QH.DIHFB6M@I5FB0>8X&-[GEF_$YK(6#5M<U^)-4T
M6.STW2[MI[:9[E9FNF"E8V"@90 ,6.3G('O74T >-^(G@?2+[6M++2O%XAC
MU.X<"</YZ(T46!D1*,KR>>>"#FNDU6$W'CO5X=4M)-2L)-*C%I%"AE^SL2X8
M%1]QG(!#G'W.O%;L_@+PM<F],VC0-]ME\Z<9;#/D'<!GY22!DC&>]<MK7A1;
MKQ/=S:EX).JVI2.*QN-/NT@,42K]QU+H<ABQR">,#M0!FW_A^\TOPIX"L]5N
M+K^TGUJWCO&6[D8DLKDC.XC/RJ,CN,BM.73+&R\<6W@^W6S@TS^S6NK6UOHW
MN(Y97F;S,!G&6  P.< MC'-;VE>"=/&F00:A;2F."Z^U6=LU[+)]C.  %<MD
MD$$Y[%B <5JZ]X5T/Q/!##K.GQW:P-NB9BRNA]F!!'0=^<4 <#)!+X?N?#?A
M>;78;S3Y[VZC:2Z@9H@X16BMV'F?,!N; +'D 8XKK_">@_\ "/7FK6JZG'<1
M2RI<)910F..SW Y5 6; ;&=O;TYJ]=^$M OM CT*YTJWDTR/&RWVX"$=P1R#
MR>0<\GUJSHVAZ;X?L!8Z5:);6X8MM7)+$]R3DD\#DGM0!R'B:&RU3Q-J5J(_
MMUS;Z1^]ANF M[16+$2*,$F5L=L<*.1Q6-9_VWJ'@KP;J5I!:ZY)!IQ:ZTN]
MDPUTI"#S%+9&]<8RW]\^M>@7WA;0]2U5-4O--AFO%C\GS&S\R9SM89PPSZ@X
MJ&W\&:!9P6D5I8FU6S#K ;>>2-D#XW#<K G.U>I[#TH 9X(OK#4?"-E<:;%<
M06Q,BB&X'[R)@[!D/^ZP(_"N;M=,L8_B_K\T>G6[S1:7;W$8\L9\TO(=P_VB
M0.:[VRLK;3K..TLX5A@C'RHO;)R3[DDDD]R:J1>'M,AUJ76(X'74)E"23><^
M64=%(SC ],8H \O!74?@BWBP2E?$42/=_P!H+Q,LZRG*9Z[>-FSIC Q731R3
M2_%S1Y+B/RYW\.2M(G]UC-'D?G72)X3T2.[EN$L0IEF%Q)$)'$+R@YWF+.PM
MD YQG(!ZU8DT+3I=;367@8Z@D?E+,)7!"==N,XQGG&.M 'E=QJMUH_@KQQ<V
MLDD.[Q3)%-/&<-%$[1*[ CH<$C/;.:Z76K"+1/&_A1M$@C@BU&2:UO;:%0([
MB$1EMS+T)7'WNO.,\UU5KX9T>RM[ZWALE,-^[/=QR.TBS,WWBP8D$GN>].TW
MP[I>DNCVENX>./RHFEF>4Q)Q\J;R=J\#@8' ]!0!Y9?Z4XL_$W@*UB!U+[6+
M_27)Y$+CS,YZX4HT?_ E'>NFT>^MO&&CS>(;=TT\0:4;6*<+C[+,R;I3]$^4
M#TPX[FNX_L^T_M+^T?(3[9Y/D>=CYO+SNV_3/-11Z-IT6ESZ9':1I93^;YD*
M\*WF$E_S+-^= '#^#YI-/\4PZ/K>A1Z9K*V#K%<V3!K:_C5DW/ZAP0.#S\Q]
M17:Z%I.GZ'I$6GZ6&%I&6*!I3(<LQ8_,22>2:2QT'3=.F6:WA?S4B\E'EF>4
MI'D':I<G:.!P,=!Z"I-(T?3]!TR+3M+MEMK2(L4B4D@;B6/4D]2: +U%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%07D$-U930SQI)$Z$,CC(- $]%?,_@+4
M= /PF\12Z[J,2ZJ)I19,UQBZW>4FP1\[C\_IQUSWKT[P=XFU'PS\((M:\;M<
MB6#=M\Y29Y$+8C!!Y+'..>V"?6@#TJBN,E^(MEITFJV^L6<ME=Z=8+J#0JXD
M\R$\?*>/F#$*0>,GJ1S3?^$M&M>%=0N7TV5;.32WNEFMKI6#H00RJX'RR*.H
M(X..: .UHKRGPKXUT+PQ\,O#AL(=1N!J-R]I86US(K3.YE93N8?*%!].@(XK
MHK+Q^;O7-;T8Z-,EYHT)EN2)T,9&W<NTG#'([[>.^* .THKS"'XT6,FD:7K#
M:#J$6EWUY]C-R[QXCDY_A!RPP"2>GU/%='KOCJVTG6KG1K:T>[U"VL'U&6,R
M"-?*7J Q!RWMT]Z .LHKRWQ?\49(_A-#XI\/VL@-^3 DDQ -LV2I)&?F(*G&
M..Y]#'XMU.UEUSP"=>L=4M;J6^'V06UVA4R;HQF4#.5Y4\'."P[T >K45Q>I
M?$2UM=2UNTL;"6^&A6XN-2D214$8P3M3/WF !)' XQG/%1:U\3]+TK3M U&&
MTN+ZSUMQ';O!C<K''!4]^<?4$4 =S17)^&?',7B#Q%K&@S:;<:?J&F;3)'*Z
M/N5NA!4D9Y''OUK!^..KZEI/P[G.GF6+SY4BEN(I I121QZ_-TX]_6@#TJBO
M*X-=TGX:R:5YNDWT3>)I$+1QS"1()%VJ<(.F0X/RY)Z=A6U-\2HK+2/M>I:#
MJ5A=S:C_ &?9V-PH62Y<XPP[!>>3R..,T =U17*67CBWN;W7=,ELVAU?1H_-
MGM?,#"1"H8,CXY&".H&"17-?\+JLAX?T_P 02:!J*:1=7?V1[AG3]V_/10<M
MPI/Z<GB@#U"BN0TKQ['?^-Y_"UWI-U87BVPNH3,Z,)(^.H4G:>>G/0T[XG1H
MWPWUV0J/,BM'DC?NC#H0>QH ZVBO"_A]!X>\4>"-(\/W($FMW=G=32W2LPFA
M"RE48N.I^9<#/05Z)XE\<0^$-6T+2+C3KJ\DU0^5 UN5SO4J"""1_>7O^5 '
M845YRGQ7WQ^((AX;OOM^A!GN[?SH]JQJ"2^_..@/ R?3/.)]3^*VG:=X0T7Q
M*-/NI[+59!$BH5WQOSP1W^ZPX]* ._HKD--\<PWWC"?PIJ>E7&G7YM_M$"3N
MCK/$>O*D@'KD<]#SQ7 ?#/Q3:>%_!_B_5M6GE:UM-6=$0'<QX 5%!/\ ]:@#
MVZBN2L/'*3Z_'H-[I[V>JW-B+ZTB,H=9D.?EW8X<8.1C'!Y-4]"^),&OZ-K=
M]!I5Q%/I,ODS64LBB5G_ +H XR3D#GD@B@#N:*XO4_B!_9GC.T\+'1+JXU&[
MM?M,0@D0J>&R"6(Q@HW/IS[5B+\9;=_"U[KB>'=0:/3K@6]^GF1@0$L%&#GY
M\EAP!QWQQD ]/HKF;[QK8P/H5O9Q-=7NNKOLH,[,ILWEW/.U0OL3Z UBZA\5
M]-T_PA)XA.GW,B6]\UA=VRLOF0S+U'H1[CL1^ !Z!17&:5\08M0\9-X:N-(O
M+*Z:T%Y;M*R'S4^@)VGV/H<XK*\!>-=9\4>+?$D-SIS16=G<K:JHF4BVV;P<
M]V9F'4<=.PH ](HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5!>SRVMG+
M/#:R74B+D0Q%0S^PW$#/U-3T4 8'A+Q7;>,-%;4[.UN+>-97A,5QM$BNIP0P
M!.T^Q]:LZ!KC:_9O=KI]S:0"1DC:<H?-"DC<NUC\IQP3U'/2N$UK39]%^)UI
M8:7<_9K'Q@DHOHER#')"H=Y$(^ZSIE<^IW=0*Z3QSJTGAOPW8Q:>1:BYO;;3
MUE11BWC=@I8#H,*"!Z$B@#K:*X74'NM ^(&@:?:W5Y-INM1W$-Q!/<R2F-XT
MWK(C,2RGJ#@XZ'K7-G6-4_X4K_:G]IWGV^'4C&MQY[;ROVWR\$Y^8;..: /7
MJ*\\U"RO]8^)VI:*?$&K6EB=(BN56TG$;(YE9<J<<<*.V3ZXXKH/'&LS^'?!
ME]J-LX6:/RXUE?HF^14WG@CC=GH>G2@#HZ*XRUT77K?Q'#.-3%MI=Q;M#/;M
MJ,MT[28)62(R)\K8!R!QCG'%<3:7>L_\*O\ #'B;_A(-4.I/>PQ.6G)C='G*
M,&3HW!ZG)'; XH ]IHK@K6.\T[XF7>B1ZOJ,MI=Z*;P^?/YC1S";9N3<,+D'
MH!CVKCEN-?A^$6F^.8_$FJ2ZI:A96@DFS!.AFVE&3^(D'J>>PP,8 /4H/$8F
M\:7/AQK*6-X+);P3LZ[75G*# &3U!ZXZ=*W*\_NKPV/Q8U:^\HN8/"Z3>6.K
M;9I#C]*R;[5-3@^$UGXYMM3NGU9(XKV5#,Q@E#N \)BSM"@,0,#(VCG.<@'J
MU%<#?ZG)X5\?1WFI7UT-#U6S<QK-,S1VMQ&-[+@G #("1[J0*I:TNL6&G^$7
M.JZC:W.H:U&MU'YY;:DH=_+^;/" *N.GR\@Y- 'I=%><Z?IMU/XY\0^'7U[6
M?[-2UM[I!]L;S4=]X(63[P7Y0< XS[<5G:%XGU;4/#/@FRGN3+<:H]U'/-)<
M- TH@+A5\Q02"< DCD[3SS0!ZO17E/BF#Q-X=\$>)Y7UQXU26":P6&\>::!&
M<*Z/(ZABI.=O?J,\5M>7=Z9\3K/3O[5U"YM-3TR>2>*>X)"R(R8= ,>6<,1\
MN!0!V\%S#<J[02+(J.T;%3T93@C\",5+7!?"2SC@\'M*CSLS7MVI\R=W&!.X
M& Q(!]3U/?-3^(KF70_'>C7US?7*:-J4<MC/&UPRQ0S[=T;@9X)"LOUP>O-
M';522[NVUJ2T;3W6S6!9%O?,7:[DD%-O4$  YZ<UYSX9U2^O+74/#5W=Z@NI
MMJ,;0RRW+^<+.0>:K9SP1&KJ<<;L ]:W;=KF3XIZKI,M_>26#:+%*L/GLHC9
MI&4E2N"#A1SG/O0!J^)/%D&@>'GUB*V>^@2<0-Y3JH5C)Y1R3Z-QP#70UX;%
M:K%^SBDJ23&2:>+/F3.Z@B^P,*20/?&,]Z[FS^UZ3\5DTP:G?75I>Z3)=21W
M4Q<+*DJKN0=$R&/"X'M0!VEQ<PVD7FSR+''N5=S'C+$*!^)('XUD+XC!\;GP
MRUE*K_8#?"Y9UVLHD5, #GJW?'2L#XIVL=QI6AEWF7&MV:_NYG3AI0#G:1D^
MAZCJ,56OM,%S\7[:Q6[O((AX;<,\4["5E^T)QYARP[<@YXZT >B45Y/I?B35
M8_#.DZ=)>23RW&OW&E&ZN)RCO$AD*@R $AFVJNX#/)Z'FNP\.:;K>EZWJ(OK
MZ-]-N%62UM'O)+F6!AP^'=0Q4Y!P<X- &GK?B"ST);9)UEFNKN3RK6T@4-+.
M_4A02  !R22 !U-5;CQ'=:>UK_:&BW4*7-Q%;I)%(DJHSL%&_!RO)ZX([9R1
M7+ZJ63X_: ;HXMWT>9;3=T\[<2^/?9C\*]#F$)C_ 'X38&4_/C&005_'.,>]
M $E%>>Z9/=^,-.\47AU&]L[JSU"XL[/[/<-&MOY0 4E <,2?F.X'KCI658:[
MJ_B.[^'ES-J-W9C5[6[-Y#;L$5RD?# 8XR<D>F1C! - 'J]%>4P6M_-9^.+!
MO$&LB+1I7>R<7C"1"8!( TGWG /0$XQG.>,2F_U?6+[X=AM9O;9=8TV:2\%N
MP4.P@1LCC@Y8\\X[8(!H ]1HKRB&\U/1G\9>'KCQ+=I:V)M)+/4;D&>>-9SS
M%GJS'!5>_P U:%C=ZBOBSQ'I2SZC:6O]D17<,=Q<^=+"Y+J6#,6VYVCC)]>#
M0!Z/17D&GW6JV_AGX?Z^VN:E-=W][:VMRDLY,4D<H8,"G0G@'<<G/?IC=GU:
M7P?XVU2'4[N\N=/U&R-UIJR3LVV2/_60("?O'*L._:@#T*BL[0K*XT_1+6WO
M+B6XNA&#/))(SDN>6P2<XSP/:O/KZ74;.Z\6^&?[3U ZA.(KK1)?M;[\2?($
M!)^ZD@.?]DY/2@#U*N;U3Q/=Z-X7U36K[0YT^PO)B!9T)EB4\29S@ CG'4>E
M9/A+5F\56VBW$5Q=Q?9+$M>H)WS]H),>QLGYL%)3\V?X>QKGY;N\NOA!X[%Y
M>3W;P76H0)).^Y@B-A1^0[4 =Q>>*EM-5\/6)L)6&M%@LP==L1$9?!'4G ]
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
MCT/:NB2VACN);A8P)I0 []20.@^@R>/<GN: &65[;:E8PWMG,LUO.@>.1>C
MU8KAOAK-)L\4V.2;>RU^[B@'94)#[1]"Q_.NYH **** "BBB@ HHHH ****
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
MN[>#[,!#*41X@VX*RCJ W./SR*VJ* ,C1?#UKH4VH2VT]Q(U_<-=3B9@092
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
MNFRK+9O97EI$T! (^7$N,8)&,5U>O:N^B:-)J LVNF0HOD1N S%F"@+G@G)
MQQUIXO-2_M&SA.E@6LL+//<?:%_<.,;4VXRV<GD<#% '$)H"HFM(W@_7Y(]8
MCV7:2ZG;L#\H4L,S?>( Y.3Z8IFH^'FU/2K"SN/"WB03V#;[6_34[87,1P 2
M'\WN !C&.!7I=% '/^%+>6SLI;632M1M"&#M/J%U'/+<,>"Q978D@ #G'& .
M!6U=3M;6SRI#).X'RQQCECV'H/J>!WJ:B@#E--\%QQ>&CI]W=W$=U<7IU&[G
MLYC&7G9][ 'KMZ+[@#O75T44 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 <"/^2_M_P!BP/\
MTII?%EK]M^)W@^W,TT*O;:@&:%]CXVQ9 8<C/J,'T(KHAX7L1XI/B/S;K^TC
M#]FW^;\OE;MVS;TQGGU]ZEO/#UG?:]8ZU*]P+RQ5T@*R850^ XV]#G Z^E '
MG?VJ_M_AWX_MH]4O]VCWMU'9SFY8S1HL:.J[R=Q +'J<XK7UV]U:SAT?4/L-
M[JND)IX^V06%RR7,3L%(FV@@OP&&,Y')K?/@C2C8:O9-)=F#5Y&EO5,Q_>,P
M 8Y_AR !QCI5G_A&;=)+>6"]OX)8+86JO',/FC!R P(()'KC/OUH E\+W=K?
M>%M+N+*]DO;9K9 ES+G?+@8W-GG=D<^^:X_15G\9>%9]:;7+K3=12_F/G1RM
MLM4BE($9CW!2-BC.1SNR>U=YING6FD:;;Z?8PB&U@0)&@).!]3R3[FL#_A7^
M@KKD^JQI=Q&YD\ZXM8KIUMYY/[[Q@[6/UX/<4 9VF2MXM\1>*[2]NKR!-.N$
MM+:.WN'A,2F,-YGRD99F)()SP /7/+V>L:WK.C>!YKO5+R&YFU:6PN9;>38+
MA$$HWE>A)V#\<UZ/=>%[&?6)=6AENK.]GB$-Q):R[//0= PY&1SAAAAV-,N/
M"&DSII,:)+;Q:2XDLXX)-JQL 1G_ &C@GKGJ: ,#PS;NGBGQCX>>]OYM/MC:
M2P"6\E:2,R1EG D+;P"5!Z^OK7(V44FG?LVMJ-C>WUM=BT+B2*[D&TB4CY1G
M"C!.=N,UZC!X9L[;5=3U.&>[2[U)46Y<2]0@PN!C"X!(X]:IKX%T=?"+>%P;
MK^R"-ODF8YV[MVW=][&>>OZ4 8?B&VN=0^(NBZ9_:VI6UG>:9<M-';7+1Y*[
M ",=#\W7K4.GZ1)=>/-<T&XUG69;"#3;,HIOG5]QW@MN4@@G:"<8R>N:ZYO#
M%E)K5CJ[SW;7EE$887,O&PXW C&#G SGTIT?ANSAUV]UF*:Z2]O(EAE82<;5
MSM !&!C)Q0!Y?!=:E_PJW0?%,FLZG)JD-[#"&:Z8(\?VGRBKH#M?*]2P)SWK
M<\7:G>:/K6I3:Q'J/]A3"-;?5-.N'_XES;1D2Q*1P6.[=SD,!Z8Z0> =&'AN
M'P^&O!IL,HF2+SSD,'WCYNOWN>M6KKPE8WCWPGN+QH-0V_;+?SOW<^$5.1CY
M<JH!VD9[T :MW%%>Z=-&S,8I8B"8Y"I(([,I!'X&O&8+1(_@%H#QR3"2>ZLB
MQ:5G"G[2.55B0OT  KVX*JH$"@*!@ #C%<JGP\T*/1$T9/MJV"3+,D7VISL*
MMN4+D\*&.0!^.: ,F%I="^)&I:>NK7:V$V@F_D:\N&F6&592ID&X_*,') P.
M.E9NEW=[;^)_ ZPWFH2VNI07*7%S<SO_ *?MAWK+Y18[!GD=" <8 KM[CPGI
MMWK$FJ71GFN);)K"0/)\CP-R4*CCD\YZU0M?AYH5HVELK7\CZ6Q-HTE[(QC4
MKMV#G[F.,=QP<T 9?PRT^"V?Q1)&UQE->NX0'N)'7:"O52Q!;_://O5CQT]Q
MH>H:/XI2[O!I]G<B+4K9+AQ$T+_*)"@."48@].1G/2N@TSPWIVD:G?W]FLZ2
M7TK33(9F,?F-C<P0G )P,FL[Q5=7=X)?#5OHEY<KJ5JT9O=BFVA#95MY)SD#
M+8 YX ]@#GO$6N7>G^'-5\0VEW.B:AJ$-E;2&5F2W@WK&TJJ25!)#D$#H4J]
MJZW'A[QOX:AT^YO'LM6::TN[:6YDE!VQEUD4L2588.2#R/SKJ9M TRY\/?V#
M/:))IGD+;^0W38  ![8P,'MBH=/\-VEA<V]RTUU>3VT1AMY+N7S#"AQD+P.3
M@98Y8XZT >:W6I:BOP8UZ]&IWXO+/4YTAN!=2>8JK<A -V<D;>,&O8JY&Z^&
M_A^\AU*WF%Z;34)C/-:BZ<1"0L&9E7. 21^IQBNI6 1VH@1Y  NT.7+./?<V
M23[G- 'BFF1SZ;\*=(U^UU&^BN[?5MJ1I<,L11KUD9&C'RL"">6!/OCBNC\:
M7,YC\87%EJ5]<7%A9+)&()F@CTUEC+]5;]X[?>QM/& 2 :Z4> =&'AR/0 UY
M_9L<WGK%YYR'W[\[NOWN>O6EO/ .B7UWJ5Q.+LG4X1%>1I<ND<Q"[0[*"!NQ
MW_'&: ,+6KR[TVY\(^*I;V[^PRF*WU.$7#K%^]0!)2@.T;7(SQ_%[4[6M6N=
M/T:/5(;F94US5X8$:2Y=4AMV.T%3SY8<+G(&1YGL,=5+X8TN?PLWAR>*273F
MA\AEDE9W*]CN/.1P0>V!4^JZ%IFMZ)+H^H6B2V$B!##T  Z8QT(P,8Z8H QM
M#TC5=,\474TU\BZ;=6P*:>UW)<,DJL,R*S@$*00"!QG![UG^,TNI?&W@^TAU
M*^M8+R6ZBN$MYR@=5@9AT[^_4=1R!6_X?\*V'AM'%K+>W$C*$\Z]N7G=4'1%
M+'Y5]ABI-3\.V>JZKIVI7$EPMSIS,]L8Y-H1F&&..^1QSVH Y"W@N;GQ%J?A
M1+FYN(-+LH!"UQJDL,S>9O+2ED4ER/E7)Z8]ZAO/^$GT;2]&>_,WB2"RAFBU
M)=-N&CG+;P$E"@@N5"LI&>I)Z].IU_P3I'B'4K?4K@W=MJ$">6EU97+02E,Y
MV%E/(JR?#%E'):26<UU9/:PF",P2]4)!.X,"&)(SDY.<G/)H XV[U19[#X?W
MND:S?SV=SJ20,[RL#.FR0D2C/S,&7!SW!J76KJ^DUSQ?:7LVH1O'9Q/HHLVD
M')C;E0G63S!T/) ';-=-+X,TA[;2K=%GABTJ;S[58Y2-LG/SG^\3N;.<YR:X
M[4-,^T>*]7N-1T[Q99W$\X$,VBW$@AGB50J,Q1L!N#G<!CCZT .N[;6;6X^'
MUI>ZMJ4-Y=LZ:@J71.Y_L[,P/;ALX].W0&H)=:OO"EC\08+:]NIH=+FMC:-=
M3-,\ F1-QW/DD*6+#.>E=7IWA/[1;Z3<:M=:A+>:;+)+:--<!I(PQ( D*\.V
MPX/4>YZG0B\):6EWJ]Q(DLYUA0M[',^Y)0%VCCMA>.* .>GM=6T&^'B"&\1=
M.BL9C/9-J$MU]K98RZ,F\#:WRG)'49]*YO6X#J/PR\-Z_<7MU/?7=[87,[^>
MVQFDE4E-F=H52<  <;?KGO/#_@;1_#;$VAO)E5#'#'=W3S) AZK&K'"@_G[U
M3'PR\/BQ-@K:BNGB=;B.S6]D$4+AMWR 'Y1GGV[8H ZV:%;B!X7+A74J2CE&
MQ[,I!!]P:\8M;=]/^"7B'4;&]O[:[BN+S9)'>2C&VX8<#=@'U(Y/<U[08_W'
ME*[K\NT-NRP]\G.3]:YM/ >CIX<NM #WATVZ=GFB,Y)8L=S?-U&3R>: ,#55
MGT+4= L4U74Y$\0WR+>2S7+'8$B+;(_^>>]L9VXZ'&*DG>]TOQY?Z!;7EX=,
MO-%>]4-.SO:RH^TE'8DA6!'&>O3%=7J/AO3M5T>'3+Y99HH&1X93(1+&Z?==
M7&"&'K^=$/AVTB^U2/-<S75U"();N5P93&,X4$ !1R>@')SUYH \Q@.H)X'\
M":ZNMZJ-1O+VTMII#=,RO'*2K H<H3WR03D=:ZS0TETGXH:GHT5[>SV,FEPW
MOEW5R\VR4R.A*ER2 0!P.*U/^$&TG^Q=-T@/=BSTV9)[5!.<HZ'*'/4X/0&K
MT7AVSB\2/KPDN&OWMQ;,S2?*8P<A=O3J2<]: ,7XB07T&C0Z[IUQ>B329ENI
M[:WN'C6YMU.9$(4@$[<D?3'>LW6O$DB:'XB\8Z1/+/;6EBL5B!*QA=\;FEV9
MVG&]1T_@:NG\0ZQ=Z:;>VM-"O=4DO Z PJOE1, ,>:6(VJ<]>>A^E2Z+X=LM
M(\*VN@"&.2TBM_(D0K\LF1\^1_M$DX]Z .0UQ[GP_:>%=8TN_O+B2ZOK:UND
MEN'D2[CF&"VTD@,#A@5 QTZ<57CNKS^P/B4OV^^S83SFT<W4F^';;JX"MG(
M;G&<5U^G>$--TT62(]U-;V#;K*"XF+I;G! VYY. 2!N)P#QBH+[P)HU_>ZG<
MRF\0:G'LNX([EEBE.W9O*#C<!W]@<9H Y2<7NI:QX M7U?4HHM2TJ8W8AN64
MR%8(R&S_ 'LL?FZ\UWLBGP_X7D\J2>[:PM&*M<.7DE**2-S=R<=:I1>#-*@N
MM(N(GO%?2(FBL\W+,(T8!6!W9W9  YSTXQ70D @@C(/:@#S?1[76M7TWPSXC
MMM5CMV<PS7DKW\LJ72. 'C,14(IW' Q]TC K.:UNKW2_B$\VM:ONTRZF>S*7
MLB&(K KK]TC(!_A/'MGFNOTGX>Z#HFI&[L4NTC$AFCLC=.;:*0_Q+%G:#Z>G
M;%6D\':;'!K$*RW>S6&9KW]]_K"R[21Q\N5XXQQ0!QXEO;:;P!K?]J7\EWJ\
MD45ZDEPQAD5[<OCRON+@@8( /J345GH]]X@_X32*3Q'K,#V.I2+9-%>,GE$1
M(PSCJH)^Z>.O<YKM'\&Z:]MH\#2W?EZ.RM9 3?ZLJNU<\?-A>.<\5S?AG07O
M]8\8?;5U6TM[_468(5>%+F$QJO4KQR&'RD-CVQ0!FV>JWFN?\*KU*_\ ^/NX
MDF:5L8W'[.XW8]\9_&M32GG\8V7BNXGO[RUN[34KBRM/(N'C^RB( (=JD DG
MYCG.<XZ<5U-YX7TZ\N]*N2)86TK_ (\T@?8D7R[?NC@_+Q@]JBG\(:;+J%]>
M1/=6K:@H6]CMYBB7&!C+#L<<;EP?>@#AAK>IR^%?!_CZ\N+M(H]BZO;QSND4
MD3Y03% <?*VUL8Y!/I5SQ9-=2^ _%OB*TU*^@WAOL30W3J%CCPFY1G W,'.1
MU4K70>(GE^R_\(EI_A^YEM[VR,"W*1I]DMD/R8?)!&U>0 .> /;4O_#.FZAX
M9'AV5)$TWR5@,43[28U  7(YQP* ./U&RN+3QUX6MX=8U58]8M[E+Y3=L0^R
M-74J#Q&<Y&4 .#Q@\UFMKM]X:T?Q?:17UP\%CK%O;6\UW<-(UO%-Y6_]XVXX
M&]L$YQGO7?R^%[*?4M+U"6:[:YTM66U;S?NAAM;(QAL@ <U$O@S1]NL)/'+<
MQ:P<WL<\FY9#@ $#^$@ 8QCH/2@#&;1-7LM4N;H:F;33KBQ>-K1=0EG<S %A
M+&S@%3@8..O7K7+:=+?V_A3X?:__ &QJ<M]>7]K;7'FW3M')%)N#*4SM)Z'<
M1NSWKO-'\#:5HEK-!;3ZA)YD1@5[B[>5H8CU2/=D(.!T'8>@I?\ A!M)&D:7
MI8>[%II<Z3VB"8YC=/NG/4XR>#GK0!B>$].@C^)WC:16N-T<UH5!N9"I+09.
M06PW4XSG';%7OB*;K3]*L_$%K<W:)I5W'/=PP3NBS6V[$@95.#@'=S_=/K6W
M#X:TZW\1W&NQ"=;VY1%FQ,PCD*KM5BF<%@IQG%:-W:PWUE/:7*"2">-HI$/1
ME88(_(T >:1^(7TOQOK'[^[N=.U6U;^R!)=R,CW$9"21QC/R[G88(_NG'%:6
MI07>B^*_ 5@FJ7\J,]Q#<^9<.PN"L#'<X)Y.[)YZ?@*Z<>%](6'1H1:+LT9@
MUD/^>9"%!]>#GZ@'M3M2\/6>J:MIVI7#SBXTYF>V,<FT*6&&)'?(XYH X;0M
M.@@U#XC2(UQNCN' #7,C*<VRDY!;!.3U.2.U9ND1SZ1X<^&NIVVHWWFW<UK9
MS1-<-Y+0O"QV^7]WC:,'&?4FO0G\'Z6VHZG?(;J*74U"W(CN&",=NS<%S@,5
MXSC-1'P1I7]G:18>9=BWTB5)K)1-_JV4$*<]\ D<YZT 'Q!@2X^'?B)9-^%T
MZ=QL<KRL;$=",C(Z=#WKCM3L$CT+X;P0SW,?FW]NQD,S.RDVSYVER<>P' ["
MO3KVS@U&PN+&ZC\RWN(FBE0G&Y&&"/R-8"^!M)2UTNW$M\5TN436I:Z9BKA=
MH))SG"\ =,=J ..N=9OO"7_"PH+2\NYH=-BM)K3[5.T[0-,I#D,^20"-V#D5
MTMAH^JVWB73=2AU&.'3I(GBN+9M0ENA=DKN1TW@!6&"<CJ/I6LOA/2QJ.JWL
MJ2SOJT2PWL<K[DE1054;>@P"1QZU7\.^!M(\,S"2Q:]D"*5@CN;MY4MU/41J
MQPOUZ^] '.?%DM%+X.N9SC38=>MVNB?NKS\I;V'/YUZ.<8.>E5=1TZSU?3Y[
M#4+:.YM)UVR12#(85E6?A*ULX5MOM^IW%DHPMK<71= /[I)^9E[88D8H QH+
MQ-=^(.HZ%)+)'INGZ=!);PVTS1"4R$Y?*$$@ *!S@<GK7)7&JZTVA&SDU6^$
MFF>+8M,CNTE(>> R)@2'^,@-@YZXYSS7INH>&['4-5M]5#SVNHP1F%;JV?:Q
MC)R48$$,N><$'!Y&*KW7@S2+O3;;3V6>."WNA>+Y<I#/.&W>8S=6;=D\]Z .
M9CTIU^)M[H']K:N=,N=(2]EA-_(6\WS63*OG<@(ZA2.GIQ6"-1U9_ .B[=9O
MTGA\3+I_V@3$O)$+DH Y/W^ .O7'.:],'ANT'B%M=$UU_:#6WV0OYG'E9W8V
MXQ][G/K7&>+_  I#IOAW3M,TJWU*XB?7(+R98A)*R+YFZ5]RC*]<]>O2@ =+
MSPGX_>RBUV];2M0TFXNI6OYC/]DDB(_>@MT7#<CI^F(=*NKVV\5^#(H;K4&M
M=2LKE9Y[F=B;TK$K++Y1+"/).1R#AL$#%=NGAK3IA=RW@FOI;VV-K-)='YC
M<YC   4<G. "3UZ"L^U^'NB6LFERJ^H/+I>X6KR7LC%%*[=G7[N !MZ>N: /
M/[K^T!\/_%^L?VYJ_P!MTC5KH6;_ &QP$$<B@ @'YQCC#9&.@'-==K]S-X?\
M8:%XAGO;H:/>C[#>0M<OY,$K@&*79G: 2"I[#(/6M8^!-(;1=2TAGNS9:E.U
MQ=(9SF1V.6.>HR<9 ]*IZ]#)K(;P8VB7T]BZP^=J-P%,!B#!F ;.2^%P..IS
MT% &KX622;3Y=3EEN&_M&9KF*.65F$41_P!6%#'Y?EPQ [L:Y3QC/,[^+'M-
M1O;BXL=-$B1P3-;QZ:PC=]Q96^=VX;&TX  ) ->CJH50J@!0, #M7.7W@;1=
M1U/4;Z9;H/J4(AO(H[ETCG 7:"R@X)"\"@#F=4U768[#0M9GLKW5=*?2HWOH
MM.N#'<0R. WG!%(+C (P#Q@D5VOAJZMKWPQI=Q9WLE[;M:Q[+F3.^4!0-S9Y
MW''.>^:IVO@^QL%MA8W>H6S06RV@9+DL6C!) ;=D$C)P>HZ# K7T[3K32=.M
M]/L81#:VZ".*,<[0/KR?K0!Y[?\ AG7=&U"^\2?#_4HY8[F>26\T:ZYAGE#$
M.8SU1BP/ISWQQ3HO&#>(X_!L-A;BTM=8@N9&MVN&@^>$*OE!T4G )8\ 9"CM
MD5U*^#[*!;E+.^U*TBNY9)IXX;H[79V+,1G)3))^YMI-4\#Z!JVA6>D2V9AM
MK$JUH;=S&]N1T*,.0?Y]Z .*\366O>'_  ;J@DUZ92NHVTEFD%V[R6\4DRH8
MV=L,Z_>QGW':MRSAGTOXK-I<6HW\UI>Z,]S*EQ<M)B9957>N3A.&/"X'3BM:
M7P+I$^@G1YGO9;=YEGEDDNG:6:12"K/(3N."JXYQP*NMX;M&U^/7#/=&_CMC
M:K)YG'ED@D;<8Y(!SCK0!YS:>(M2L? ]NC7]T[WOBAM,DO))2TD4)G8$ACT.
MU=H/;/%='>_:="^(VAZ;9W5VVFZU;7*7$$EP\GDO$H82H6)*D[MIP<=#UK8A
M\#Z)'H%YHDD,L]A=RM-)'-*6(D9MQ96Z@[N>#P>E7+/P];6EQ]J:XN[F\$)M
MX[FXD#O'&>2%XP,D DXR<#).!0!R?PQT^XO]!L-=OM9U6YNDDNX?+ENF:-E\
MYU&Y3]XC'!Z]N@ '4>+_  _%XI\*:AH\A"M<1'RG/\$@Y1OP8 U-H'A^R\-:
M;_9^GF;[,'9U260OM+$LV">>22:U: /.O!^OR^-;718+H$7.E@R:M&W5;F,F
M-%8>[!Y/8HM:6I3W,/Q:T*!+RX%M<:?=-);^:?++*4P=O3/)YKH].T6PTFXU
M">R@6*2_N/M-P1_$^T G],_4GUJ&Y\/6=UXAM-<D>?[;:QM%%MDPH1L;AMZ'
M.!^5 ''^'A/XP\'VWB-M<NM/U#[6\\DJ2L8X4CE8&$Q[@NW8 #D?[1S33_:W
MC&7Q/!:W1MKJROGM+65-0EA-KM52K^6BX;));D\@D=!6_#\/]!MM;FU.!+N+
MSYOM$MHETZVTDN<[VB!VDYYYXSVI=3\ :'JFNOK+B\MKN90ER;.[>%;E1P!(
M%(W#'% &[I9G;2;,W5Q%<7!@3S9H1\DC;1EE]B>15NFQQI#$D<:*D: *JJ,
M = !3J "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "HKF26*VDD@B6655RJ,^P-^.#C\JEILO^
MJ?\ W30!P%M\45/A2S\57NAW%OH=P^QKB.99&@^<IN=, [=PQQD\]*[]'61%
M=&#*PR".A%>/^!O"MUXN^"^BZ3=:FD&D2L[3PPVQ\Z15G9MOF%\ $@'(7-;-
MWHB:I\3[_19-0U.#3O[$AF6"WO9(PC^<R@K@_+PHX'![YH ])HKR^WMM4\:6
M&N/;ZFME?VFIS6T5Q]HD#V?E/A1M!"X*@$Y^]N.?9GB>^OM.N;R^U>&YO]#F
MMHD&IZ7,PDTU]@W,8P0=I)WY'8@'(P* /1FGOQK26ZV2'3C;EVN_.&X2[@ F
MS'3&3G-9OC/Q%+X4\,7.LQ62W8MRFZ,R^7PS!<YP>[#BL22\=/BY \-S<2VD
MOA^6X$ F9HV82H RJ3@$CC@5QNM%?$7P'G\37=Q-+J-TRSNZS-M7_2 OE!<X
MV*.-N.HSUYH ]LHK@+M[GQ+XS\0Z&TL:I8V\ @C:>2(@2(6,J[,9.2!GMM&,
M9.<R6QU*+Q'X$TN_\07=W))%?07D]M</&MQY:8&0#PPY!8?-G/.: /3+N[@L
M+.>[NI5BMX(VDDD;HJ@9)/X5*K!U##H1D5XKKD&/AW\1=*DFN9K73+X_9%FG
M=S&I2-MNXG) +$@'->PZ;:Q6>GPPP[]@4'YY&<\^[$F@"U17D6MWLT=G_:^F
MWUW=%?$4:?VB\QC&TS!#!&@)W1J,J<[02"1FMA-+&L?$GQ1IMW?:D;$65K(L
M"7LB*K-YF2,'('&< @>H/% 'HM8&E>(I=0\6:YH<MDL(TQ('642[O-$H8YQ@
M;<;?>N!\/>(;[4]'^'6DW]Y,8]52Y:[G\PJ\WD*=B%ASR<$]SMQW-;_A.QAT
M_P"*/C." N(O(L&57<MMRLG ST'MVH Z?7_$5IX>M[=ITDGN;J806MK" 9)Y
M#T49( ]220 *J7VO:OI5HMW?Z$C0M(B-]DN_-:+<P7<X9%^49Y*EORYKFO%Q
M:W^,7@6[NCBQ*W4$;-]U9V3 'U/ 'TKT.=H4@=IR@B ^<OTQ[T 8FD>(I=2\
M4Z]HLMDL']E" B42[_-$JLP.,#;@*..:TM1GOX#:?8+)+H27"I<%IA'Y41SN
M<<'<1Q\O?->?G2(=7\>^/HKB>ZCC6VLF M[AHOF\E\,2I!..PSCU!XQ3&I7]
MYX)^&NHRWUU]IN-2LX;AEF8"92KYW@'#9*@\T >LUD:UKBZ7<Z;91Q++>ZE.
M8;>-FVKE49V9C@X 53T!Y('N..>._P#&.J>*]/6[6WN+&Y%M;$7$D;VJ^4K)
M*JH0,EBQR>N,=!4.M:8+CQ-\/!?WCWMS(T\<]S#,\:S%;9OG4*WRY//'7Z4
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
M>O=7%J+E+.(S21^9L)4#)QP>?;BN3TG2M0NO^$<\16NM10Q,J-<OY\DGVY)
M!M8$[=V3P0.#P..*VOB/_P DV\1_]@^;_P!!- %5_'IL(M&N=8TF2SL=7>..
M"ZCF658WD&4608!7([@$5V5>/>5/<:EX)L?%<R-H$EO;S:<UO'Y<9O%0;8Y\
MEB>"=N" 3QBNKUR\N+_X@P>'2T7V?^RS=K#+*\8F<R%3]WEBH&<?[1/88 .V
MJEJD]_;VT;Z=9)>3&9%:-YA&%0L S9P<X&3CO7 SZ9XFT?1;.UCND\1FQO97
MGL/M!CEEMRHVIO8Y<Q[P?FZY7OBJ6J:K;WGP^TR]TB\U6#R]=BBDBN)I$FB+
M7(WPR#=\P7=C!)X H ]8HKAM6DE;Q_/:ZLMW)I#Z4&M5M5D;9+O(<D1\A\;=
MK'T.#G-<U/8ZYI_@?P9_:FHZI#J]QKEJETS7KLQ5W.%8$D?="9&, @^] 'KU
M%>:QNOA_Q;XML$U>[L].71H[WSKB9[@VTA,BM(N\D]@<=R*BTIKFU\;^&K:/
M[9#9ZAI,XE\^Y8R7)01D2NN2$?YB<ABWS<XZ4 >@2ZB9].OIM*2.]N;?S(TB
M\S8KRJ/N%NW/!/:K5J\TEI"]Q$(9V13)&&W!&QR >^#QFO)="L([/X0^+KFT
MFNK>>!]3,3PW4BE#&SE<8;CH/KWS6S;:G-?:]X.T"ZEE%E<:*;R3#D?:90J
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
M=2^'_AW5=<;6+BTE6[E4+.8;AXEN .@D52 P^O7H<UT]% "*JJH50 H&  .
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
MD=E)R0Q+?-T'!R!@8KH** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ J.XMXKJ!X)EW1N,,,D9_*I*9+&LT
M31L6"L,$HY4_@1@C\* /$;6UBLOV>EU&UWPW@G&)HY&##_3MO!SQ\I(-=W?9
M_P"%P:?;K+*D5QHUPTJ)(RAB)$ ;@]0"0#UK8@\&Z#;>')O#T=B3I,RE7MGG
MD=<$ECC<Q*\G/&.>:9:^"=!L[VWO8[68WEO$T,=Q)=2O)M;KEBV3T&,],<8H
M \_T#P]::G\,=1U:_GOKJZACU.-/.NY&7:'D !7.&Z9R<G/?@8DN[&&/X>_#
M:.'?%Y^I::SLC'=N,)R0>Q^E>D:7X;TG1M,FTVQMF2SF+F2&29Y%.[.[[Y.,
MY.?K5%/ GAV*QLK)+*86]C,L]LOVN;,<B\*0=^>!P,\ =* .*O;NY\(ZCX_B
MT=YQ';:5!>P1R2M*(Y2) SC<3Z GUQ6W8>'V;4]%URSUR"*TEB:.5+<29U%7
M3*EF,ARXP6#=>O-=1'X;TJ/5KO5!;NUW=Q"&X:29W61!G"E2Q7')[=S5#1?
M7AOP]<R7&EZ>8)'# ?OY&$8;KL!8A,_[.* .<^&6BPW.E0:U<W5]/>VUY>PQ
MM+=R,H3S77!4G#=,Y.3GOP,:OB&_$OC_ ,/:#>/MT^[M[F8QDX6XE3;M1O4
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
MA%,\:PC&T@*K =..1TI5\+Z.FJ7NII:NEW>@"X=)Y%W87;N #85L<;@ <=Z
M/-M"UB[;P?\ #C3[FXF^RZK.Z7DQD.Z3:'98RW7YFQGU QT)K8O(IM+\;ZSH
MEC)/%I-UH#WQABE9!;3JY0&,@@H&'88R1GUKJU\&Z GAZ+018G^SH7#PQ&:0
MF)@<AD<MN4@]"",59B\.Z;'!=Q>7,YO$$=Q+)<2-+(H! 7>6W #)X! Y/J:
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
M#(D88);X&[/.XG*C+=3R* /7**\VN[&+5?B;HD5W)/)#<Z#*\\0G<)(0\?4
MX YY QGOFL[2_#LFO_#[Q'H]K(ZSZ;K-Y'I;,Y)B\M\I'DG[I^Z0>QH ]:HK
MB/"NJ6WC:]L=<BMQ'%I]IY1CVXV73X\Q#_US"@#_ *Z&KWC22T=M%LIWG>6X
MOU\FRC("715&)24GCRQ]X]?NC@GB@#J:*\HTNUU.XT?QGI%C<6MI/#K,8M8'
M=C;C(B<P#H0CG*D #[QXYKHO NH07&H:Q:2Z))HFJV_DF[L=P:$9#;7B*\%6
MP>F.1ZT =K17$Z_#9ZGXS&GF/[?<QZ8S/9W+ 6T",^/./!)D."HQV!Y7//&6
M33:EX+^&,US>7;337ZP2NMPX+ILEX.#U^4<]>.#0![317">#K6+2O'_C#2K,
M-'81+9SQP;RRH[H^\C)XSM!-2^(+LW/Q)\/Z#>J#IEQ:7$_E-]RXF7&%8=&"
MJ6;!XR0>PH [.61(8GED.U$4LQ] .M<0WCC4H?#\/BJ338'\/2V<ETVV3;/
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
M%7C.6WA6WECFU0(\!,;*$9RH!7!P,#CI0!ZS:&X:S@:[2-+DQJ9EC8E0^/F
M)ZC.:FKR[7+8V?@;PEXMCC,DNC0VLUT@Y\VV**) 1W*YWC/3!JUXDU'[+X2U
MOQ79N(A>300)=1@DI:"5(VD&"#R"[!@0<%.>!0!Z/17&Z5X<33?%5KJ]KJUG
M%!=6QB-C96ICBNL?,)?]8PR/[V.0<9YIOC*^=?%?A#2)R1I>HW4XNN<+(R19
MCC;U#,<X[[<4 =I17EVI6\FF>)_%>BV)EBT>7P\=0,,+LBVUQN=1LVD;-P4D
M@<'%4;*QBT[3_AAJ]N\PO[MK:WGF:9F,D3VS$H03C&0,#MB@#UJYN8+.UENK
MF58H(4,DDCG 50,DFN=U;Q3/9:IX9AM;6*2SUF;RS,[D.@\LN,+C'0=<_A3?
MB3;PW/PV\1+-$D@2PFD4,,X94)!^H/-<OJ^FVBQ?#FUAC\B*6\4N(#L))MFS
MR.03ZCF@#U&BO'[R[E\)P_$BWTAY+>ULFLI(45F;R!,BB5EYR.,MQW%=7IGA
MV.S\3:;K=GK%E%;W$#1&ULK8I'? KN5R?,8%EQG=C)'&>: -'QQXGG\(>&Y=
M9BL([V.%T62-IS$?G<*"#M;/+57G\7W6D^)-*T?7-+BMQJI9+6YM;HS)YBC.
MQ@40KG/!P:S?C/\ \DMU/G'[VV_]'I5)H7@^+-E'XLG:[!C9_#]Q@1PK)C$B
M,H_Y:XP022".F#0!Z717GMXO_"2>/M=T&]ELMEO:0&UM[NW:3*.&+R( ZX8-
M@%NHP,$51N=+UK3M/T?[-+;^,8]-MYH+NTN,1R3#S,"5 Q8%UV%.22><<F@#
MT.^?4DN+(6$-M)"TV+LS.5*1X/* #ELXX-7:\KN+NQOK/X;WVE27BVCZB(42
M>1@VU8Y 5=<X+!EQGGIUJQJ]K<WNM^-+6[M9[Z:2UB&DO I?[.QB.$##_5/O
MPV21D$'.* /3**\LO]#ELM5^'.GWUS=-<MYT=Z5O)2)'%LQ<Y+=VSR.QXQ5<
M&QT2T^(6E->WMAI5O=6RP"T?,D9FCC)2/<>-S''4 ;CTZT >MD@#).!61+JE
MQJ/AYK_PV+6[FD/^C_:'*1. ^UCN )Q@$CUXKB].M!'\1M7TJ:PM;6QN=!CF
MDL(6W1%O-=<L, ;L<' _$]:YO[%;V_[-5O=6ZF"X:"!W>%RA<^>J_-@_-P2.
M: /;Z*X:69-8^*MYHFJQ)+96VE1SVUM*-T<C,Y#R%3P2,*H].<=37%ZI]L3P
M;K]@UU=&UTOQ)#;6$OG-N6)I8LQDY^8+O(&<X_"@#VVBN!TZQ@T7XQ26=AYD
M=O=Z&;F>-I6<22K.%#G<3EL,1FN^H **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ JO?6-KJ=A/8WL"3
MVLZ&.6)QD,IZBK%1733+;2-;B,S!<J)"0I/OB@##MO _ANSGM;B#3$2>T1HX
M9?,<NJG'&XG)Q@8)SC'&*7_A"?#_ /8W]C_86_L[S/-^S_:)=N_=NS][^]S]
M>>M8_AKQ;XD\2^$;;Q#9Z'ISI<!V2U-^ZR$*Q4C<8]N<J<9X]Q6[X6\467BS
M26O;1)89(I6@N;:88D@E7[R,/6@ OO".AZEJ,&HW5D6O88_*6=9I$=D_NN58
M;Q[-FK>C:%IGAZP%CI-FEK; EMB9/).2<GFKLLT4$#SS2)'%&I9W8X"@<DD]
MA4.GWT&IZ;:ZA;,6M[J%)HB1@E6 (_0T 8]YX&\-7]U?W%UI,4DE^N+G+,%D
MXQG:#@-C^(#/O5B#PKHUMJ$-]!:-%<P0?9HY$FD&V/KMQNQC/)]3SUK9ZT4
M<S/9R^$[,+X8\//?M=W1>XB^W>6$+9+2DR$YR<9QR<YYK3\/Z4-&T>*U(C\Y
MF>:X:)<*TLC%W('IN8X]L57\5ZGJNC:!<:EI.G1:A+;(9'MFD*,ZCKM(!R0,
MG'>JD/BL77@"+Q+:BWFDFMQ+%"KG:\AX$0.,[BWR=.O:@#3UGP]I7B".W34[
M03_9Y/-A8.R-&WJ&4@C\ZJQ>#/#T$6H1P:9'"FH#%TL3LGF#&".#P" ,@8![
MUIZ<]])81/J,,,-TR@R1PN75#Z;B!GZXJU0!BS>$]%N= 70IK1WTM0JBV:>0
MKM7&%^]G P,#H,5)=>&]+O9+&2YAEE>P;?;,US)F-O7.[D]LGMQ6M10!F1^'
MM,AU6[U..&1+V[0)/,L\@+J.@^]@8SQCIVJB? WAQM'ATDZ:/L,$WVB&/SI/
MW4F2=R-NRIR3T(ZFNAZTC$[3M +8X!.* ,2'P;X=MSJ!BTFW7^T(O*NA@XE3
M&W!&>,@#..O4\U'>>!_#=_H<.C76E12V,#!HD9FW(PXR'SNSCC.>E-\':_=^
M(=/U":]@@AEM=1N+/;"25Q&VW.3U_3Z5T5 &*GA+0XM-M-/ALO)M[27SX!#*
MZ,DF""^]2&)(9@23SFM"PTVTTR)X[2+8))#+(Q8LSN>K,Q)+'@#)/8>E6J*
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
M,XV13R@AB/8<X'0%L]0*]/K+@\.Z5;:Q+J\-KMU"8!9;CS'+.!T#<\@>AXH
MYSQ3=&7X@>%-&O%!TJ[6Y=XW&4FF1!L5AT. 6(!ZG'H*Y;7K0V#?$72;2(?V
M/%HZWL4('R6MPR/G8/X<[=V!T//>O4]3TBPUFW2#4+9)T1Q(F<AD<=&5ARI'
MJ"#26^CZ?:VD]K';(8KC/GB0ES-D8.]FR6XXY)XXH X.Y:+_ (2CX82 IYTD
M,P9@?F=?LA(SZC)KI?'L]E%X3GCOYKJ.&>6&$"U8+)*S2+B/)X ;H<\8)J6T
M\#>&+'[*8-&M@;1R\!8%RAQCC)/3MZ=L5J:II5AK>G2Z?J5K'=6DN-\4@R#@
MY'X@CK0!YE]HOM \0^.?[/@M;6>+0H[N*TL^8TF"RX(&!EL <[1G XK?T#2O
M#MW8>%O$5K<M'=>4 DT#C?>.Z?.LQP3(006.3P5)/0UT=EX5T+3K]+ZTTNVA
MNDA\D2JGS;,DXSZ\GGJ<]:ATOP7X;T2_GOM,T>VM;F8$-)$I! /7;_=S_LXH
M \Q\/WD7]LW&EZ];+_PC]UXAOO)F)RCW@F)6.7(X4CE?[QX/'%=->:'IU]\9
M/L=S;B2T?PZ6>W+'RVQ<*,%<X(QCCIP/2NH;P9X>?39].?3(VL[B;SYH6=BK
MR9SO()ZYYSWX]*L)X<TJ/45U%;=Q>K#]G$YF<N(^NS.[.,\X]>: /*M.OY;+
MPGH&E,[KI,GBB;3YLL2! LLFR(G^Z2%!]ACH:ZB72H+/XH)I-E:QKI&IZ1*^
MH62*!$&5PJR;1P&.[;D=<>U=3'X4T*+2KG2UTV$V-RY>:!\LK,3DM@DX.><C
MG/-6]/TBQTPNUK"1)( KRR2-)(P'0%V)8@9.!G R: /&+B&:+PI_8T-G'<:O
MX-OWN92Z<RVL;;USZ^8CC@]=C'J*[N1K36/"_B;Q1;QH4OM/EBMI=N&:!(V
M)^K[S[@+Z"NQ33[..YNKA;:,37843OMYD"C !]< D5$=(L#HPT?[,HT\0B 0
M*2%\L#&W@],<>] 'FMM>DVOPZTBYFM8K"\T?(%Y"9899UBBV*R[E!."^ 3U/
M3.,,U6U'A*VL]&751+I>H^(88[R*.,Q16D;@L8%^8[48A<KG@,>S5Z#=^$=
MO]#BT6[TR&?3H<>5!)DB/' VG.5P..#TXIR^%=!7P^=!&E6O]E$8-KL^4\YS
MZYSSGKF@#E;;3+/3?C7*FG6\-IYOAPL5B0*N[[0!NVCCL/RK!TOP_=Z[X;\+
MQBS=M2@U+S=1U(-A;B ,_F-YH.9!)\N /;H!7>CP?I6G)+>:-IEG'JT=JT-K
M<7&Y]IP=NXDDXSC/?'%</I_P^@EM8[9_ RZ7J*QA3J<6I (CX_UJB-@V<\A=
MJCMQ0!>DLX_%GBCQ9H5_/8+);&.*WBNK8RR0P&%2)(CO7:=Q8Y SG&3P,=SX
M?A$7ARQMVOVU)4@6/[7(N#. ,;CZY'?OU[U5UCP7X<\0W5O=:QI-M>W$"A4E
ME7YB/0XQD>QXY-;J(L:*B*%51@*!@ >E 'CMEI^GVOPY^)4EO9VT,JW>JPJT
M<2JPC X0$#[HXXZ5HP:;::3XL^'=W91F*YO[>:*[EW$M.HMMP#D]0" 1Z=J[
MB3PCH$K:@S:7!NU'/VLKE?.SUW8/? SZXYS4A\,Z09;"0VA+Z>,6C&5R8!C'
MR\\<<?3CI0!Y=?M:R66C:WI0W12^*8PFHW#@W4^Z=D=1@#;'@%0"3E0.!73>
M'-.TY?BSXQG%G:B6-+%XY!$N59XY-Q!QP6[GO6^W@/PLXG#:'9D3S">0%."^
M<Y'IR,G&,]ZT!H&DKK"ZNNGP+?K&(EG"88*. /P!(^AQ0!B^-'LI;O0+"X$L
M]Q<7Q:WLPX6*X9(V)\XD'Y%'S="<@8!KD-(LKVZT#Q=I%E=V5M/%X@Q;0N#]
MF)'E.8=O41L<J0/[QXYQ7I6KZ#I>O0PQ:I91720R"6+?G*,.X(Y%4QX,\.*M
MR$T>UC^TNCR^6NS+)C:1CIC /&.1F@#'\!WT4U[K5G-H?]BZM;O$;VUC96A.
MY2$DC(&,,%/Y>M174J:I\6VT7588YK&+1Q<6MO,H:.1S)M=]IX+  #V!/J:Z
M^QTRTT[S3;1$/,P:61W9WD(&!N9B2<#@9/%1:EHFG:M);RWEL'FMF+03([1R
M1$C!VNI##/?!YH \OGM/^*$^(VESQ+<:9I<MR--\Y=_D?N=Q5">FPM@>F<5Z
M1X5LK2Q\,::EI;0VZ/;12.L480,Q1<L<=3[U-+X?TJ?2&TF2S0V#YWP D*^3
MD[L'YLDDG/4]:M65E;Z=:1VMJA2",!40L6"@#  R3@#TH \_\/Z;IT/CGX@2
MQV5K'+'+!Y3+$H9-UL"VTXXR22<=>:YG2]-M++P/\-M9MXRFI/J5G USN.\Q
M.65H\_W2.W2O69?#6C3ZE<:D^GQ?;;F,12SKE7=0,8)!].,]<<=*A_X1#0OL
M%I8_8!]ELY!+;0B1]L+CHRC/!';'3)QUH X=;!/&MWXNL-0OK&"\M;YXE::V
M+7%I"%7RI(W\P;!_$"!USG.:[Z*":Y\)I;Q7K7$TEB$2[9=ID8I@.1V)/-5M
M4\%>&M:U2+4M2T:UN;R( ++(N20.@;^]^.:WNE ' ?!J>,?#BRTXCR[S3I)K
M:[@;AHI!(Q((]P0?QJQ\2=9:Q\.JMO.R1'4+6WU"6,D&&!W&_P"8=,C ]0''
MJ*WKOPKHM[J3:C)9>7>N KW%O*\+N!T#,A!;\<U=.DZ>VF/IK64#64BE7@9
M4<'KD'KGOF@#B]3TZ/1OB3X9318$MK?4X;J'4+>W78DD:(&5R%P P8@;NOS
M9KAY])LT^#&J:LL;?VC8:E.UI<ER7@(N\?(<\<=?7O7LMAX?TS3,FTMV5C'Y
M(=I7=UC_ +BLQ)5?8$"JW_"':!_9,NE?V<AT^:3S)+8R/L=LYR1GGGGZ\T <
MQ/I-EH_Q9T5+"$P#4M.NUO"KMFXVF,JSG.2PR?F//O7&Q>&].N?A!JNM,TR:
MIIMQ>2V5V)VWP,D[E0O/&<8/<Y^E>P2Z#IIOK?4S:/+>VB%8)#*Q=1W4$MCG
MOGKWKE_ GA#['HLD>MZ3)#<_;YKGRY)P\;[I2Z,41RI8#;R1D$#'04 8NN"'
M6(?$1G@6YU.UT*(WQO"/+L7,3N/)7&=Y/).0!A><C%,%M'JVK?"Y[UY9FNM,
MF^T$RM^]_P!%0_-SWR<^N3GK7H5YX4T'4=3?4KS2K:>[>+RGD=,[U]".AQV)
MY%,M_"&@VCV#V^FQQ-IX*VAC9E\D'AMN#W'!]>] '#Z+X6LM8TSQUX51!!91
MZDPLE7I:NT2,"G]T!CG ]2.]7_"-\OBV325N[..*X\/QLE[%L $=X"8@H[8
M5WQ_M1GM717FGOX=MKN_\-Z&M]J%U*K3PF\\KS><%RS9&0*N:!ILNGV<TETD
M2WU[.UU="+E0[8 4' SM4*N<#.W/>@"76X%;P]JD<=T+ R6TN;I1CR24/[SZ
MCK^%<7X/EET_Q6FCZUH%OINLK8-Y5U8$&VO8E9,MC *L#C@^I]J[^ZM8+ZSG
MM+J)9;>>-HI8VZ.K#!!^H-5;#0].TV;SK: B41^4KR2-(43.=BEB=J].!@<"
M@#E/B7;1S-X39C(K'Q!:QY21E.T[LC@^PYZ\5G67A?1C\3M=T<V$?]ERZ;;W
M4EED^2\I=U+E.A. /QYZUWFIZ)IVL&W.H6_G_9I1-#EV'ER#HPP1\P['J*8O
MA_3%U2;4UMV6^FC\J2<3.&9/[N<]!V].U 'E.AZC./"G@'3;N1VTJZU6YM;D
MNQ(=8WE$,3$]5)"C!Z[0.E;M]8OIOCK6])TJY&EZ7>^'GN9VC&V.UN-Y19E
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
M3WKL)+"PN/C197%Q9VKR-X?:=G>)23(LZ /DC[P' /45U'_"(:#_ &?=:?\
MV>IM+N0RW$)D?;*YY+,,\D]_7 STJQ+X;T>>ZL;J:PBEN+%=MM+)EFC''&3U
MZ \],4 8/Q.U*XTOPBLL4CQ02WMO#=S(2IC@:0!SD=,CC/\ M52U2PCT3XC^
M%O[$MX[:'44N8+^W@0+'+$D89791QE20-W7YL5W-U:V]]:RVMW!'/;RJ4DBD
M4,KJ>H(/6J>G:!IFE,&L[8JXC\I7>1I&1/[BEB2J^PP* .0^'^E:;;^)?&$L
M&GVL4D&K&.)TA53&IACRJD#@<G@5?\;V6J7%[I=QI5O8ZE):K,\FD7AVK=(=
M@+*2" ZD@ D8^<UT&G:!IFDW-Q<V-MY,UR^^=A(Q\UO[S9/)]SS3[_1K#4KB
MWN+F%C/;AA#+'*\;H&QN 92#S@9^E 'GMC?:)K-MX4M;.QN1*TMXT.D7;*L*
M,A(D\[*G(C)(7 )Y'N1AW+,OP-\86QD1DMM3N88E3[B(+A<*HR<*,\"O4[KP
MEH%[!907&E6TD=DQ:W!7_5EOO<]3GOGKWS3#X+\.&RO+/^R+9;:]E\ZYB0%5
ME;.?F ZC/..F: ,#Q##I^J^+I[(Q+>W4.D$RPWA!MK:-F/[P+@DR'&."!A>2
M.,\E:1#5O"WPM>\EFEDEN1#*WFMED\J3@\^P'K7J-QX5T*\OK:^NM-AGNK>/
MRHY9<LVS.=I)/S#//.:@B\$^'((+2"'2HHHK.0RVZQLR^6Y_B&#][WZXXH Y
M/7M TKP!J.A>)=,LDM]-LI#9WZ E@D,K<2Y))RCD<]=K$=!76>%+1!8SZLT"
MQ7&K3&[<;<$(>(U/N$"Y']XMZU7UZ'6=9OI-!.D0?V'<1I]HU![D$E<Y>,18
MSD@8SG SGJ,5TX  P.!0!Y\VG:>?CC/,]C:M*-!CG#-$N?-%PP#YQ][  SUX
M%<[;K#K/P4O_ !+=$)XBA6YNGO1Q/#<1R,50-U4 !5"],'&*]3N="TN\U:VU
M2YL89;ZV7;#.R_,HSG'Y\CT/-0'PMHIO9;O[ @DFE$TJAF$<D@Z.T>=K-P#D
MC/% %C3O-O\ 0+3^TX%,T]JGVF)EXW,HW*1]217FVEVJ:=+J/PTDAR);T3V\
MA7.^P<F1F)ZDKM:+=V+)7JD[2I;RO!&)950E(RVT,V.!GMD]ZP/#]MJ=[?OK
MNNZ9#IU\UN+:*U2<3&)-VYB7  .XXX&<!1W)H PM+@L]>\>^*]*UBS@GAL([
M6&RM9D!2.!HR2R#H,MG)'/"CM7+64EV^B>#GO)'F:V\5M96]W(<O+;J957+=
M2,KCWVBO5K_P_I>I7L=[<VO^EQH8UGBD:*38>2I9""5]CQ1?^'='U+2$TF[T
M^!["/:8X NU8ROW2N,;<>U ',: T$'Q5\9!&CCC6ULGD ( #$2%B?0],UW$<
MB2QK)&ZNC#*LIR"/4&L,^#M BBO/(T:S,ES;&VDW C?'@C:6Y(!R<D<G.>35
MOP_HT/A_0[;2X,>5 &P%!"KN8MA022%&< 9/ % '!WC+X%\9:G;VMI&T'B2#
M=IZE,J+P80Q'T1MROZ##59%E;6'C[P_X2N(D?1H=&DE@CE4%+BY5U#%AT9@F
M6Y[L36_:P:QK6O1W&LZ1!8VFF3R/:8N1,UPY!19. -@",W!YRPZ8YV-3T;3]
M86$7ULLK0/YD,@8H\3>JNI#*?H: /)M=MY+/P]\3=(B3.DZ?Y,U@IY%O(\8>
M14_N@$@@#INKJ-3,(^)?@1HR@EEL[SS"N,NHB3;GU'WL?C791Z-IT>FS:<MI
M$;2<,)HW&[S=WWBY/+$]R<DUGV?@KPW8264EOH]NLED6-N[ L8RP )!)/90!
MZ8XQ0!O4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
M%=V?CCP_H\ M9++41<B5^3(C11[L#!P.H]>E=,2%!)( '4FO.]4T[2K/XG^
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
MOU':@#/N?#>C7=])>SZ= ]Q*%$KE?]:!TWCH^.V[.*FGT73;G4H=2FLXGO8
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
MZC;6J0R.H4X8* Y4CH&(R>F>]6Y?"GAZ>6\DFT/3I'O<?:6:V0F;!!^;CGD
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
M;8^'](TR1)+'3;6W9 0GE1!0@/7:!]W/?'6@#Q^\:TB^!.N0R&%'CUB9$1L
MJPO < =CMY^E=C'>Z=>?$WQ)I6OM!M:PMQ8)<$!6@96\[9GN7/..>!Z5U,GA
M/P[-/=SRZ)I[RWA!N7:W4F7!#?-QSR ??%/U'PSH6KK;KJ.CV-TMM_J1- K"
M,>@R.![=* .$O=,TEO$GPYTVUW76E(E_'%Y[EQ+&L0QDG[RG''8C':M;X?00
MV6L^,K"UC2&TAU?,4,8VHFZ&,G ' &:ZR?1=+N;NWNY].M);FV&()7A4O$/]
MDXR/PI;/2--TZ>>>RL+:VFG.Z9X8E5I#ZL0.?QH X?7-(TS4?C)I<5]9P31S
MZ/.9(Y%!64K(F PZ-CK@YZ>U<[;P:?HD&OZ2\4KZ,?$UM!IENLWEQ>>0KM&S
M$'$08<C!Z$8S7::MX=N-3^(VG:I/IR3Z;;6,ENSLZ[A(S*P91G.  1G@\UT<
M^@Z1<Z5_9<^F6DFG]?LSPJ8\YSG;C&<\Y]: ."T#3[/5O&'C_1=2:SG@NEM%
MDB@7:FYHG#;02?F&!D]<KGBCP>9M3-CX3U*W5I?"TQ%VQC^638-MLP_WE;?Z
MYC]Z[&\TA-*M+B]\-Z+IG]KB%88@R"$,@(PA91D #.!TX%2Z#I]U:Q7-YJ(A
M&HWT@EN! 243"A5120"0% YP,DDX&: .#\->'].DO?&MW!I=M-?V&LS2V *#
M]U*(4*[1VRQYQUP/05FW"0WOP%L=7LN=<A,4T5RH_?\ VWS@K\]2S,64@]<U
MZO8Z-IFF3336&GVMK+.=TKPQ*AD/JQ Y/UJ./P_H\-^U]'IEHETTGFF58@"7
MZ;_][WZT <S$6/QK_>8$G_"-+N ]?M!S3OAI_P @W7_^Q@O_ /T::Z@Z-IC:
MD=2.GVIORFPW/E+YFWTW8SCVIVGZ3IVDK*NG6%M:+*V^001*@=O4X')]Z .0
M2[CNOC)>:=J80K#I4;Z=%* 5;<Q\UE!ZMPH/? ^M<GHLFD6GA@V+1;T?QC-%
M8P1RB.(R+(602'!_=@+G&#G Q7JVJ:!I&MF$ZIIEI>& [HC/$'*'OC/2H7\*
M>'GLIK)]#TYK::7SI8C;)M=\D[B,<GD\T >778B;3/BS:RR6DQ2,2JD" ()/
MLOS,JDG!!')SU':M6\OK*QU#P1:27-M9:5/:2?O/+0Q?:O+B*;\\!BI;!/\
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
M#I%I>:<\"E[ZWMY1+&6)2215.TY&#SW!KH8+RUNI)8[>YAF>%MLJQR!BA]&
MZ'ZUQ_Q557\)6R/]UM4LP><?\ME[UDZA:MI'Q'UF+P_:Q6]R_A-Y8HH(PH>9
M96"' ZGH* /1$U"RDO&LTO+=KI1EH!*I<#W7.:47]F5E87<!6'B4^8,)]>>/
MQKRB_$-[\$/#M]H^/[8@>S-G(O\ K/M9D591GJ229-WKR36U9W%I9_$#X@"Z
MEAA$EI9/B1@N\>4ZD\]><"@#OC>VHCBD-S"$E.(V,@P_?@]ZA;5],2&&9M1M
M%BG_ -4YG4"3_=.>?PKQ[3;33[_PM\*O.B@FS<^2Y(!)7RI"4/MG&5/!KI=?
MTBXT/4;JX\*V^ESVUOIJQW^@SIY:O 7E?=&PX4DF3((P<?2@#TA65T#*P96&
M00<@BEK%T'6M-N]*T=(94MY+RQ2XM[2:0";R]H_AZG&0":VJ .1\0^(-7TWQ
MMX;T:T-C]FU<SAVF@=GB\I _!#@'.<=./>FZGXDGO/%4_AK2M2M+.YBL1<">
M4"0-*SE%CQGMM)(Z\C&.]#Q>0/BM\/02,[]0_P#1 J2T@MS\:]3_ '46X:+;
MO]T9#>=)S]>G- '6P7CVFG6IUFXLX+QHU$Q23;&9,?-LW<XSTSS5@W=LLD<;
M7$0>49C4N,N/8=ZR/&'AR+Q5X7O-+?:LSKOMY2/]5,O*,/H0/PR*YKP]JVH>
M+;";719F+4=,L9;..%TQMOL?OL ]@5C /NPH [D:A9->FR%Y;F[ R8!*N\#_
M '<YI1?69\[%W ?)_P!;^\'R?[WI^->1W'E7_P  =/O+$DZS T+P2+_KA?\
MG*K^^]F+ ^N:Z33KBWLOBIXI-]+!"9-,LG;>P4,!Y@8\]1G H [V*6.>)989
M$DC;HR,"#^(J";4K&WNH[6:]MX[B3&R)Y5#M] 3DUR?PBDC?X6Z&$=6VQN"
M>A\QN*XOQQ?6-SX6\>/8R06_EWR1W!N7WSS3IY>/+&1L48&.N<-@"@#V.>^M
M+7=]HNH(=B>8WF2!<+G&XY[9(YI1=VQ@CG%Q#Y,A 23>-K9X&#T.>U>>2:;H
MNK?&EA<6MG=Q3>'EE*LJNDKBX9=Q'1B!QDYQ7(2Z5;6OA@V[(O\ 95OXV2/3
MV8_ZJ#S%#A&ZA=V\9![&@#V^*\@O4G6QO+>66,E&*L)!&_HP!_3(KG/!/B>3
M5O!]IJ6MW5I%=333H2"(T.R5T&T$^@'<UDP:'::/\8[0Z':0VD$ND2'4(;=
MD> X$3%1QN)W =\*?>LOPWX=7Q3\%18QE5NUN;J:SE('[N=+F1D;\Q@^Q- '
MJ!N[99HX3<1"6091"XW,/4#O5#6_$.F^'TM#J%PD37=S';0HS %F9@,\]@#D
MGL!6!X,U1O&$T?B*XM6@:UM_L2QNN"DYP;C&>VY44'_9;UJ+XF)#Y7A:298]
MJ^(;,,S@8"DMG)/:@#K[C4K"T@CGN;VVAADQLDDE55;/3!)P:LJP90RD%2,@
M@\$5P>C7,5S\5?$-I>"*2(Z=:G2U(!1K;#>;L[$%R <=<#TJ?X813V_A_4K<
MLQT^'5KN/323D?9E?"X/]W(;'M0!O'Q)ILOB"?08+R#^T8H!(RLP(0L<*",@
MD\9QUQCUK*\$>)Y=8\/07&L75FE_-=W$"(F(Q)Y<K* JDDG@#N:S[/['#\:-
M7\X0([Z5:F/?@%F,D@R/?.!7#O862?!:[U06\/VZ+62\=R5!D0B_P-K=1P3T
M]3ZT >V7>H65@$-Y>6]L'.U#-*$W'T&3S5CJ."/8UYI=75C=?$#Q1H^O:M_9
MXFMH%M5F$02:V,?SA3(IZ.7R!_2NT\*6=I8>%M/M+"ZN+NSABV03W# O(@)V
MG( !&,8..F* .>T+QIJ$_P 0=4\+:Q#;($!?3[B!&03A0"ZD%F^8!E/'8$T_
MXB>-+SPI!I\6F6\$]Y=7"*YG!*11%@FX@$'.YE &>?F]*P?%6G7$FG:MXATM
M=VJ>']::]A ZN@BB\V,^Q3/Y"J7C.7^T_!$7B69&B.J:K9-;I(,,ELLG[L'Z
MY9_^!^U 'JT]_:Z=#&=1OK6!FXWR.(E8^P8_U-27%[:6< GN;J&"$D 22R!5
M.>G)KA]?O-/D\:ZA:JT$-]'HN+BXO7S&(&=OE2/(R21RV<#Y>#VP/#J:C?\
M@OP3<^']4LO[:LK"7;9WF6BN(\1AU)'*L,I@]MWH: /59=1L8;474MY;QV['
M E:50A/IG.*)-0LHK3[7)>6Z6QX\YI5">GWLXKS>UEO=:TGP_J'AQ;72=8M#
M>[=)O/G@EQ($F4,O3#8VL.@)'3--L-=TZ]/A)%TQ=,U,W-_Y$4\W^CVTB%EF
M/&!)RQV@8ZGD8H ].CN8)K87,4\<D!7<)5<%2/7/3%8?B+7C!X-UC5]#O;*>
M6RM99E;_ %R91"VT[6'/'K^%>66VK0V/A60R7,4NEQ>,W_M#RL>6+8R$ABH)
MQ&7VG'0].:[3Q,GAZ30O&FHZ5-%/?76AR_:I+>;?'M6)Q'D X#$$X[D"@#JM
M#UB&_P!+L#-=6YOI;.*XEB5P&&Y02VWJ!DU<_M*Q^SF?[;;^2&VF3S5VY],Y
MQFO-8["RL-6^&%S:6\4,\R.LLJ* T@-H2=QZMS@\UG7-Q:6_@#XH6TTL,<AU
M2]*Q,P!):-"N![XR/I0!ZY<:A96@C-S>6\(E.(S+*%W_ $R>:6XU"RM+9;FY
MN[>&W;&)9) JG/3DG%>=ZBFIE[75O#T^GZC)%HD*7ND7?W9[<ER&1_X6)#@Y
MX.!GH*J6FNV%QXIT/[5>2Z/IEYX>B;3!.(]NXL?,C+2*1NV^7Z9 'K0!Z!JO
MB;2='.GK=7D*M?S+%;CS!\^>2W^Z!SGIT]120>)])N?$,VB0WD+WD,*2NJR
MXW$[5]S@9QZ8]:\ZO=)T71[/P9;Z?>/>:;'XB*I<7!1EP4E)5&  V!L@>^:V
MK!].B^+&O.SV\:2:5:/"ZE06RTG*>IY'3VH [J+4;&>Y>WAO;>2="0T22J64
MCJ" <BK->8^%Y+_1-:\-Z1J,=GJFGS02)HVLVORR",1[MLJ^Z@?,#@D#/->G
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !5/56U%-+N&TA+:34 O[A;EB(RW^T1S5R
MH;H3&UD^SR)'-M^1W3< ?<9&?SH SM!T^\M8[B[U1H&U*\<23_9\^6@"A512
M>2 !U/4ECQG%6+G0])O;Q;RZTRSGNE  FD@5G !R!DC/!KC_  ?K7B_Q3X(L
M]?CO-&2YN1(5MGLI GRNRX+B7(SMZX.,]#6UX0\71>)M*NIKBW^P7VGSO;7]
MM(X/DR+U^;NO<'Z^E &SJ.DZ;J\21:EI]K>1QOO1;B%9 K>H!!P:BDT#1I8Y
MHY=)L)$G?S)5>W0B1O[S CD^YJ2VUC3+V":>TU&SGBAXEDBG5EC_ -X@\?C1
M#K.EW%VMI!J5G+<M&)5A2=6<H1D,%!S@CG- %F&"*VA2&")(HD&%2-0JJ/0
M=*IS:#H]Q=3W4^E6,MQ<1^5-*]NC/(F,;6)&2,=C4DFKZ9%?+8R:C:)=L0JP
M-.HD)/( 7.:2ZUC2[%W2[U*SMVC"EQ+.J%03@9R>,G@4 1WF@:-J-K!:WNDV
M-S;V^/)BFMT=8\<?*",#\*FO=*T_4K'[%?6-M<VG'[B:)73CI\I&.*S=,\8:
M)J]_J-I::A;.UA)Y<A\U<$A0S$<\@9P3TR#5^+6M*FN8;:+4[.2>:/S8HDG4
MM(F,[E&<D8YR.* $ET/2)["*QETJQDLX?]5;O;H8T^BD8%/O-(TW4;$6-[I]
MK<VBXQ!-"KH,=/E(QQ3K+4[#4TD>POK:[6-MCF"59 K>AP>#[4VWU?3;RZEM
M;;4;2>XB&9(HIE9T&<<@'(YH 6WTO3[.:2:VL;:&25561XXE4LJ@*H) Y
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
M9T326CCC;3+(I&<HIMTPOT&.* /-=9BN+3Q)\08-#C$-T^@0.D=N-I+@2C(
M_BQT[]*OZ*?"?B2Z\-ZC:Z]->7=M&RVUE&8 T:,F'21$0$( ,'/'3')&>_CT
MVQBNVNX[*V2Y;[TRQ*'/U;&:9;Z/IEI+/+;:=:0R7'^N>.!5,O\ O$#G\: /
M%Y+&PA^!VKWD=O;K/%JSF.8*-R;;T!<'M@'MZGUKNOM%O;?&Z<3RQQF70(5C
M#L!O;[0XP/4\BNL_L/2! 8/[+LO*+;C']G3:3ZXQUJ?[!9B:";[)!YL"E87\
ML;HU/4*<<#Z4 <A\3[B6TT329V!_LV/6+5M2]!;A\DM_L[MF:;J,#-\7M NM
M-(/F:;<C4BAX:$;?)W?\#+8^AKMY(TEC:.1%=&!5E89!![$56L]+T_3H7AL;
M&UM8G^\D$*HK?4 <T <E\-S&S>+2A4D>([L<=ON5#\4LP6WAC4W!%KI^OVL]
MU)VBB^92Y] "P_.NTM=,L+%V>TL;:W9OO-%$J$_7 JQ)&DL;1R(KHPPRL,@C
MT(H Y_Q==02^'3:1S1O/?O'#;(K F4LXY4=P!EB>P!-85W86-Q\<;;SK6"1C
MX?D<AT!RPG0 GU(&:Z^QT'1]+F:;3])L;25AAGM[=(V(]R *F?3+"2Z^U26-
ML]SC'G-$I?'3KC- 'C4-ZND^$8)3+);Z-:>,+A+IX%5A!#ODV'!!&T.4/0]J
MV/$5AX=N/#OC75=/U9M6N;G26:YD#Q/"K*A\L_(H DQG'?'X5Z9%I6G002P0
MV%K'#,,2QI"H5_\ > '/XTR+1M*@L38Q:;9QV9.[[.D"B//KMQB@#SJ_TS3?
M[7^&@^R6V)?,#_(/W@-L6.[^]DX//4UGZU:VJQ?%VV2"$0QV\$R1!1M1S:Y+
M =CD9S7JQT;2SY.=-LSY(Q%F!?D&<_+QQSZ5C^*?#2ZEX9U>QTBRL(K_ %"V
M> S./+^\,$LRJ2?7% ''ZAHNGH_PZO=$MX(]2:\A8RP* TEL8BTQ8CEAC&2>
M[>]4]8?4/[*^*_\ 9)<W@N(L>6?FV>3'OQCOMW5Z5H&C0:5IUN#865O?"%8Y
MWME'SD#GYMH)R>>15ZWTZQM)I)K:SMX99/OO'$JLWU('- '!^(_LNH/X O\
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
M$\81V_V+X?SA(O,_MNR"R8&<&-^ ?0\?I3K6YLK;XE>-X[RX$/G6-F5 8!V
MCEW%!U)'M7;OHVER1QQOIMFR1?ZM3 I"?08XJ5[&SDN?M+VL#3^68O-:,%MA
MZKGKCVH \^\+2ZGHOB'0M&U'[%JUC+8RKI&KVHVR+"H0E95Z8("?,.,@=S6E
M\372'3O#UQ*RI#!X@L9))&.%11)RQ/8<]:ZRTTK3M/D>2RL+6V=QAFAA5"W?
MG J:ZM;>]MGMKN"*X@D&'BE0.K#W!X- 'G+7>F7_ ,4_$$7GVL\<GA^-=NY6
M5RLDA(]#COZ5S]C:6=O\-_AM>100QW+:O8[IE4!VR6# MU/''X>U>OKI&FHI
M5-.M%4Q"$@0J 8QT3I]T9/'2F'1-),21'2[(QH2R)]G3"D]P,<4 >?Z5J5G)
M<?$6SUR6!-0^TRCR[A@"UGY0$.,]5^]^+'UK#T/6K>QL_A[)?:JUCI;:3);I
M=(8RD5UB/ARZLJG:& )P>3SR:]>N-'TR[N8[FYTZTFN(EVQRR0*S(/0$C(%.
METK3I]/%A-86LED  +=X5,8 Z?*1B@#R?Q%H_AZW\,*VFW;7]M/XEMI7N)&1
MHQ(\B^8(F0  >NWC.1V./6K+3K+3(GBL+.WM8W<R,D$80,QZL0.YP.:CDTC3
M);:&VDTZT>"$8BB:!2J?[HQ@?A5Q55$5$4*JC  & !0!Y=YU]H>J0RQO:ZWX
M:O==954C;=6%T\S X(X=0^[WP?2HH]3TK3;?XFKJ:F6/[7(TEK%)MEDC-N@.
MWN >>>U>E1Z1ID-X;R+3K1+HDL9E@4.2>IW8SS4IL+,SS3FT@,TR;)9/+&Z1
M?1CW'L: /,],O[;_ (6?X=8ZAI[+)H<L*1VK@H@W1E(]Q)+GZXSUP*R+74!;
M?!J=8923:ZM))J$4&&E2W%Z3)E2#QM[$8(SGC->OP:3IMJ8#;Z?:P_9PPA\N
M%5\L-][;@<9[XZU+%96D!F,-K#&9V+3%(P/,)ZEL=3]: .0T./P[J/B^+7--
M\02ZKJ#V)A?RI(2@AW CS B#!R>,\]?0X/B2P6+PMD@?\5'9=?\ >:NKL=+T
M_2XWCT^QMK1';<ZV\*QACZG &33KK3[*^V?;+.WN-ARGG1A]OTR.* /*?&FH
MZ=/:?$.WMY+>TG2W2.[^T/NENG$.4$:DX10,<@')STQDZFMW46EP^$O'%NWV
MB&V1;&^>#YR\$H"YXZ[90O'J37H#Z5ITL[SR6%J\SQ^2\C0J69.FTG'*^W2I
MA:VXMTMQ!$($V[8]@VKMP1@=!C Q]* /+]!M+^Q\0ZAX.O;<"'4YDUG"+\D4
M3'=/%Z8$BJF.XD)KTB/5].EU:;28[V!M0AC$LEL''F*AZ$CKCD?F/6K7E1F8
M3>6OFA=H?'..N,^G K/&BVW_  D)UHQPBY$)@5DB"L5)4G<W5ONC'H,^M &G
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 55U+4K/2-.GU"_N$@M8$+R2.> /\?;O5JLKQ.I?PGK*J"6-C. !
MW/EM0!RVJ^-);O3/"6JZ)?0);:EJ=K;W<0"R,JR*7*$_PL  #QGGM78Z=K&F
M:NDKZ;J%K>+$^R0V\RR!&]#@\&O++N\T[4/A[\-81/;W$:ZEIL,R;@P!$)#*
MWOZCWJ?78[@>)/B);:,-MY)H5NRQP\,S 2 X _BV\#OR* /2K76]*OKQ[2TU
M*TGN47<T44RLP&<9P#G&>*H>,/$\7A/06OV@-Q<22I;VMNIP9IG.%7/;U)]
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
MH))0<CKZ=ZH?$21/^%:^(VWKM.G38.>#E#BN:DCL[7Q/\,3;K#%O@N5R@ W
MVP/;KD\_6@#M=-O%$^KS3:]:WMO%/D(@119*%&4=@>>[9;!YJ[9:KI^I-*ME
M?6]RT6/,6&4,4SG&0.F<''TKS.T@TV>#XC6=S>_8+5]5C0W$.!Y)*1!6],!^
MOT-=#X1OM93Q/J>D:]%9W-]#:02+JEF"JW$):0('7HK@[S@<')H ZR]U*QTX
M(;V\@M@^=IFD"YQUQGTKE]:\1W%KXP\*);:E;_V+J2W3SD!2KK'"75O,[+T/
M&.G6F>*[:_E\2VESX?U>VM-=MK.0K9WJ[H+N L"P..5(95^8>HKFXKZTUO5O
MA=/+I\5G%*MX19N0RIMA(&W/5<@%3Z8H ]+M=:TJ^TY]1M-2M)[%,[KF.96C
M7'7+ X&*2VU2RU6*=-+U&UFEC&UC$XD\LD<;@#^/O7EEW?:7IMK\1!>6B7-E
M_;%MF 2&- [K%\[LO*J& )/?!%;'A_4K9_B_J>_5K6[DN-(@P\.U4=EDDR$
M)R /<D<\T 5_^$N\0-\%K/Q*+Z,:DTZK+)Y"D,K77E8 Z#"GT/2O420H))
MY)/:O$EFB_X9JM3YB8^TQC.X?\_X/\J]M(5T((#*1SGD$4 9?_"3Z#YEO'_;
M>G;[F0Q0+]J3,K@X*KSR<\8'>K-_JNG:6JM?WUM:A@2IFE5,@=3R>U>+S0V$
M?P-\07,<=NLBZO(5D4 $$7@VX/L.GL:[G3+S[/\ %WQ%!J;JHNK&U;3&D/#P
MH&\T*3_MMDCZ&@#>UWQ=H_A^SL+F[O(-E]<106Y$@P^]@"X/3:H.XGI@>XK:
MAFBN(4F@D26*10R.C!E8'H01U%>*B)M-\&V$LCB/2(_&T<UB['"1VGG_ "D'
MLF=Q!Z8(->Q37MN=)EO4)GMQ"TH\GDR*!GY<=<CI0!';ZYI-W>?8[?4[.:Y^
M;]S',K,=IPW /8]?2N0O/%9UKQ'K.B:7XDL],DT^WB:";=%()YFWE@P;.54(
M 0N",GGI7(V.L:6]W\.+JVO;*WLDFE$5G#+O^R(T#@)([$L7)XYQDY !QFNT
M\.31-\6/&R"1"WD:?P#SPDF?YC\Z *FB^(]1\63WG]F^(["WNM/U#R/LR+')
M'<PQA/,DQRX#%FVE6   '/)KM;+6]*U*XDM['4K2YFC4,\<,RNR@]"0#T]Z\
MM26XF^'OQ&_LPF:==<NV*0D%FCW1EP/JFZMFTN?#WB34+'5]#UZ;4]:ALIUM
M41H@8%:,_P"N5%7 W;0 W\6,=Z .Y&MZ4VH#3QJ5H;PD@6XF7>2.2-N<Y'I5
M#1/%^C^(-1U"RL+R"66RG,)"R F3"J691U*@MC/3(-<9X,U;PKK'A'PSI]X8
MY=9TZ:/%BSD7,=VF0\A3(;J68D\8))K5\"7=O'XD\96+SQB[;6GE$!;Y]GE1
M_-CKCWZ4 ;VM>+=(T#5--TZ_O(8KB_=E022!0BJC,78GH,KM]R:Q=/\ %AL_
M%_BJVUW6+.'3+'[']E>4I"J^:CL1N)^8G []J9XWN8+'QIX'N[N:."VCO+D/
M+*P5%)MV R3P,FJ%C'8W?C_XAO,D$N+*S&9 "0I@?<.>@Z9H ] GU&RM;1;N
M>[@BMF *RO( K9Z8/0YI;*^M-2M4NK&ZANK=_NRPR!U/T(XKQS2-872]'^'-
M[J.HRV6DMILML;Q A2&<A-N\LK ?*K*#CCGD#->B>#;318$U2XT.\EO8+N[:
M>:Y+JT4DQ WE"H"^F<#&>.H- $=_XBO+WQE_PBVBM%%-!;BYO[R5-X@4G"(J
MY&7;KD\ =CTJ[Y>OV6L:=&+N.^TV61UN7D@"S1_NV*G*X7:6 'W0<XY.>.3A
M=/"?QEU>\U1U@L/$-M!]ENY#B,31*%,18\!B.1GK]:[R34[=YQ:6LR373J2%
MC(;8,'#-CH,\>] "/K>E1WZV+ZE9K=LVP0-,H<MC.W&<YQSBDN]=TBPDFCN]
M4LK=X(_-E66=5,:9 W,">!D@9/K7E5M)#?\ P"OK"[S_ &U TL4T+']^+[SB
MR\==[,5(]<UOZ?;)_P +AMTOE@DOD\,1F8D DR^<0S?7KSZ&@#LCXFT%19DZ
MUIX%]_QZYN4_?\X^3GYN>.*DO-=TC3FE6]U2RMFA3S)5FG5"BY W$$\#) S[
MUXW-!8Q_ KQ3)%';J4U*X",H&5VW7R8/MGCZUV$EOIEQ\;\74-K(9/#J21B1
M5(=O/8$C/4[<\^F: .X_M?3?[-34?[0M?L+@%+GSE\MLG PV<')XJ-==TAM/
MDU :I9&RB8K)<>>NQ".H+9P"/0UY-ICV&@Z8L<D$*Z?<>+9FT:>>1EM[50IQ
M)P1N7(D"KD DYSWJM?7=E-X:^*<+7T%VYD$Z-\HWYA0;U [9X![^IZT >Q0:
M[I%S?364&J64MW"GF2P).I=%]2N<@<C\Z6VUO2;RTFN[75+*>VASYLT5PC)'
M_O,#@?C7#W4=G:^//AV+9((M]I>+^[ &Y?)0@<=>>:@N+.ZT7Q;J7A2UA<:9
MXG;[7#(@PMN>!=KGME,$>A:@#J]3O=7EUC0IM$N[.?3+AS]IC"%S)&0/WBR
MX  _,D#G-:L^M:7:W8M+C4;2*X+*@B>90Q9ONC!/4YX'>KJ(L:*B*%51@ #
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
M+&:LT4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
MW&O1OLMOC'D18ZXV"A[:"7R_,@C?RSE-R [3ZCTH X'Q-I\6G>%]&\2Z%8/
MWA[]]#;;2&>S(VRQX/(RGS8/(*CO74^&(I&TU]2N$9+G4Y3=R*PP45@!&A]U
MC" ^X/K4.M:3K.K:DEN-0M8M DB"W5OY!,\AW9*A\X"L,*>,XSZY'04 >?ZD
MNGS_ !MTV&Z%M(QT.=?+DVG),J\8/JN[\,UB?;]$M-=\6^'O%>I3::MW<%XH
MF(2.YM7B1%"':<D!2N <^G.:]8,,1D\PQ(7_ +VT9_.DDMX)I(Y)(8W>,Y1F
M4$J?8]J /,]*U73?"_CXVVL3-I]E)HMK%I+W[[0J)N\R,LW&_)7(SDX'M6 \
MD:_#34;L K;0>+FG=BI41QB[7)([ #\J]JF@CF"EX8Y&0[H]XZ-V.<<?6N>\
M(>'[S1-/U*UU$VLRW=_/=CRB6&)6+%2& Z=,]_:@#F)]6MM2^*]T=(OX)9IO
M##Q6LL<@*O+YS$!6Z-CVST/H:SO"M[X8U[1/#>GWE_>OK6F30[=++;)8+B+Y
M68J%!V#YB23C'7FO6HX(8L>7$B84(-J@84=!].:%MX4G:=88Q,XPT@4!B/<T
M >76ES=:/J]BVF7]MK/A^^UEXS8S "ZL+AI'+LC _,JMO)!Y ]LFDL;C2&M?
MB+I.KWQMA-JDKRB-@)8X6CB EQV4'OTXKU!;6W2<SI!$LQ&#($ 8CTS3S%&6
M9C&N6QN..N.F: .'\(WNL1>*;K1]7GLM6,=C'-!K%JNUI(MY"I*H) ;)8C'!
M&:7XH7,%O8>'O.FCC_XG]DWSL!P),D_0"NU@MH+92L$,<2DY(C4*"?7BG/#%
M*09(T?'3<H- '"PWPL/C!?G4Y4CM[[2X1ILTC (0C,9$4]-V6#8] #7%:E;0
MVO@G4VG:)=)NO%J2V"N0$,!F3<4S_ 2'(QQCGH:]MEM;>>(130121CD(Z @?
M@:<\,4@ >-& Z J#B@!MO!;PHQMHHHTD;S#Y:@!B?XN.IZ<UYI'<68\2_%,&
M:#;]EMRP+#'%LP/Z\5Z> %    '  J/[-!DGR8\MU^4<T >1)+86_@[X4M')
M;QL+ZUR590>8'#_FV,^]='9W4;_&#Q'#;W,/VDZ1;J@+#APTG;VR/SKNOLUN
M0!Y$6!T^04H@A#[Q%&'SG=M&<T >.0RP7WP%GT6;_D.P[K=[1C^_%[YV5XZ[
MBQ#9]#FM^*&TF^,EO:ZD;6XN1X86.57VMN?SOFX/<@G\#7H?V:#[1]H\F/S\
M;?,V#=CTSUIWDQ>9YGE)O_O;1G\Z //-';31\1OB!O:U 6VLU;)7A?)8,/IT
MS^%<M:S64/P=\!2"2W1EU>R8MN (82G<?J!U]J]K^SP9)\F/+=3M'-)]FM\
M>1%@<XV"@#QKQMJ^G7>D?$"S@E@L+A"!+;?>N+UA&F)<'.(\8 VC^')(S71C
M5K!/BGH-Z]W$+>[T"2*WE+<3/YT9VH?XB>P'6O0S;PDL3#&2R[&)4<KZ'VIQ
MC0E"44E/NG'W?IZ4 >-:DMS>Z)\5+;16$MVUXA$<)RS)Y<?F  >JAQ]>*Z'7
M[FR\1W?@6[\/3123IJ*7"F$C,5IY;><&Q]T8VJ0>Y KT-(8HV+)&BD]2J@4V
M*V@@9VA@CC:0Y<H@!8^IQUH \>+:<W@?XK.&MB[:A>#=E<G]TFW_ ,>SCWS7
MJF@3)-X:TV82*Z-:1'>#D'Y!WJ[]FMP"/(BP>HV"GJB*FQ54+_= XH \G\.6
MD>H> /&G]D1P2ZI_:&I_9WB ,BNVX+M/4$@X'UJWX;U#PGXGD\.3P:A=W.K6
M&##8[]KVAV[9 ZA1A0!CG@\ 9)%>F)#'%GRXT3/7:H&:1+>"*222.&-)).79
M5 +?4]Z /($U;3+3PCX\EN[>&_M_^$F?=&9"$7+0A9'*\A%89..NW%7]-U"W
MN?B7KBIJL6H2W>@Q^5)"%"2L&DR(]O51ZY;'0FO3Q;0!640QA6&&&T8(]Z<L
M4:$%8T4A=H(&,#T^E 'BUIK=O;?#?P'?BZD;3=,GC75'M?F:V)B=%9N#C:S
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@!HC1?NHHY)X'<]:=BBB@!K(KJ5=0RG
MJ",BG8%%% !BN;\6:!>Z])HQM);>)=/U&*_;S<GS-FX;..F=W7]*Z2B@!L:*
MB!514']U1P*=@8QCBBB@"I?07+:7<0:;-%:W31L()6CW+&V."5XR,]JIZ#I5
MUI\,LVI7JWNI7)5KB=(O+7Y1A55<G"CGOU+'OBM>B@ Q1@444 -*(S*S*I*_
M=)'2G444 )@$8QQ2T44 -"*'+A1N(P6QR1041F5F12R_=)'(IU% !1BBB@#F
MM8\/WFH^,-#UB.2V%MIB3HT,F2THE4*>V!C;[Y]JZ0*%4*H  X ':EHH :J(
M@(154$Y( QS3L444 -\M-X?8N\# ;'-+M4YX'/!XZTM% !@9S1110 U8T3.Q
M%7<<G QDT[ HHH *;L0.7VKO(P6QSBG44 &*PO$>CZEJ4FGW.E:E%:7%E*TH
MCN(/-AFRI7#J"#P"<$'C-;M% &#IFBWHOX]1U>6PDNXD9(ELK8Q*H;&22S,S
M'CV'L>M;I (P0,&EHH 145%"HH51T & *7%%% !BJ&LP:E<:5/'H]Y#9W[;?
M+GFA\Q5P1G*Y&<C(_&K]% &=HVF/IEDR3W'VF[FD,US<;-GF2' R%[  !0.<
M!1R>M: 4+G  R<G'>EHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHJ*XN(K6W>>=]D2#+-C.!ZT 2T5SL?CSPG+ 9T\0Z<8
M%;:TOGC8#Z%N@ZUO0SQ7,"3P2I+%(H9)$8,K ]"".HH DHHI P894@\XXH 6
MBBB@ HI"P! ) ).!GO5"TUS2[_4[S3;2^@FO;+ N(4;+1YZ9H T**** "BBL
M:]\6^']-U :?>ZM:V]X1D02OM=AZ@=2.#^5 &S16?I6O:1KB2-I6I6EZ(CB3
MR)5<H?1@.GXUH4 %%%% !1110 4444 %%%% !16=#K^DSZS)H\6H6[:E$I9[
M4/\ O%48YV]<<CGWK1H **P?^$T\-_:)H5UFU9H3B5T;<D9]&<?*OXFM>SO;
M74+9;FSN([B!BRK)$P9202#@CKR"/PH GHHHH ***SUUS2WUQ]%6^@.II%YS
M6H;YPGKC\1^= &A15#5=:TS0K87.JWL-G 6VB69MJY],U<BE2:))8G#QNH96
M4Y!!Y!H ?1110 445%/<P6MO-//,D<4"%Y79L!% R2?08YH EHJIIFJ6.M:=
M#J&FW4=U:3 F.6,Y5L'!_4$5;H **** "BL=_%>@QZLFEOJML+QY?($>[_EI
MC.S/3=C^'.>:V* "BBF32I!$TLAPBC)."<?E0 ^BN=C\>>$YH7FC\0Z>T*'#
MR"<;5/N>@K=M[F"\MX[BVFCF@D&Y)(V#*P]01P: ):*BN;F&SMI;FXD$<,2E
MW=NB@=2?:H-,U6PUFQ6]TR\AN[5R0LL+AE)!P>10!<HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "F2_ZE_]TT^H;H3M:RK;",S%<+YA(7/O@&@#YD\#
M^+;+PW\&/$%K?6%S.-1NYK:%UC!B\QH4 #,3QCKT[<5Z-I-[=?"/X(PW-\\5
M]=[MUO'')NB!E.54,.J@98XZ\X]:M^$OA-_9'@K5O"NM7%M?65_*9A+$I5XW
MVJ 0#W&T$'/X4RW^%FJ7'PWN?!FL:U#<P(PDL+I(V#P$'(4@GYEZ]^ 2/3 !
M9;QGKHDUW3T>"5[?2#?VNII9N(A(H^>,@M@GN.>G4''/.>%O&^I^%O@?'XFO
MYX;^2>:5;:)XV5S,\\FYI)-QW#JW"KTQ[UZ!H^@^(I/#LVE>)=6M+@-9M9JU
MG"RE@R[?,<L>6QV  Z]>,<W!\)[J;X7/X+U'58'6&0R6=Q# 04;>SY<$\YW$
M8&,#UH NQ>--8CO-=L&6"Y^QZ6;^UU!;21(6=1\\3 MSSR,$''TKE[;XJ^*?
M[ \*>(+J#2OLFK7[6<UO%%('P'*[@Q8X/!XP>F<\X'>6.A^*I?"MWIFMZK87
M%P]D]I$T$3*IW+M\R0DDLV.P '7U&.2;X1ZL?!WAS01JEEG1KY[OSBC_ +W+
M%@N.W4COVH ?K.H^(+CX^Z;I%OJ5O%;PV#W$$<ELSHNX,&W .I9OEX.1C/3K
MENC^+XM*\8?$.YO-+TY!I48E>XM(#'-<XS@.2Q&>@XQSS72ZIX(O[GXE6'B^
MQU"WA>*T-K/#+$7X^;YD((Y^;OZ=^E4;+X:S'Q!XMO-2NH);+Q%$8GBB#!X1
MS@@G@GG\Z ,VU^)>KVEIX0U75H[-[+Q%,T3PPQLK6N6 0ABQW#!YR![>E)?^
M/?%1\5^,=%LO[)2+0[)KR*:2"0LP"*^TC?@GG&>,=<'I5NT^&%Y+%X6L-5OK
M:33_  Y*TL1A5@]T=P*;@>$ P,X+9]JED^'>J-XI\7:PM]9[=>L7LUC*MF'*
MJH8GOP,XX^M '2> /$<_BWP/IFN7,4<4]RC^8D>=NY79"1GL=N?QKSCX@RR0
M?M >#I8;=[B1;7*Q(RAG^:7@%B!^9KT;P#X:N?"'@VRT&YN(KA[4R8EB! 8,
M[/T/0_,1^%87B3P)J^L_$;2?%=M>6,(TR,1QV\JNWF#+$DD8Q][WZ4 <EX)N
M+>/XT>*=5U>3^Q]2:%_^)01DM&%1C(7'RL<+NP,_>)[5=_X6QJZ^#8O&SVUK
M_94FJ?9/L(C/F"#GY_,W8WY'3&/YUT>G?#=I/'EWXPU^_BN[V6(PQ6UO$4BB
M0IL/))+';D=NI]L9'_"HKAO#$7A%]1A.@QZE]M\T!OM#1\_NL?=SD_?S_P !
MH O:GXS\0GXI6_A/2CI8M;NP^UQW$\,C-'PW4!P&^[TXZ]>*S-)^)VMZA\'-
M5\5&"Q75--N#"RF-C%)@IS@,".']>U=#<>";]OBC;>+H+BT6"VLOLB6K!@2,
M-@[NW+=,=!65H/PLNM-^&VN>$;O4H)/[1E::.YBC(V,0O!4]@4'?N: &+\1=
M;_MKP%:M#8&#Q%:)-<@1/NC8J"=AWXQSW!IUK\1[V]\?:CX<:>SL+JVU!((+
M.Z@8&YM]RAW63<!O*Y91CD8QD](K/X9:^NI^$+Z\U;3G_P"$>C$*PQ0NH=!@
M9W$D[B!Z >U:7B'X=W7B;5;*XU"6QS::C]JBOHU9;E8 Y80>C#D88GC'0]2
M=MK%W=6&C7MW96;7MU#"SQ6RG!E8#A<^]><:5\1M7;QWX?T._%G*NJVA>XBC
MC*264X5F,9.]@<;<$'D9[=*] \1Z9<ZSX<U#3;.]:RN+F!HX[A1S&2.O%>>Z
M5\*M8T_6/">HOK=B[:'$T!C6T*JR'/3#<L=S9)QS@XZY *]Y\0O%C:KXWL;0
M:0D?AZ$SQRO;R%I% )VD;\9('7MCH<\6[_XHWZ^!?"M_:6MLNL^(9DMXQ("8
MHFW;6?&<D9(P,]^O',S?#;5#J?C2\%_9X\26[0*NUOW&>,G^]P3Z<U%=?"F\
MG\">'])34K>/5]!N//M+K83&_P V[#+U';IG[OO0!FZ.E['^TE=IJ$T,\ZZ/
MCS88S&&'R8.TDX/XG^E;/QUUR]T3X<2"Q=XWO;E+621#@JA5F;GWVX^A-7-,
M\#ZU%\3'\8ZAJ=BS26@MGMH(&P!@?=);U Y.<\\#MT_B?PW8>+?#]SHVI*QM
MYP/F0X9&'(93Z@T 5? NF6>E>!-%M+.-%A-G$[%1]]F4%F/J2237/Z[K:>"+
MWP[X1T""&.;5[V0JTB;DMHVD+N0H(SRY"C.!BK_AS1/%OAS1H-%6^TJ^M;5?
M*M[N9)$D6,?=#1CAL#CAAP*3Q%X&GU:\\/ZM%?B35]%N#*LMPN$N%8@LC;?N
MCC@@''O0!CP?$34C9^-[*1+0ZMX:226.7RV\JXC )&4W9!^7!P>X(]*Q[/XG
M^)_+\#ZA>PZ6;/Q#<M;2P0Q.'C_>!-X8L?[V<8[=3GCH8/AQ<)8>,)Y+J ZM
MXE5XW8!O*MT8$!1W; 8G.!G X%99^%>K?V1X-LAJ5EGPW<M<;BK?O\R!P/\
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
M'!QR >C Y (Z&BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBH;KS_ ++*;9XTF"Y1I$+*#[@$
M$_G0!-17EEM\1?$,/PXL_'-[:Z;/8._^DVENCQRQIYIBW*[.P8YP<$#KUKT@
MZG8K LTEW#$C1K*/,<+A3T)STY(% %NBJ\U_9VTT4,]W!%++Q&CR!6?Z ]:<
M]Y:QSK ]S"LS8Q&S@,<].* )J*H:A<M)87L6GWUK#?)$VQY2&6)L<%U!SC-2
MI=);:9%<7UW;@"-3)/N"1DX&2,G@$].: +5%<KX2U^]UG5/$5O=S6LT5A>+#
M;R6R%5:,QJX/WCD_-US716M]:7H<VEU!<!#M<Q2!]I]#CI0!8HKD?%?BB;2[
M_1+?3;RQ<W.K065Y"1OD1'SDC#?*?EQR#UKIKZ^M=,L9KV]G2"V@0O)+(<!0
M* +%%<7JWB^X,7A.^TF6V:RU>_@MYD=-TBK(A? (; ( P00>M==;W=M=HSVU
MQ%,JL58QN& (Z@X[T 3455@U*QNA*;>]MIA%_K#'*K;/K@\55T+Q!IWB.Q-Y
MIMPDT(DDC!5@<['9-WT)4D'N* -2BL?4M8,6L6>BV>UK^Z1YB6&1#"F SD=^
M650.Y/L:E']H-K-W&+^T%L;=/(@$>98WR<NW/*GCCCI0!IT5DZ'K0U5+N"5%
MBO["<V]U"#D*V 0P_P!EE(8?7'4&M!KRU2<0/<PK,<8C+@,<^W6@":BHDN8)
M)7B2:-I$^^@8$K]1VJ.#4;&ZCEDM[RWE2+_6-'*K!/J0>* +-%5S?V8B64W<
M C<X5_,&&/H#4TDB11M)(ZHBC)9C@#\: '45 ;ZT"QL;J#;*<1GS!A_IZTDV
MH65M.L$]W;Q3.,K&\@5B/4 F@"Q15>YOK.R,8NKJ" R':GFR!=Q]!GK5B@ H
MJ 7UH9EA%U!YK,4">8-Q8#)&/4#DBDCOK.:ZDM8KJ![B/EXED!=?J.HH L45
M7&H637ALQ=VYN@,F 2#>!_NYS1)J%E#=+;2W=NEPP!6)I '.>!@9S0!8HJO<
M7UG9O&ES=P0-(<1B60*7/H,]:EDFBB9%DE1&<X0,P!8XS@>O - #Z*A@N[:Z
MA,UO<131 D%XW#+D=>156348KO3KJ72KVTFEB0X<$2HK 9^8*P_F* -"BN:\
M%>(SKOA71[R_N+9=2O;83-"C!2>3RJYSCBFV6MZC+\1M3T.=K=K*"PBNH=D9
M5P7=E(8DG/W>V* .GHJNM]9O>-9K=0-=*,M") 7 ]2O6K% !15:'4;&YCED@
MO;>5(CB1HY58)]2#Q7&V/BO4-9A;6;'4-,ATZVOI8KBUG'S-;(Y0N&!R')&0
M,8Y ]R =W17&^&=;UG7[?2]=2\TT:5=0-+=VA!$EL""4VL"<GH&W8[D8Z5U=
MM>6M[#YUI<PSQ9QOB<,,_44 3T5EZCXCT?2M.N+Z[U&V6""$S.1*I)4'&0,\
MY/ ]3Q4T6L6#Z;#?O=V\4$H7#O*H )&=N<XS0!>HIL<B31B2-U=#T93D&LS3
M_$>F:IJE_I]G=1RSV+B.4*X/SD9('KCC/H>.U &K15>*^LY[F2VBNH))X_\
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
M_C2^B>35M#2.:Z++F1[5QLD![[@A#<]P:],NM"TB^O!>7>F6<]R %$LL"LV
M<@9(Z \U<F@BN8)()XTDAD4H\;C*LI&"".X(H X+Q):6]]\,?%6K7%O&SZA9
MS72;T&518R(>O0A0K>S,:J07ZIXV\$6>H,JV#Z(9+/?]Q[O"#Z%@F<?[QQUK
MT2ZL;2^M6M;NU@N+=A@PRQAT(^AXJM=>']&O=.CTZZTFQFLHB#';R6ZF-".F
M%Q@?A0!Y)?74.EV/Q -B52U37+9[M;< D0'RO.(7N/O \=SFMS5XK"&/4_$G
MAS77OM:.B3)%':&(HT:C<KLJ*.5)&W/T]:]"M=%TJQ$PM--LX!. LHB@5=X
MP <#D8&,>E)I>AZ3HB2II6F6=BLIW2"V@6/<?? YH \RU1]%E\)_#:[LFMBH
MU>R\N4$;AE3YF3USN^][]>:[_P :1I-X%UX,BN/[.N" 1GGRVP:DC\)>&XI6
MDCT#3$=I!,S+:("7&<-TZ\GGWK89%="C*&4C!4C((]* /)K^.PN?!_PU@C$#
MQOJ-B)DC(P2;9LAL=R,9S2WATG0=:^)$<UN\.E#3+1YH+$",G<DBG;C@$\<_
MG7HH\,Z"L$$ T331#;L7AC^R)MC8\DJ,<'Z5+_8>D>?<3_V58^=<J4GD^SIN
ME4\$,<98>QH \]TV2%/BGI,<TVG!)?#[Q""W;<JKYD>Q"Q/S\'@X&<\"M7X1
M_94\#P)'Y(N!<W7F*N-^!<28SWKJK7P_HMBULUII%A UJ&$!BMT4Q!OO;<#C
M/?'6K%IIMAI[SO965M;/</YDS0Q*AD;^\V!R?<T <=9;Q\<=4\[/.AP^1G^Y
MYK;L?\"I='@A@^,OB/R8T0R:9:N^T ;FWR9)]3TKH]2T<SZK9:Q:%$U"T5XO
MFX6:)\;HV(Z<JK ]B/0FK/\ 9=C!=RZC;Z;9C474@S^4JN_L7 SC\Z .2\.A
M_P#A;WC0QY\C[/8^9Z>9L;'X[?Z4_P"(-H=-?3?&EK 'NM$EW7 5<M):.-LH
M^J@[AZ8/K72:+HZ:4MW,[B6]OIS<74P&-SD  #T55"J!Z#U)JCKUIK^J7O\
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
M/+J MM)2*..\N8=C+!.;8"+?N# <[NHXZ\8H ]9M+VTU"W%Q974-S QP)(9
MZG\1Q6;J6L,FM66AV97[==1O.[$9$$"D OCN2S*H'J2><8.;X1L-&MM4UN[T
M?59M1-[+'+=2"2-H1+M(^7RU"AB,%OJI[UGV8D7XXZGYV?GT*$P9_N"4[L?\
M"- &[%XHT[4-9U'0]/U"V_M&S1,EB''F,&.W:""Q4+D@'C-4/ GBH:YX3T:Y
MU6^M%U6_B:3R0ZHSX=A\J9R0 /TK/T":U@^*GC2*62&.61;$Q*Q 9OW+9VCO
MWSBN)TRSLX/A%X&OXX(4NO[8M#YX4;\_:"#\W7IQ]* /:+O5=.T^2..]O[6V
M>4XC6:94+GV!/-6F.U2<$X&<#O7E37.DWVO>--"\3ZZVFO/-_JY6A19;0Q*$
M*-(A/'S=#P3GJ37HVA016V@:?!;R7,D$=O&D;W/^M90H +\#G&,\4 <E!\1[
M>3P]IFJR1W$:75]]DN3]BD)MGQG9MZDYPF[IG)Q_#3?%NO>+?#>BOJIGTG#W
MZV\5LUG(Q6-Y=J$N)1EMN">!SQ7?UP'QA95\$PEF ']I6G4_]-10!TMK-J^G
MW-P^MWVFOIRPATN(H3;^6P)W!]TC#&,$'CO5TZOI@2=SJ-H$MV"S-YZXB)Z!
MN>"?>N:^*T,4OPPU_P V-'V6Q=-P!VL",$>AK.UNW\/Z*/#(ATZTAO+V]B:&
MX)\N(2)$V'E(P9" 3@$\DCD=: .X75-/>P:_2_M6LUSFX$RF,8Z_-G%.AU&Q
MN+N6TAO+>2YB :2%)5+H#T)4'(KQ+4I;.X\#?$Z%[FTNI%OS<(4"X)*19=5R
M<<G&<_C79W=E9:=\3O!?V*"&W,]C>K(8E"F0!8V&['7DD\^] '<1ZKITMX;.
M._M7N@2#"LREP1U&W.>QK(EUV'0=,UG5-:UJSGM+:X<IY2A3"NT$0GD[G_(G
M<.*X_09;[1-2\.6DYM=;T"\GD_LG4(QMN;=FC=MLB]&&W<"1Z9/.!6;+!#'\
M//BG#!$BHFIW95$4 +^ZCZ =.] 'I$NI?VC;Z3=:;K%E;PRW"&4/MD\]2#F)
M3D8;)'(STZ5HWFJ:?I[(M[?VMLTGW!-,J%OID\UY_P")7L+B/X?W-LUO(RZS
M;1B6/:2 87)&1^''TJYX:DAN_%'CNPUQ8VG-PN4GQAK(Q@)C/\'W\]LD]S0!
MW,UW;6[Q)-<11M*<1AW +G&<#/7CFFV=_9ZC"9K&[@NH@Q4O!('4$=1D'K7C
M.DV!FTCX8IJ\2S2->W$:&=<L]OLE,:MGJNW9QTQBNU\'Q0VOQ#\=6MM&D4*S
M63B*, *K-!R<#IG% %GQIK^L:)J/A^WTR2R5-4OULG-Q;M(4R"=PPZYZ=*-(
M\4ZBOCV[\(ZQ%;27"V8OK:[M49%DCW;2&1F8JP/N0?:LWXFJ'U;P1&96B+Z[
M& RD!A\K<C/U%:&L^&4TG1/$NKZ5]IN/$-UI\J+=RR%Y3A#M5.RC." H'.*
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
MW\N98I0YC?\ NM@\'V-5/$>J2Z1H5S=VT7GW>!':P_\ /69CMC7\6(SZ#)H
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
M?V<XET.6(212JP9O-1@N0>3C)Q5GXJ?9CHVB+=>5L;7+($28P1YGS=>V,YH
MZS3=<TG6'N$TS4K2\:W;9,+>97\L^AP>.A_(TD6O:1/?+91:E:/=,6"Q+*"S
M%?O >I'?'3O7 :X)F^(?B6VT9T74)?"@$"Q, QE#R!<8[@$8_"J=_-:ZW\*/
M"UOHSH-6BGLDM8D.)()XV429'4;5$F[V!H [[3_%^D:EXFU#0K>ZB:ZL@@8;
MQEW8,651WVA021Z^U:=[JNGZ:\*7U];6S3N$B6:4*9&/90>IKCO#]Y;6_P 6
M/&5I-.B7%S]A:&)CAI%$!R5'<#')[4GQ/^R$>$UNC#M;Q#:Y$A&"N'SU[>M
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
M@ ;^ON #G&17-6VJQZ5X8^&FI7=W-;Z-':-!<W4(#""9HE6,MD$#HZYQQN-
M'J\6NZ3/IC:E%J5HUDC;6N!,NQ6SC!.>#GC'7-.MM9TR\MKBXM[^VDAMB1.X
MD&(B!D[_ .[QSS7FVI77A73=.EU.P?\ M&'4-:M6?4)YC]ECN021,2FT$)@9
MQ@$D GKBI!=:/>:W\0K74-<S;W<5B3>0E5(&S:95QQL4E>>>,9)[@'JMGJ^G
M:@\R6=[!,\(5I41P6C#9VEAU .#C/7%,LM=TG4KI[6RU*UN+A$#M''*&;;TW
M8[CWZ5YAJMSXF.C>*M%NA;:KJ$>E131:G8+M:Y@WM^[D09 <KYA '!!-;VA7
M_A3Q/K^C:MIVKW.I:E;PR>6@=0;:-EPPE55&!G  /?&.] '=7=[:V%N;B\N(
MH(00-\C!1DG '/<G@"LG4/%^AZ?X>O-;:_AEM+3<LAB<,=X_Y9X_O>U9GC_4
M['38=#-[#!F35(A!=7+,L-I(%8B1\$9P,@ D D\D8K@YKN"XT?XK6\-\+R5X
MA.K  &1/LZY<!0!M]#W'<]: /0KCX@:#;-HR27]MOU1L+MG4K$ A9BS=  1M
M[9)^M;%UXAT:RG$-UJEI#)\N0\H&-WW<^F>V>O:N#UC6--:\^'>IB_M_L$=R
MZ/=>8/*5C;, "W3KQ]>*PO&FL:;>:)X_MK:6&PG5E$MNV6N+UQ&F)-K9VQ[<
M ;1_"22* /7[_5;#2T5[^\AMPV2OF. 3CK@=\=_2N8\0^(9[7Q'X2>RU2$:1
MJ$THN"H1DD186<-O[#@'CTK%M_%&F:5\1);G6;Z&+3M2TB :;>S.!"0C-YB!
MSQDE@?< >U1:G%H4.J?#RUTZVBM]+%_<-;PR="OEN0X#<X+$$?44 >B:;K6E
MZQ9O>:;J-K=VR,5>6&4.JD=02.E-L=<TK4[B2WL=1MKB:)0SQQ2AF"GHV/0^
MO2O*M:DF,GQ0CTP&5TGL9GA@(+/&$0S8'?*A@?7FM:2[T/Q&)=9\,:Q<ZKX@
MBTJX2U,;KF ,AVB0*HP=^W /.>G0T :WC3Q:+)M(AT?6;9;B35[>UN(4V.SH
MT@5U&<X(Z''(SVKN"0H))  Y)/:O%KS7M!N?AEX)CAO+59K/4=.$\+.!) Z,
M!*64\C!W9)]?>O4_$UW;6WA+5KNXMFO+5+*5Y((VP94V'*@CID=Z )[+7M)U
M*X-O9:E:W$VSS D<H)*9QN'JN>XXI8M<TJ>]6SBU"V>Y9F58ED!9BN=P [XP
M<XZ=Z\PTW5["7QSX%FCU2SDB?3KB&.*V(\J#*1;(@W+,W8Y.> <+FK7ANXN]
M(U+PY:VM[;:[X;OI9/[/=AB[L#Y;DAL'#* 64D\C./3(!ZI1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %->-)4*2(KJ>H89%.J*X1Y+=TCF>%R.)$ )7\P1^E #
MDBCC38D:*G]U5 %-M[:"UC\NW@CACSG;&@49]<"N"\$:AK7B7X?6?B"_\23V
MUQ,LQ<I;P>6FR1U!P4SC"@GFNLBUJTLI-/TS5-0MDU>XB4"+=@S.!\Q0=QG/
M3I0!JA55F8* 6ZD#K44EI;2SQSR6\3S1_<D9 67Z'M7'>/O$<D/P\U?5O#VJ
MB.XLR%\V%5?#!PK*=P/(R?<$5TEIXBT:_P!2N=.M-3M9KRV7=-"D@+(,X)^@
M/!]#0!?:W@>02-#&SCHQ4$_G2);P1$F.&-"1@E5 S7GWBG6[NR^'?B'5]$\4
MF\F@O"8YXDB98070&$'!!"ANO7GK786/B?0M3U*XTZQU:SN+RVR988Y067'!
MX]CP?2@#1M[:"UC,=O!'"A.2L:!1GUP*>\<<H D17 (8!AG!'0UR4GBO3=!\
M.:YKDVO#5[6"ZD*^4%/E-M!%NI0<X]3Z\]*Z73[^#4K&*ZMY%DC<=5.1GN*
M)#:6Q9F-O$2WWCL'/UI/L5J5"_9H<#D#RQ7%:7?:WJ?C_P 4:(VN7$5IIB6K
M6^R"'=^]0L=Q*'(!''2KW@OQ)?ZOJ'B#2=1,,TVCW8MQ>0(52<$9&1DX<=&
M.* .G:RM&N%N&M83,GW9#&-R_0]:E=$D0HZJRGJ&&0:PM>\7:;X?U/2]/NY
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
M;8V#';B/YN.W!Y]C7K.BZA::GH]M=64Z3V[1J%EC.5;@=#WJ\% Z ?E0
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
M/OO$]M<R37,I*7+%U\V1=W\/8D<<'M7L#HDJ%)$5U/56&0:78N -HP.@QTH
MX'QS-86OB'P3B2WBWZQYO!5<@Q."WXDCGW%0>'=0M--UGQOIOB6:&&:>_>Z'
MVE@!/9O&JIMS]X *5('0\5Z*5!Z@?E37BCD96>-69#E21D@^U 'B_AZ2\\)R
M?#^7Q0[V^GI87,"RW'"VTSMF,2$_=/E809Z<CUKJ_ ]_8W?CWQQ]CN(I%DN;
M:5#&00Z^0H+#U&>_O7?/&DJ%)$5U/56&0:545<[5 SR<#K0!PUU')#\<M.GE
MSY%QH,T,)/3S%F5F ]]I%9PU_3- ^('BNP\52I;0ZFD#V<MPI\NX@$6QHP?9
MBWR]]QKN]4TF/4C:S!_)O+.7S;:<#)1L$$$=U8$@CN#V(!%WRUD"&5$9UY'&
M<'VH \X@G@T/XCZ+//;_ -G:%/H9L]/$PV)#*) Q0Y^ZS(%X//RXZBL;5HA;
M^$OB??Q2HND7TI-F=V$DD\H"5D]=S\9'4J:]ADC25"DB*ZGJK#(-+M7:!@8'
M08H \WUK4++_ (2/X;/]K@VF25@?,&"#;%0?SX^M8\%]H!G\3>&?&%W>074^
MI3R"TW.!>0R/NB,84?,<87 Y^45[!M7^Z/RI&BC:19&12Z_=8CD?0T >86>M
MZ9X8\;Z_I_B9OL5KJ%I:_87NR662%(MCQ;N<D,6X[[B>]3:C/INC^,/ ,RP?
MV;IBVU[# DBE=N4CV+@\AF X4\YXZUZ2\<<A4NBL5.5W#.#ZBE(!QD XY% '
M">&;BUE^*WCB))HG9H[$% P).(V#<>V0#5/PI8W5CK=WX,DA?^S=(O/M]O*1
M\K0.2\,?U63>?^V0KT?: <@#-&!DG R>,T >2?VCH=OK7BOP]XPO;JTDO;UY
M8HB[A+RWD550)M'S, -N!SP,>VKOL[+XG>$+)&^SB+19XD@FE!D3_5[5;)R6
MP#]<&O16BC=U=D5F3[I(R1]*4J"<X&?7% 'FM[I]YI?C.^\.VL#G2?%/^E%T
M^[;LN!=#VWIC!_O-7;MX@TB'Q#%X=-Y&FJ/!Y\=MM()C!(R#C'8\9SQ5/0='
MU:WN6O\ 7]3@O[X(883!;^2D<9;)XR<LQ"Y/^R/<G4ETZ*?4X+Z4EGMP?*7
MPK$$%L]2<$CTY/K0!R?Q*NI=,M=!U9XY)--L-6BGOQ&I;9%M8!R!U"L5/U J
M/4=5\-ZGX?\ %6KZ.UO+YVFNEUJ,?"2$1L$3<>&(![=,@=Z[P@$$$9![4U(T
MCC"(BJ@Z*!@"@#RJRUW3;73?AW%-+:VKR:5MCU68Y$!$,8>).=OF-P/FSC;T
M).*PHKJ ?#6^/FNZZ?XJ$]RSH0T<?VL'<XP,<<D8&/05[D40XRJG!R..AH*(
M592JE6ZC'!H \QN=:T:_^*%].MTMS8R>%G4R0-D2@3,6"-T8XSR#U!]#5?2Y
M-9M)DT.PU6UU^RN=(N?[*U"/"W%H J[5D*\%2=@#<$E?:O5ECC7[J*. O [#
MM]*1(HXRQ2-5+'+%1C)]Z /*/"M_X5\0:?X;L9IKZ37-,DAQIK.ZO:S1@*S%
M>,(!D\\$<=>*DTNZGTG6=*_LC4K?6=!OM3=!83 ?:M.E8N796'55)?(;H#[Y
MKU011K(TBHH=OO,!R?J:00Q+(9%C0.1@L%&2/3- '$?%Z.1_A[=2*"8X+FWF
MF [QK*I;\NOX4GQ9N+>'P= 9I8TSJ-H5W,!G$R$X^@R:[:ZMH+VTFM;F)98)
MD,<D;C(92,$'\*KZ98O86,=G).;B.$;(G<?/L'0,>Y'3/?ZT <C\3U:[TC0(
M;8[II]<L_(*G/(8MD?1036_XTC>7P)X@CC4N[:;<!549)/EMP*MRZ4ESK,&H
M73!_L@86L0'$;,,,Y]6QD#T!/K6C0!Y%J&K:3?:#\--MY:RQIJ%J'RPV@K;L
M#U]&(!]#QUJ6_OK%/$'Q30W5NN_28.#(.6$$JG\>5'XBO5MB@ !1@=!BEVK_
M '1^5 'DVI*B?";PAJ6GPI+:6<NFSZE]G4,6MX\,X..3AL,1[$^M;UV8=8^*
M7AK4M%N(KB*VLKK[?- X93$X7RE8CCE\L![$UW8  P!Q38XHX5VQ1JBYSA1@
M9H \*&KZ?!\&K729+J,:A9ZLHN;;J\&+XG+C^$8(Y/7-=1K.O:;X?^(FJ3R:
MIIR?VCI4 9-1F:) 07"&-@K!E()W#C&1R<D#TWR8MS-Y:98AB=HY(Z&N6N=!
M\0Q:[?7MAJ.FSVMZR,T&HVC.T&U0N$96&5ZG!'4GGDT <7J$>C:;X-^'FFP:
MQ9ZE:P:U;*;@2*4DP)-QZG@$X]N!72:%=6S?&'Q5%%/$7>RLR55QEF7S ?Q
M(_,5U6CZ1'I=O*I\IYKB4S3O'$(T9R ORJ,[1A0.I/'))R:T=H!S@9H 6BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH *@OKR#3K"XOKIQ';V\32RN?X549)_(5/7,?$6TN+WX=>(+>U!
M,S64A55ZM@9('U (H 6Q\20VOAJ#Q%K]T+*"]5)41P=ENC<HI('WL$9)ZDX'
M&!6U/J%HLEO;22NDMX"(5V,&;C)[<$#GGI6/#IMGXH^'-OI\N#:7^F1H".<!
MHQAA[C@CZ5F^ )M3U6RCO-:A>.\TV-M,._\ Y:2(V)91ZAMD?XJWK0!KZ'K,
MD^KZIH5ZX>^TXHPDP!Y\,@RCX'&>&4XXRN>,X&_7GCW4-A\7=?UF=S'I^G>'
MXENY I.UO,=QP.2=JFNWTK5++6]+M]2T^836EPF^.0 C(^AY![8- ',R>,K?
M6;;Q-9Z9/<6USIB.B3B'DNL>\D;U(QD@<]>H[&CP9XQTZ]T+P]97NK1RZU=V
M$4C(Q^:1_+#-STW=\=?:L*SO[:QU#XD65U+Y5Q)*TZHX(S&;90&STP2,9]>.
MM9BW5G%X,^%@6:%&BOK0R , 4_<N'SZ?,0#GN>: /3-0\2Z/I4ICOKY(=K*D
MCLK%(F;[H=P-J$Y&-Q'45<U.:YM])O)[& 7%W' [P1$\2.%)5?Q.!7E,%[X?
MAO?$?ACQB-06[N=1GEBMUDN-M]#(^Z/8$."<87'L/?'K-C$(+"VA6(Q+'$JB
M-GW%  !@GOCUH Y*W\3:K(GAISHFN"WOVDCN3);()H'# *9EZ)&1O;(YX7Z&
MIH-UK>K^,/%NES>(;V.WTR:!+;RX;?(#Q[CNS$<X-=_TKR+1G\*W?Q!\=2:W
M+IC12SVXA>YD0!U$6'VDGG!&#B@#K/ WB:\UFWUN'4Y()3I-_):?;HEV1SJH
MSNQG ([X.*W+3Q'I%]>):07JF>6,RQ(ZLGG(.K(6 #K[KD5Y';Z7K5UX$\>Z
M9X?CNFT'>HT6.16#.F=TZ1[OF*$ @>N>.]=5K5[9>+[CP7-H$\<EU;ZG%=RB
M,_-;6ZHWFJX_@SPF#C)XH Z6;QYX5@BDEDURS\N.<V[NK[@KC&02.@&Y<GH,
M]:U#K&GC55TPW*B]:(S+#@Y=!C++QR.1TKRH7%DW@GXIXE@+S7]X4^89<&%
MF/7+9Q[YK2;5++3/%O@K5;VZCBL9=$EMEN6/R&7]T=N?4X/'?% '>P^(M)GL
MIKR*]1X(9S;2$ Y64$#R]N,[LD#;C.35C3]4L]469K24OY$GE2JR,C(^ VTJ
MP!!PP/XUY3IKZ7J&A>(H+V_NM++^*YY(+Q5,;6TF0T;G<,8RI!!]><=NR\!W
M^JW/]KVNJR6EY):W*HNJ6B;4O08U^8@<;E&%...,=J %U;Q!>WGC>W\(Z1,+
M:46IO;^\V!VABSM54#97>Q/4@@#L:T)=/UJSO]/DM-7GNK03XO(;F.,L8RK
M%655(PQ4D'/'3'?E]54^$OBP?$]ZKC1=4L!9SW04E;696!4OC[J$#&>F>N*[
M.V\0Z;J$L<6F7<&H,Q^9K659%C7U9AD#V'4_F0 -N_$VC6,[17-^D>R0122%
M6\N-SC"N^-JL<C@D'D>M)?>*-#TV^>RO-4MHKI(O.:$ME@F0,X'J2,#J<\5Y
MQI=U#!\,/$GAC6B/[=1KV-[5_P#6W4DK.T;QKU?<67!'I[5>TN/^SOB)X5L]
M3GB:^M/#)AF=W!(FW1YY]2 WU&: .]M?$.D7FB?VS;ZA ^FX)-QNPHP<'.>A
MSQ@\YKF+7Q(]U\5S8Q:E.=-717N)+6>+RA%()4&XAE5L;3U.1UQ7#F[:'P[<
MWT ,^GV'C:2\ODA&\BV$A(?:.J@[6_#/:NKM]=TG4OC'9WMC>0W%L^@21BXB
M^9"?/5L;AQP ?ISF@#1E\7Z9X=\&3ZP-7FUN(W3QPS;=V7:3 3*C 52<9]OH
M*UKG5-/N?$&B1QZ\]O-)YS1Z>H -V-A^\I&X!<$@\5YBTD<WP1UPPD2"+67F
M<)\Q5/MJONP.VWGZ5UNOZI8W?Q"\ W,-S&T3->LKDXRK0[5//8G@'OVS0!UE
M]XET?399([N^2+RBJS/M8I"6Z"1P-J9R/O$=:+[Q-HFF7B6EYJEM#</&95C9
M_F*#OC^7KVK@=%O;;3] \8Z#XA=4U%[R\D,,OW[R.4?(T8ZOD?* ,D$ 5!I5
MM)I?B7X;6&K2Q_;K72KF.8.P)C<I&%4^_! ]<&@#T6T\2Z-?Z0=5M;^*6R#^
M69%SD/G;LVXSNR0-N,DD>M9FOW]WK/AZ]7PQJLMIJ5M*JDBS+N'P"(V1P-N[
M*\GH#GI7$6;:1>:=XOMKS4WLHY/$YEAO+>0 P/B,I+Z;=ZX)Z=?K76^!+_5K
MB?6;/59K2_:TFC6/5K1 BW@*9^8#C>HP#CCD>E %M;3Q%)XJEWZL_P#9<MB
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
MXSP0,\UREE;S>#-,\'WNNPWUMHL8OHY?*:16L?.D#PE]AW ;1@^F2* /4_\
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
MEE=2+'!*L$A\QF.!@;<X)XSTH J_\(]J^<_\)AJV?7[-:?\ QFC_ (1_6/\
MH<=6_P# >T_^,UT-% '/?\(_J_\ T..K?^ ]I_\ &:!X>U8=/&&JC_MVM/\
MXS70T4 <]_PC^L?]#CJW_@/:?_&:/^$?UC_H<=6_\![3_P",UT-% '/?\(]J
MY(/_  F&K9'0_9K3_P",T?\ "/ZQ_P!#CJW_ (#VG_QFNAHH Y[_ (1_5_\
MH<=6_P# >T_^,U>TO3+VPE=KG7+S4$*X6.>*! I]1Y<:G\ZTZ* (YUE:!U@D
M6.0C"NR[@/?&1FJ%OH=M::,=,MY)8HW+&252/,D9B6=B<?>8DDGWXQQ6G10
MR&&.W@CAA0)%&H1%7HH P *?110 4F!G.!GUI:* "D*J6#$#(Z'%+10 =:
M!@# HHH *SM?T^;5O#^H:=!)'%)=V[P>9(I(0.I4G ZXS6C10!F>'M-ET?P_
MI^FSR1RR6EO';F2-2H<(H4'!Z=*TZ** "L;7M.UG46M4TK6AID(+"ZQ;+*\B
MD<;23\A'/.#U]L'9HH AM+6&QLX+2W0)!!&L<:#^%5& /R%2D C! (]Z6B@
MHHHH **** $;.T[<;L<9Z9KG?"7AZZ\/1:DEU<P7!O+^:]5HXRNPR-DKR3G'
MK71T4 %(0#C(!QTI:* "BBB@ (!&",BC '0444 ( !G  S61KUAK5^MLND:R
MFF!7/VAC:K,9$(Z+D_*1USS_ $K8HH KV-G#IUA;V5NI6&"-8T!.3@#')[FI
M\ $G R>II:* $(!.2!Z4M%% !1110 4444 %%%% !2$ C! (]Z6B@ KF]!\/
M7FE>(==U.YN+>5-4F281I&08BB! ,D\\#VKI** "LC7;#6;Y+9='UE-,VR$S
MLUJLQD0CHN3\I[YYK7HH K6=C%I^FP6-KE(H(A'&3R0 , GU-%C8Q:?;F&(L
MVYVD=W^\[,<DG'N>W Z# JS10 A )!(''2E(!&#R*** #I1110 F!DG R>]+
M110 4A /4 TM% !1110 4A (P1D>]+10 8I" 1@@$>]+10 4444 %(  ,  4
MM% !1110 F!G.!GUI:** "BBB@!,#.<#/K2T44 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !6'XSN6L_!FL
M7"Z:NIE+5S]C9=PE&.01W'<^PK<HH \FT_4;6;XAZ+?+<75_;SZ)/$)1:-'$
M6WQG8@"@!0 ?7'<Y%3^$'N--UW1;#1]4_MCP[<0R,MO<J#<Z2 F5!8<[<X3#
M8(Z#I7J5% '*^/+:PN].T^&^O[G37-ZK6M_ V#;3!'*LQ/&T@%3GCYJXB^O=
M>?P[!J&I0G4H='UY7N;S3%:-KZV$10SJ$()*EP#M./D]C7L-% 'EVHKH.O\
MA+Q7J?AFTO+N:YTF2&2]D,Y,I"G;&HDY8CGH.,@=^.Y\*WT&H>&-.FMB[1BW
MC3+(5R0HSC('?C\#6Q10!P%I<1R?%W7TBN$22328(8WSQY@9\@'N1N&17-6[
M"Y^"ESX.N82/$<4;69T]O]:TWF960#NIX??TZG/%>R44 >>Z:$A^,!BN)DEF
M3P[#;-*?XY!*Q9<^N,''7%06-W%8>(OB%:W7F123LL\>Z-MK1_9E&[=C&,C'
M7KQ7I-% 'CD<T$?P_P#AE'O59+?4[-IEZ&(*CARP[ $C)/K7HOC>":[\!>(+
M>WB>::73;A(XXU+,[&-@  .I-;U% 'F$ZVOB72_ MGI#QSW>GWEK<SM'UM8X
MD_>!_P"X3PNTX)/;@XS-.N-%C@U3PCXLL=4FU-KZ=TM%:X,=^CRM(C(%.SN,
MDX QD]Z]BHH \ZG#2_%:_M[6589W\,K;1/N)"3>:Y"[NY (/KCFL E=5^"D?
MA%8C'XCB2*S^P,,3),DB_O,==O&_?TQWKV2B@#@?$]IJ>D>+M'UC2HFGGU"W
M;2+E@N0&(+Q2L/16#Y]CBJ_@K1[W2M;NO#4T<K:3H=R]U93.?]8LR_NU]]FZ
M;/OM]*]&HH S]/UFRU2[U"UM6D,MA-Y$X:-E ; /!(YX/45H444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !112,RJ,L0!ZFDVHJ[V 6BH_/B_YZI_WT*/
M/B_YZI_WT*Q^M4/YU]Z'ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!R
MOL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\
M/5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL2
M45'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/
M^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?G
MQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_O
MH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\
M]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?
M6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5
M/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?S
MK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\
MOH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T
M'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y
M\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!R
MOL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\
M/5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL2
M45'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/
M^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?G
MQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_O
MH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\
M]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?
M6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5
M/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?S
MK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\
MOH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T
M'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y
M\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!R
MOL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\
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
MT>HLT/F*8XWW. I9,AR0,9Z9QSC/MO&6M+9Z@U[IVG>?'?)I]HUO=.899O\
MEH69D!"ISD@'[K#M1_9& _Y\Q^Y![27<['[#!Z'\Z/L,'H?SKF1XFUJ2WLK2
M.PL3JMW<21Q2"X+6KQ(F\S!@"Q'(7&,[CZ#-;>A:P=8T.._> PS!I(IH5._9
M+&[(Z@]_F4X/?BC^R,!_SYC]R#VDNY;^PP>A_.C[#!Z'\ZY%_&NIZ5&+C7])
MAMH)[">^@BAE9IH_*"DQR J &(<<C@'(]#3KGQ?JNDV>I1ZKI]E'J5O;PW$"
M17#&*02R>6%9BH(*OP3CH01Z4?V1@/\ GS'[D'M)=SK/L,'H?SH^PP>A_.N7
M'B76_L-B@M]%N=0U*[,%HUG>/+;A51G=W?8#P$88 Y..>M;GA_5GU?3Y))X5
M@NK>>2VN(T?>JR(V#M.!D'@C@'!H_LC ?\^8_<@]I+N7/L,'H?SH^PP>A_.K
M-%']D8#_ )\Q^Y![27<K?88/0_G1]A@]#^=6:S=3U-K.[TVSA17N+VXV -T5
M%4N['\!@>[+1_9& _P"?,?N0>TEW+/V&#T/YT?88/0_G7*Z7XPOKZXO[N5=(
M32;,W+.([QFNQ'$SJ',>W #;,_>Z&HCXWU+3K"YN-8TJ"-SIC:G:QV\Y;<BE
M0T;DJ,,I=,D9&"?3D_LC ?\ /F/W(/:2[G7_ &&#T/YT?88/0_G7+Q>+=0MH
MM0&I6MF)=,FMS=/:RL\9@E_B!(!#+U(/89[C&UXBUE]&L86@BCENKF=;>!99
M-B;B"2S-@X555F/'1:/[(P'_ #YC]R#VDNY>^PP>A_.C[#!Z'\ZY*]\7ZK9Z
M58,]KI45]=7CP"6>]*VC1K&S^:) I.TX P1U./>K%WXBUY#!9VFGZ;<ZBMDU
M]=!;I_)V;L(L;;,DM@X)  VGK1_9& _Y\Q^Y![27<Z7[#!Z'\Z/L,'H?SJJN
ML"Y\,KK5A:RW8EM!=06Z8#R[EW*OH"<@5S[>+]4LEU&RO]/LVU:W:U2%+:=C
M%(UPQ1%9BN5*E26X/RX(ZXH_LC ?\^8_<@]I+N=5]A@]#^='V&#T/YURW_"6
M:H&_LDV-I_;_ -N%F$\YO(QY7G>;G&[;L!&,9W<>])%XNU74!:V&G:=:?VP?
MM/VJ.>=A%%Y#B-L,%R=S,NW@<')Z8H_LC ?\^8_<@]I+N=5]A@]#^='V&#T/
MYU#HFJ1ZWH=EJ<4;1K<Q+)Y;')0D<J?<'(_"K]']D8#_ )\Q^Y![27<K?88/
M0_G1]A@]#^=6:*/[(P'_ #YC]R#VDNY6^PP>A_.C[#!Z'\Z?=7=O90B6YE6*
M,R)&&8X&YV"J/Q8@?C5&Y\1Z-:6]U<3ZC D5I-Y$[%O]7)M#;3[X(-']D8#_
M )\Q^Y![27<M_88/0_G1]A@]#^=02ZYI<#W*RWT*M:PI/,"WW(VSM8^QP:(=
M=TNX-L(K^!C=0-<0@-]^-<;F'L-P_.C^R,!_SYC]R#VDNY/]A@]#^='V&#T/
MYU#/K6FVND+JT]Y%'8,BR+.QPK!L;<>N<C ZG-4IO&/AVWTZWOY=7MEMKAF6
M)]V=Q7[W'7Y>_''?%']D8#_GS'[D'M)=S3^PP>A_.C[#!Z'\ZH:AXKT'2OLY
MOM6M81<1^;$6?(9/[V1_#R.>G--D\7>'XM0CL)-6MENI'1%B+<[G 9 ?3<&7
M&>N>*/[(P'_/F/W(/:2[FC]A@]#^='V&#T/YU43Q'HSZRVD+J,!U!208 W.0
M,E?3=CG'7'-2VNMZ9?-;+:WL4S74;RPA#DNBD!C] 2 ??BC^R,!_SYC]R#VD
MNY-]A@]#^='V&#T/YU4O/$>C6&J0Z;=ZC!#>3;=D3-S\QPN?3)X&>IZ4V'Q/
MHD^J3:;%J=N]Y#NWQ!N1M^\!V)'<#D=Z/[(P'_/F/W(/:2[EW[#!Z'\Z/L,'
MH?SK$/Q \)B-Y/[>L]J8)(?/!SR/4<')' P<XQ71(ZR(KHP9&&58'((]:/[(
MP'_/F/W(/:2[D'V&#T/YT?88/0_G5FBC^R,!_P ^8_<@]I+N5OL,'H?SH^PP
M>A_.K-%']D8#_GS'[D'M)=RM]A@]#^='V&#T/YU9HH_LC ?\^8_<@]I+N5OL
M,'H?SH^PP>A_.K-%']D8#_GS'[D'M)=RM]A@]#^=/BMHXGW(#G&.M345=/+,
M%3DIPI1376R$YR>["BBBNXD**** "BBB@ HHHH **** "BBB@ HHHH ****
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
MC-SUSQDUF6VG:D]AH^@?V1=QW.EWDT\]XT8$3KME 9'S\QD\P<#D9;.,5Z;1
M0!YYIV@WD-MI"MI[J8?"C6;@I]V4B+]W]>#Q[5V/AZ&6V\-:5!.C)-'9PHZ-
MU5@@!!_&M*B@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
>BBB@ HHHH **** "BBB@ HHHH **** "BBB@#__9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>14
<FILENAME>exhibit101-ptagreement003.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement003.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%,FFB
MMTWS2I&F0NYV &2< <^II] !1110 4444 %%%% !1110 4444 %%%&10 44R
M6:*")I9I$CC7J[L !^)I] !1110 44PRQK((S(@D;D*3R?PIX(/0YH ****
M"BBB@ HHHH **** "BBF/-%&\:/(BO(<(K, 6.,X'KP": 'T444 %%0_:[;[
M,;G[1#Y"D@R[QM&#@\].O%34 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 44R6:*! \TJ1J6"@NP ))P!SW)I] !1110 44QYHHF19)$0R-M0,
MP&X^@]33Z "BBB@ HHHH ***1F5%+,0J@9))P * %HI 0>A![T9!&010 M%%
M% !1110 4444 %%,2:*222..5&>,@.JL"5)&0".W'-/H **** "BC(HH ***
M* "BBB@ HI&94&68*,XR3CFFF6-20TB@C&03TR<#\S0 ^BBB@ HHHH ****
M"BF1S12M(L<J.T;;7"L"5.,X/H<$4^@ HIDLT4.SS94CWL$7>P&YCT ]3[4^
M@ HHHH **** "BH%O+5[I[5+F%KA!EH@X+J/4CJ*GH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "H;NWANK
M26"XB26)U(9)%#*1[@U-4-W(\=I*\<+S.%^6-"H+'ZL0/S- 'SYHZ:1<_!W2
M-/TFU#>-+@N]D]I%LN RSMES( ,*%'))QBO:[_71H&G:9%J,L+ZC=;81OE$4
M;2!-SL6/W5&"<X/4  D@5Q&B^ ]4/PPTK2YX_P"S?$FBO)/870D1U60R,P&5
M)RC A6!_(XK6UJV\5:G:Z#K]KI44&NZ1*S2Z?+<IY=RCIMD5'!..Q!;&* *6
MO?$JX;PAXFETNVA35=(*13%;D21JLG"2QN!\_7H0,$<^_4ZAXI&G36UC<1V<
M6ISQ/-Y,]Z(XD13C)D*YR21@!3W],UC>([#Q)XO^'^M6<^G0Z?=W,2+;637*
MR-E6#$LX^4%L8 Z#&2>>&ZO;^*8/$6G>+-+TB*XF:S:ROM*:[17";]ZLLA^7
M<#G/Y#/4 #HOB?:SZ1I]]!I5U*;G5!I4L<<B'R9\],Y^8$<@C@Y&2*NQ^,KR
M1M?LGT4VVJ:5;+<I!+<ADFC8,5.]0<?=.1@_4U3\0V/B+6K/0)I-,3S[?6H+
M^:WBN$(@A0$%=Q*[VYSP,<D9X!,AT;4[CQOXAO&LS%9ZAI<=G#,TB$;UWYR
MQ('SCMVH SSXE:7X8Z-JOB31$U%+LVA8"167>[+MD8$#'S$< &NLNM?D;6KC
M1]+M$O+VV@6>X$DWE)&&)"+NVL=S;20,8P.2.,\5/H/B*X^%.E: VCA;ZS>T
M0HMU&0RPNK,V<@ $+P,D\\XK<73-4T7Q]J&OVEC)>V.L6T*W,,<D:RP2Q A3
MAF"E2I(.#G/M0 V7XD6@T*RU.#3+N4S:BNF7$&5#VLY?:589Y(/3&<\=,UJ:
M/XGEO_$=]H=]I<FGWEO ES&&F602PL2H;*]""I!'/U-<E=^#M5AT2/[/:">]
MN_$JZW=11S(!"GF!M@+$;B%51QU.>U=#;Z?J/_"T;C67L733Y-)CLQ*9(_\
M6+(SGY0V<8;&?7\Z ,CXSV]L_@N&:>!)&CU"VPQCW, 9 "!QGD9&.]97B6YT
MF+Q5X7M?"UN=+UB2_0RO]E:RCDMAGS$8.JB3/&%&3Z8KI_B5I6IZ[X<AL-*L
MC<S"\AG8^:B!51PQY8CGBJ/C;1=8\=V%EI$>EMIMNMW'<37EU/&7B"_\\UC9
MLL<]210!TEQX@EDU>]TO2;)+V[L8DDN1)/Y2H7!*(#M.7(!.,  8R>:QY/B/
M9G1M'U*UTV\N$U&_73VC!57MYB2"C GJ"IZ<>XS2P:9J?A_QYK6K6MD^HZ=K
M,<+NL,D:R6\T2[.CLH*L.X.01TQS6++X.U6RTC1XX+07%U_PD@UN^6*5 L0+
M,2BEB,D J/?!Z4 =#;^,[AYM=M+K1GM;_28%NC"UPK":)@Q!#*#@_*1CUQSW
MIY\:I_9_A>^^P/\ 9]?DBCC_ '@W0M(A<9&.1@'D&J+:)J5UXU\1W3VC0V6H
MZ5'9Q3M(APZ[\DJ&)Q\X[=JPX-&\52Z#X+L)-"CA?0;V SE[V,B1(XG3>N,_
M+R.O.3T[T =A#XJ>]O+E+"Q2Y@M+];"X*W&)8VW!6<Q[?NC.<YR0,XQ725YQ
MJOA>]U'7DU:STJ32]=AOQC4[>X18KBU$G_+50V6)C&,%<YQSC..WLKK49M3U
M&&[TY;>SA9!:7 G#FX!7+$J.4P>.>M &A7D_Q \)Z%I5AX5CMM*LP\OB*SBG
MF,"EYU8MN#MC+!CU!XKUBN,^(6DZIK*:!'IE@]S]BU>WOYF\U$ CC+9 W,,M
MR,=O>@#$^)?A?1-(\!:U>V&FVULTDEF2D,*JJLLZC<H X8AR"1U%=39^+))/
M%,FAZAI<M@YM&O;>6297$D:L%;<!]UAD<9/'>H/B'IFHZ]X'N=.TVR::[N'A
M81F1%VA94<Y)..BD<9YJOJ6C:AJ7C^TU!M/F33CI,]E-*9(]R-(RGINSP 1Q
MW]: (S\2]/6?2I3'"VGZI<+;P31W2O,C/]QI(L953ZY)&1D#I5WXD^)+CPGX
M!U/5K3'VI$6.$D9"N[!0WX9S^%9GA)/&NDV5GX;OM)MOL]B%A76%NE*R0)P,
M18W;]HQSQW]CTGBWPY;^+?"U_HERYC2ZCPL@&2C@AE;'?! .* *VD>#](L]&
MAMKNR@O+EXP;FZN$$DL\F/F=G/).>G/';&*C@GA\*6^E>&[0/>7MPTWV5))"
M,1J2Y:1SDX4,HS@DDCCKAFB:CXFM-/AL-6\/S3WL*",WEM<PF"; QO\ F8.N
M>I&TX[9JKK>B:ROB30/$UK&E[<V*S07EI&X0O%)_SS+$#*D#J1N [4 23>/8
M[6P\0-<Z9,NHZ$GFW=FDBG=&5++(CG&Y2 >V1C&*8?'=Q%?Z/#-X>NEAUB(F
MSD29&9Y F_85XV@C."3]0*S]6\,:GJ4/C#5%L76]UC3AI]I:-(FY5",-SG=M
M&6;H"<!1W.!-=:/K$MSX&D32Y2-).Z\'FQ?)^Y,>!\W/)SQV]^* +7_"?-!I
MGB.:]T6>*]T$!KJUCF1\HR;U=7X!&W/N,=#38?'\BZMH]OJ.@W=C8:QM2RO7
ME1@TI7(1E'*Y[9Y/H.<8?B+3-1M;/XG:C<V3Q6>HZ<IMY#(ASY=NR-D!B1D\
MCV]*TXM+O_$^F>#XI]/DL[;39;?4)II)$8.T<9V*@5B3EF!R0, >IQ0!?NO'
M)M&BN)M*ECTZ35!I@EDDVRERVP.(RO*;N^[..<4L_C.\.NZSH]AX>N;J[TV*
M*7YKB.-9%<,<YYQ]WCN<]!C-<IJ'AOQ9?Z<ZW>BQ7>J0:S'="]>[3]_ LP95
MC!^X H VG;TSR373:98:O:^.?$6K3Z7)]GO;2VCA,<T;;GC5]PY8'!+<$@=.
M<4 *?B!$^E^'-4@TYVL-;DCA69Y0OV>1^@<8/&01D=_3(KH(M3DF\07.F);
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
M5JEU&WA[P_:3R6_]N:BEM/-$VUU@&"X4CH2"!GZT =JM]:/,\*W4#2QC+H)
M64>X[5/6%J'@_0K_ $&71SIMM#;-$8T\J,*T61C<I'(/O3'UR?\ M:70],MH
MKV^LK:.6Z::<PQINR$7(5CN;:3C' [T =!17#2_$F$:#9:E!I-Q*\NIKI=U;
M&15>VG+A64_WB,Y&.N1R*T+'QB_]M:KIFM:>-,>PM%O_ #/M E5[<E@6) &T
M@J<CGZF@#I)[FWM@AGGCB\QQ&GF.%W,3@*,]2?2A;JW>Y>V6>)KB-0SQ!P65
M3G!(Z@'!_*O,O&&HW6LVW@O4I-(BAM+C7;*2WF:;=,BLV5W+M^7<.<!CC@'V
MZ:'6%D\8Z_8VFB6\>IVEE#)]KED"_:5);:K%5)"C!]>O2@#I[FYM[.W:XNIX
MH(4QNDE<*HR<<D\=:EKR^'Q;=2_!Q?$/B'1+758)E622#S05<-+@;E9<*%)7
M &[I[5VMYKSKKW]AZ;;1W-^MM]JE$LQBCBC+;5RP5CDD' QT!)[9 -NH;JT@
MO8?*N(PZ9##L58'(((Y!!Z$<BN+N?B1'!X:N=4&D3-<V5^-/O;0RJ#!*75/O
M?Q [@00.0>U:-IXNN/\ A);O1M4TEK)X[$ZA"ZSB;S(@VU@0 -K XX!8<]:
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
MM1R)+&LD;JZ. RLIR"#T(- '"R:'K?B#1="T?6+%;8Z?<P37=RLRND_D]/+
M.[YB!G<%P,]:;%H6LH?'1.GG_B=9-G^^3G]R(OFYXY&>_'OQ7;QWMK+=S6D=
MS"]S %:6%7!>,-]TL.HS@XSUJ>@#RV[LM7MK?P7IUGI<5QK.CV!::-+U89HP
ML:Q;E<AE*,<Y!'.!QP:Z;P7++ ]]IMUX?ETF[W?;)2UTES]H:0MERZ_Q94\$
M#@#' XT]8\*Z+KUS#=:A9E[F%2L=Q%*\,JKUQO0AL>V<5=TW2K+28##90>6K
M'+,6+NY]69B68^Y)H YG6=+UVX\:)<I9VVH:2;+RX4GGV+:S[B3(4P=Q(P 1
MR,8XR36+I7A34%\#Z)X=\1>&[;4;.WADBN(H[A#(C KY<B%BN#R^<-D CGM7
MIE% &!X,TF_T/PQ;Z?J%S)/+$\GE^;)YCQQ%R8T9OXBJX!/MQQ6+XTT ZIXE
MT&:RN1#<W!EL;U1UFLBI:0'TP0 #V+UV4M]:074%K-=0QW$Y(AB>0!Y, D[1
MU. ">/2L_2_#&BZ-J5]J.GV$<-Y?2&2XFR69V)R>I. 3S@8% &1KVA:A'XPT
M?Q/I4*W#6D,EG=6F\(TD+X(*$X7<K#."0".XK-U/P7>ZU9>,KMU2VOM=M4M[
M>!W!\I8T(7>5R,LQ.<9 &.37H%% 'GZZ;XGU'Q/X1U6YTBVM(M,BN([F-KP.
MPWQHN05!!Y!P!Z<D9K7^(FD7^O\ @F_TG3(!+=7)C"[G"*NV16))/LIZ9K<C
MUC3)II(8M1M'EB!,B+.I9 .I(SQ5V@#CM0TS5[OQ]I>L06;16\&GSV[R/(A*
M22%2#M!Y V\_IFN:M?"_BPP^&IKG2;)M1T[4/.O;E[W<]W\CKYA;;G'S#CDC
MH  *]6HH X_7_"=SJ/C'3-6LY4CMY(6M-50_\MH 1(@QW^8%3_LN:C\2:9XA
MLO%UIXG\.VL&H'[(;&\L)IA"73>75D<@@$$GKVKM** *.DG4GLO-U5(8KF1B
MWD0OO6$<83=@;CQDG'4G'&*XGQ+X3O==U"2[ATO[%K<%TIL-:MIE3$(8$^:
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
MAMXV=8U:5P@+,< 9/<G@"@#B/['\1KJN@/)IL%YIMOIBV\EI/<A5M[I2/WQ
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
MFZMM&,GZ]:\Y\,6NJ:MX)\2Z+:VL82^U._MQ=O*-L:O(RN67J2 3@#(/&2*
M.JU+Q?<0PSW6GZ>DEC#IRWXO+J4PQ3!LE8T;:1NP,G/3(XYJ)_',@'A6Z33%
M&F:^(U%S)<;3;R.F]490IR3T!SU]*S[GPIK<&K3V]I#9WFE'2H[&Q>ZG*FQ9
M4*L0@4[BV1R,'C&0*2?07B^#8T/7G@M;JST]0C02%RCQ ;'4X!+;E' ]<9-
M'7V>ISWFMZC9BVC%K9;$^T"4DM(RABFW;QA2ISD_>'O5#5/$ESI?BW2-(EL(
M_L6I[TCO3<$;9%7=L*;>I'3YN<&KGAK3KC3=!MHKYQ)?R S7D@'WIG.Y_P
M3@>P K*^(=E%J'A&Z19Q%J%NR7-@Z_?6Y5AY6T>K-A?^!&@!]]XP_LZ/4IIK
M-6AM[R.QM#'-EKJ=]H"@%0% 9L$Y/W6]*<?$]W9^)K30=4L8(9]0ADDL9H9R
M\<KH,O&V5!4@$'.""/?BJ6N^"[C4?!%II=K=1IJMG/'?17$@.Q[I6WLS8YPS
M%OIGVJP=(O\ 7?$VB:SJ=FEBNDI,R0B82-)-(H0G(XV 9QW)(X&.0"B?B%,/
M *^*?[)3 NS;2VWVH_+^_P#)R&V<\\XP.*[6X,PMY#;+&\^T[%D8JI;MD@$@
M?A7EMQX.\5?\(/J'A6"TL#&M_P#:+>Z>Y/[Y#<B;!7;\I SDY/3@'.1ZI&7,
M:F5560@;E5MP!]C@9_(4 >-ZEJNH^(/@?;ZQJT,$D\MY!+&\;EF)-X,C! V8
M&% !/'I7>6GBRZ3Q3=Z+K&G16.RP.HPS1W/F@PJVU@_RC:P)!P,CGJ:Y=/!O
MB5/A=#X4-M8F>VN8S'*MR=LB)/YI8Y7Y<@  <]\XK?O_  ]?ZGX[_M*:V5-,
MFT2739?WH\P-(X8D#I@ 8Z]: (8_B&'N=&=;2"6QU65(E^SW/F3V^\91I8PN
M #P#S\I/>MSQLBOX#\0JZAA_9MQP1G_EFU8?A2R\;:7;6>@:A'IQL+';&NJ1
MS$R30IC:OE%>&( !)/'/4UT7BBSNM1\+:II]E$LEQ=VLMN@=]J@NA7)/H,T
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
MN/!VOS_#GQ+H'V:W6\U._GN(3Y_R*DDN_P"8XSD 8Z>E 'IC%MC% "V/E!.
M3]:\Q\/K<ZM;>-3K&CV&HP1ZQ,SPRW!;+Q1Q;4&8\;0 ,-Q]*],B:1K=&DBV
M2;<E-P.#Z9KCO#VC:SIEKXI2YLXM^IW\]Y;!)P1AU50K<<'Y<G&10!7B\:MI
M_@KPUK-KH5M!IE^\,,B)<>6EDLAPIP$P5!P.W45OZGXD729]3DN84&GZ=9BY
MGN%D);<=V$"8P3A<_>[KZUEZ1X2DE^%D/A/68XUD%E]ED:-MZ@@<.IXZ'!^H
MI8?"-Y?_  XN=#UB[#:IJ%N1=W2<_OMH"GWVA4'OM]Z %M/&LDGB73]*GM+5
MX]0C<QSV5UYX@=1G9+\H"Y'0YY(Q[U5^*2JND:).(/-EBURR*  ;C^\' )Z9
MZ=15_P -MXUD:WM_$-MIUO';#$MS;3F1KP@8&$*C8.Y.<\8 &>)O&VB7VN:1
M:)I_DM<V=_;WJQRN4$@C?<5W '!/KB@"E:>,-47Q%/H.K:'%97SVK7=BRW?F
M17"*<,I;8"K#(['^68X_'TDOA;PUKJZ6OE:S=P6K1&YY@,K[0P.SYL>G%7X]
M%N]5\50:]J, M%M+.2VMK<2!WW2$;W8C@<*  ,]R?2N0M_"/BV/PCH&@&STX
M?V)J4$XG-V<7*1R%@<!?DXQZG/:@#K3XMFN=8U/3M-M;:XFTZ>.&:W>X*3E6
M"$R*FTY4!_7G:>G<AUG?X^U+2DT:W6\@TZ.=+OS!OG0NP5"=N5 ()ZGKTK&\
M3>$;_P 1W$DK:;!;:M#<(VG:S;SA7AC!!(? #-CY@%P0<CIS6M'I.J0_$>^U
MW[+&UE+IL=I'B4;RZ.SY([ [L=: ,BS^)&H7.@:-K\N@)#I=_=K:RL;S,D1:
M4QJP7;AE! SD@]<#')T]:\<"QEU6+3XK*XETP 313W?E/*^P.4C 4Y.TCD\9
M./7&!#X.\01?#'2/#IMK8WUG?1W$C"X_=E5G,O!QG)!QTZUIG2_%N@>*M3O=
M"M+"_P!-U=TGE@NKDPM:SA C-D*VY2%' YX_, N1^.5O[RSLM.MH5N[K3DOX
MH+^8P/(&+#RU&T_,"ISZ<=<\3S^+)EU>UT>*VMH]3FL%O1;W=P8MY)(\M#M.
M6!!SZ<<'/%#Q+X9NM?@-CJVDV^JQ"T7R+M)%AE@NLMN93U5/N$8)/'(:J^I^
M$KW4]%M-'US3H=;2#3HHX[T3".>.[ (9PQY"GY#D$GCD'- '<V4TMQ86\\T)
M@EDB5WB/5&(R5_#I7F/Q"UR?Q'\*M<U"RT^WETGYHXII)OWCA)-AE5=N,;@<
M<Y(YXZ5Z)H5C=Z?X=T^QU"Z-W=P6R133DG]XP4 G)Y_$\UYPW@WQ7:_#O4_
ML%K97%K\Z6-^UUL)C:3>%=-I.X9/?&/IR =?K/B2^TK[6MOIB-;V5@+I[J[F
M,,4C'.(D;:06^7GTR.#FJ[^.9 /"MTFF*-,U_P M1<R7&TV\CIO5&4*<D] <
M]?2J5_H/B:[UZ\GEMM.N;:ZTU;>W,MRV+"7:P<JNSYMV1SP> .!4<^@O%\&Q
MH>O/!:W5GIZA&@D+E'B4;'4X!+;E!P/7&30!M:OXO.CQZU<S6D9L=,\F,S^>
M1NED*_*PV_*JAU);)X/2M32-1O+Z2;SX+;[.$C>WNK6?S8YPV[.#@8Q@>O4&
MLRVTO5;+P4EL(K:]U:8K+>I<8$<[NX:93P0!M+J.#@ 56\'^%3X>U?5KBTMV
MT[2KP1F+3?-WB.4;M[@ D*#E1@'MVX  .PHHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBHK@SBW<VR
MQM-CY!(Q52?<@$_I0!5.N:4NIIIAU*U%\^0MN95WL0,D 9Z@<XJ\2 "20 .I
M->4>$-66S^&NDZGK%A:7L[:A(-/RV9'NY;F1022OR<L?F&3C)]J[)?$EU9>+
M+/P_K%K C:C#))97%NY*.R#+QL",@@'(/0CTH U1X@T8Z?-J U6R^Q0N4DN/
M/7RT8=06SC-7XY$EB22-@R. RL.A!Z&O(EC3_A4OQ$7:NU=1U/ QTPQKM;?7
MGBET70+"..34)].%T[2L0D,*A5W$#DDLP ''0G/'(!U5%<'=>/K^WT3Q%*FD
M12:MX><?;;3SR%>(C<)$;;G!7+8([$5H/XOD3Q?HFC^5:-::O:-<6]TLQW,5
M4,5VX[@Y!SS@^E '1WVH6>FV_P!HOKJ&VAWJGF2N%7<QP!D]R35FN(U[Q3=6
MGAIM3GT>RN[4ZDEM&KS$@IYPC67!0Y.[D#TP<U;OO$VL+XTF\-V&E6DD@T\7
ML5Q-=%4(,FSY@$)'0\#.>.G- '645Q%M\0#-X0TW59+ 1WU]J(TM;?S,HDYD
M,9)?'W?E)Z9[5H:9XDU&Y\97_AVYL;8?8X8YVNHYV&]'SMQ&5.#E2#EO<9H
MZ>JL6IV,]_-80WD$EY"H:6!) 7C!Z%@.1^-<QX[U;6--NO#<.F&!8[W58K>;
MS&8,W#.%R!PIV<GGT]:R2^JP_%C6/[,LK26^?1;8L)IC'$K>9)G)"ECZ#CZX
MH ]'HKB['X@17_AO0K\6Z07FKF1$AD<E(C'N$A) R0"N!@<Y'3DC1\+^([G6
M[C4[2\L3!-82J@F0-Y-PC#*NA8#T((YP>] '1TR::*WA>:>1(HD&YG=@JJ/4
MD]*YS5O%#6^KW&DV'V;[7;VZ3RM<LP0%RVQ!M!.3M))[#'7/')^)O$6I:]X/
M\,W\.GFQ%WK-G'/:W3,CJXG'RGY>4)4'/ICB@#OX?$6BW%I+=0ZK9O!"_E2.
MLRD(_P#=//!]NM6K#4+/5+-+RPNH;JVD^Y+"X=3Z\BO/O$$&H6OQ)\)O;V.F
M17%W)<RS%)& FD2W*@N=F3M5B%//7M5RZ\5)H]OK'_"/Z59.NGW#^?;)N1[J
M; :78%4C.3C)Y)!X'!(!WAC0R+(44NH(#8Y /49_ ?E3JYF/Q//JMZMCHUJO
MVA;&*]F-YN3R1)GRXRH&=QVMGIC'?.*P=2\2^))[WP6$TZ/3'U&XE%U9W,IW
MATC<[2RC[G&[.,GCIS0!W:ZA9OJ,FGK=0F\CC$KP!QO5"<!B.N,CK5FN5M]:
MN)?'.IZ.-+LX[J#3H[B.Z\PDS!F8!6.T%0"#Z]:@TCQC>:KX3;4?L$$6J+?&
MP>P,Q.R42;-I;;GI\W3@4 =C17&ZMXTN+=M533+>VN)=+^66*1W#3R; YCCV
MJ<'#* 3W.,<9KIM*U%=4T>TU$0RVXN(5E,4Z[7CR,E6!Z$=* ':AJ5CI-J;K
M4;R"T@'!DGD"+GTR>]6J\G\?Z[=^(_A-JFJVEI;'2)G58F=SYK1K,JB4#&!D
MCA>N#G.>*['Q!XBU#2I[T064$=K:6?VDW=Y(4CF<EL0H1_%\O)[9'!S0!T]%
M>>7WBO5]1U'P'/I4<$5IK*O</%-(P8G[.SA&('W1G/3D@=*O:OXXGMTU5]+M
M(+HZ6YCD@9W$EPZJ&=8]JG!&<#/4@C ZD Z/5M!T[6S;'4(7E^RRK/#B9TV2
M+T8;2.1V/:M$#: !GCCDYJK9ZA%=Z3!J)5X(I8%G*S+M:,%=V&'8CO7)7'CN
MZM_"T/B[^SHVT%W#,HD/VA("VT2XQ@]0=G8'KVH Z^^U"STVW\^^NHK>+.-\
MKA03C..?8'\J=9WEMJ%I%=V=Q%<6THW1RQ.&5AZ@C@UPVLW6IR_%;P]';+:2
M6_V"ZE@#S, P/E@L<*>?3KP>U:_BQY/"OP^U:?P];VEHUI;2S1H$VHG5F(4#
MKDD^F3S0!:ET[PQ8^+8]3FBL8M?O5\J.21QYTH"XPH)_NC&0.@K?KS'7);\W
M?P\N9K>&:]-TVP)*</FV;&YF&1ZG@^V:VK;QU+:VWB,:Y9107>B2Q(ZVLID2
M82J#%M+ $$E@.10!VE1SSPVL#SW$L<,*#<\DC!54>I)Z5R^G>*[R;Q3!H]S8
MQR0W,#2QW=IYC)&Z]8Y-RC''1N_H*9\0]-UB_P!'L;G1;>*\N-.OH[QK&5MJ
MW2H#\F>F<D,,]U'?% '1V6KZ;J0S8:A:7603^XF5^F,]#VR/S%7*X'PMXET#
MQ9XE:_@MGT[Q-:6<EM<V%Y%Y<P5F1N3_ !*"@QZ;N@S2R_$"[B^']]XF_LR
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
M1!I&>"XCE9BZ,=H(R&'..H_$=UH8UN2&2XUP6L,\F EM:N72(#/)8@$L<\\
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
M>@44 8B+XCA_LM2;"XWRNVI.2R^6I!($0[X.!\W4#/?C;HHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M-UI&KR*&F8,&);.54#L6^[UH ]"HKQ"S5KWX:> &GN9VD'B%+?>LS ^6)YE
MZ]@J@'J,#%:FH-)X2UGQZGA^,P"/1(KV.)"2JS?O 9 #WP 3ZXYH ];HKC-(
MT?P^Y\.>(-/N7BF: I&T#C_3]\>2)N"9",%LDY!!)KE-"L/^$L\(6'B";6K.
MQU.WN?/N+R.T)NHI5<[HF;S,D'[NS&"-H Z4 >O4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5
M0UJ"XN])N+:WM;6Z,R&-X;J5HXW1N&!*JQZ$]JOT4 <'%X9U6&2 IX?T/R[=
M@\,#:O<M#$PZ%8C%L4CM@<=JEU'0-7U;4K?4;[PYX=FNX$V)(VI3@[<YVL!#
MAESS@Y%=L'5F*A@2O4 ]*-Z[]FX;L9QGG% 'DOB+PGXB_L_1]-TOPCI/V.VU
M2.^E2TU$C.W=G<713SNSD9(K?N]-\46NC:FMEX?TF6YO(&CD(U662:3Y2H&^
M2/G&3@%L#FN\S29 !)(P.] 'FOA#P[XDTO0=(CF\.Z5'<V$*HBW6K2ML<+M+
MJBHZ*QYY4YY/J:V8-*U^VU6YU2'0]"6]N@%GE_M6X)D Z @PX(';T[5V =2F
M\,"N,[L\4%T 8EE 7J<]* . TKP?=Z'J,VH:9X3\-6MU*"#)'J,XVYZ[1Y.$
MS_LXJ3_A%]3_ +,NM-_X1W0?L5U(99X#JUSMD<G)+#RN<GD^O&>E=X"& (((
M/0BA75QE6##ID'- '%OHFNR7MC>/H>B-<V*E;:5M7N28@1@@?NNXX/J.M5/^
M$0N_^$@.O?\ ")>&/[3+^89_[0FY?^]M\G;N]\9KO]Z[]FX;L9VYYQ2T <0-
M!UI9]0G70M$$NH@+=N-7N09@!@;OW78<?3CI44GAC4I=.LM/D\,^'7M;)]]M
M&VI3D1'&/E_<Y QQCI[5WF::74=6 YQU[^E ' W7@^[O;B]GN/"?AF22]7;<
M$ZA/A^,9QY. <?Q#GWJRF@ZS'?6=Y'X?T!+BRC\JW=-4N!Y:=P (<8/?U[UV
MKN$0L2H [L<"N=\'Z_>Z]#K!OXK>.2QU2>Q409P5CVX)SW.3Z4 5]2M/$NKV
M,EE?Z-H4UM*,21_VI.H<>AQ",CVIVGV_B?2[**SL](T..WB4+''_ &I.P10,
M #,)P!Z5U*NKC*,&'J#F@,K?=8'C/![4 >?7/@VZO)+Z2X\)>&9&OFWW.=0G
MP[9!W8\GAN!DC!-.O;;QCJ>W1'\,:+;Z7;O#*)CJ):*81LKB-5$6X<J,DKT!
MQUS6]K/B9K37K/P]IENEUJ]U&T^V1]L<$*G!D<@$XSP !R>XZT^6_P!>T^_T
M^*ZMK.[M;F?RI;FWW1F#*L02A+9!8 9W#KTH SM4TSQ#K2P+J&B:%.MO*)H@
M=4N%V2#HPQ".1V/:F#2-?&K/J@T711?O%Y#3C5[G<8_[O^JZ9Y^O/6K=GXDN
M_$.IZC;:"ELMII\QMIKZY#.KS#ED1%(R%R,L2.>@/6I-+\2S76N7WAR_ABM=
M:MH1<)M)>*XA)P)$Z'@\%3T/<]: ,<>%]1_L2?1F\,>''TZ=B\EN^I3LI8G)
M89AX.><COS4=OX1OK70I=$@\+^'8].F;=+ -3N,2'_:/DY;H.I/058\.>*/$
M?B/2;Z]MM.TS?:7<UJ(&G=?,:,X)W;3C/T-)+\0#=?#*?QCIEHN;=':6TN20
M0R-M9=P]\X..>.E $C:)KC7ME>MH>B-<V*E;:1M7N28@>"!^Z[C@^HZU WA?
M46^W9\+^&Q]OD$UR5U&<%W#!MW$/!W*#QC) -277C;4M$;0)]9T^U-AK$T=N
ML]K,Q:"6090,C+R.O(/&.E=M)(D43R2,$1 69F.  .I- '+6'A^XN(K^RUK2
M--^QWT/EW#QZA-<2RXX"LTB [0"V/FX[#DUT]O!%:VT5O @CAB0(B#HJ@8 _
M*N>\%>+X?&&FW=RD#V\MM=R0/"X(95!RC$'D90J?KFNEH JZCIUKJUC+97L1
MEMI05DCWE0X/!!P1D>W2L[_A$M$^SV,'V,^58,'M$\^3$! P"GS<8' QTJ]J
M.K6>E?91=RA&NKA+:%.[NQP !^9/L#6/:>(+V3Q_J.@W$=LEG;V$=W'(I.\[
MG9?F)X_A]/QH U;;0].L]5N=4@MRE[= ">7S&)D Z Y.#CMZ=J35="TO7%MQ
MJ=E%<BWD\V+>/N-C&1CVZCH:T,C&<C'K0K*ZAE(93T(.: ,I/#.DQW-]<I:L
MLU^H2Z=9G!E & #SV' ]!P.*KW7@OPY>Z#%HESI4,NFPG=% Y8B(_P"R<Y7\
M"*9K?B9K'6['0-.MUN]7O$:54=]L<,*\&20@$XSP !R>..M+/?Z_IUW8)<VU
ME=VUS<+%-<6^Z,P @X)0EMP)P,[AU'% &II6DV&B:?'8:;:QVUK'G;'&.,GJ
M3W)/J:S]=\'>'O$T\$^L:5!=S0<1R-E6 ],@@D>QXK;+J&"E@&/09Y-!('4@
M4 5I=-LI]+?3)+:(V+PF P!<)Y9&W;@=!CBG3V%I<Z>]A/;126;Q^4T#H"A3
M&-N/3%3>8FU6WKANASUI20.I H P=+\$^'-$LKJTTW2HK:&[79.$9MSK_=W9
MSCD\9QR:D/A+0S9V-H;(_9[!Q):1^<^(6'0K\W!';T[5M!E*A@05(SD'BA75
MUW(P9?4'(H SX]!TJ+6Y=9CL8EU&90DEP!\S # SVSCC/7'%5-?O-?ADMK;1
M=(ANUN%=);J6Y6-;4X&UBA!+CD\#T]ZV@ZD@!@21D 'MZT[(]: *.FZ5:Z7H
MMMI,,:FUMX%@",HPR@8Y'OW^M5M.\,:/I,D3V5GY?DAA K2.ZP ]?+5B0F?]
MD"M>FEUR55E+C^'- &'>>#/#M_?7E[=:7#)<7D9BN&)8"0;=O(!QG'&[&?>M
M>RLK73K.*SLX(X+:%0L<<8PJCVK!\(>(+S78=7.H1VT4MEJL]@@ASAA'MP>3
MR3D^GTKHV=4 +L%!.!DXH PF\$>&6\0?V\=&MO[3WAS/@\N.C%<[2WOC-7X=
M#TZ#6)M7BMRM_.H26;S&RZCH",XP.P[5E^*M?OM"N] 2UAMWAU'4XK&8R;MR
MAPQRH&!GY3U]>E%IK]]+\0K_ ,/S0VZVL%A'=Q.FXN2SLN&SQ_#V'XT 2Z?X
M(\,Z5K4FL6.C6T%^Y+&5 >">I5<X4GGD =:5_!7AN3Q!_;K:/;'4BP<S8/+#
MHQ7.TL/7&:WB0.II%96SM8'!P<'O0!GG0=*;7!K1L8O[2$8C^T8^;:,X]NYY
MZ\T_5M'T_7+$V6IVJ7-N65]CYX8'(((Y!'J*N*Z,6"LI*\$ ]*=D>M &3=>&
MM(NY+65[,1RVB>7!+;R-"\:?W0R$';[9Q6A:6=O86L=K:0I#!&,)&@P!4V0!
MG/%<=XF\:-9^!9_$F@_9KJ.*<1!IB2K#SO))7:>1G)'/(H U=:\'>'O$5Y!=
MZMI4%U<0#:DC9#;?[I((R.O!R.35J_T#2]32U6ZM%)M#NMGC8QO"<8^1D(*\
M<<&M$,I) ()'49Z4;UW[-PW8SMSSB@#*N/#&C7>COI,]BDEC(^^2$LV)6SDE
MSG+'/.23S3SX?TQM2M=1:!VO+5#'#,TSED4]1R>A[^O>M.D5U?.U@<'!P>AH
M Q1X0T!8-0A73(ECU!F:[5"RB4GELX/0]QT-2?\ ",:1Y^GS?96\W3E*6;><
M^85(P0OS<9''TXZ5J[U) W#)Z#/6E#*V<$'!P<'I0!E1^&-&B&HJ+)674@1>
M*[LXGR,'<"3DXXSZ56L_!/ANPFLIK?281+9;OL[N6=H]V >6))X4 9Z8XQ6]
MO7<%W#)Y S7.6.OWT_C_ %/0)X;=;6VLHKF)TW%VWLR_-GC^'L/QH D'@CPR
MOB Z\NC6PU,OYAG /+_WMN=N[WQFM/5[F^L]*N+C3-/&H7B*#%:F81>8<CC>
M>!QD\^E7-ZERFX;@,D9YI<B@#%\/V%S";W4]0MHK?4=1D62:*-@_E*JA40M@
M;B ,D^K''&*=<^%M%N[Z>\EL09;D 7 61E2X Z>8@(63T^8&M<L "20 .IH#
MJ4W!AMQG.>* ,S5_#FD:Z;4ZE9).UHQ:!MQ5HR1@X*D'!'4=#51_!/AM[.[M
M#I$ M[R7S;B-<J)6ZC=@\@8&!T&!Q6\&#9P0<'!Q075?O,!SCDT -AB6"%(D
MW;$&!N8L<?4\FLY/#NEQWM]>);NMS?*%N95F<-* , 'GL.!Z#I6FS!5+,0 .
MI-&X;=V1MQG- &)_PA^@_P!F6NF_8/\ 0K602P0"5]L;@Y!4;N,'D>G.*9JW
M@CPUKNH0W^J:/;W5U"H597SD@= V#\P]FS6CJ6L6.DQ0R7<ZH)KB*VC&1EI)
M&"J /QS] 31*=2_MFW$1L_[,,+^=NW>=YF1MV_P[<9SGGI0!6U7POHNM3VMQ
M?V"23VO^HE5FC>,=P&4@X]NE5QX)\-C3+K35TB!+*[E,UQ"F565\YRV#R,]!
MT':MXNH<(6&X\@9YH+*.I XSR>U &+K/A#0/$$5K'JVG1W?V7_4O([;T_P"!
M@[OUYIUYX3T&_BL(KG2[=DT_BU55VB$8P0,8X( R.AK8!! (((/0BLN[U?;K
M=OHUH%>\DB-Q*6^[#"#C<1W+'@#V8]N0"J?!/ALV-Y8C2+=;6]E\ZYB3*K*^
M<\@'IGG'3/:MR*)88EC3=M48&YBQ_,\FL:^\0QFPUQM+>&>[TI&\Q7/R"0)O
MVDCGIC/UJ7POJTNM^%M(U.Y$27%[9Q7#I'PH+*"< DG&30!2'@#PH(VC_L.U
MV&<7&W!PL@.<J,_*,]A@>U74\,:/'+?RI:%9-04+=,LSCS@!@ \]AP/0<=*U
MBZJP4L S= 3UJ&^NTL-/N;R179+>)I65!EB%!) 'KQ0!E7'@[P_=:/;:3/IL
M;V5JP>WC+MF$CH4;.Y<>Q%+:>#_#]A>/>6VEPQW+NCO+DEF9!A223SCK]>>O
M-94'Q!TF:#0)/MUKLUB1XXYEW&/>K*OECC);+ #.!P3[5)8^(M5UZXU9M%BT
M\P:;=R69BN78232)C=RO$8R<#(;.,\4 ;^J:18:U;+;ZA;+/&CB1,DAD<=&5
MA@JP]00:@_X1W2SIUU8-;%H+O/VG?*[-/D8^=R=S<<<D\<=*ET2^FU+0[&]N
M;?[-<3PK))!NSY;$<KGOCI5_- %>PL;;3+**SM(S';PJ$C3<6"J.@&2>!Z50
MU3POHNLW]O?7]@DMW;@K',K,CA3U4E2"5]CD5K!U+8# G&<9[4%U7JP'..3W
MH PU\&>&TT6?1UT:T_L^X<O+!LX9B<Y]<YZ'MVIMOX)\.6NA2Z)!I42:=,VZ
M6 ,V)#_M'.6Z#J3T%1:YK]]IGBWPWID,-NUIJDLT<KON\Q=D3.-O;L.N:Z,N
MJL%+ ,W0$]: ,MO#FEM?65ZUNS7-BI2VE:9R8@1@@<]QP?7O5>7P9X<FBU&.
M32+9DU)M]VI4XD;()/L<@'(QR >M;A95SN8# SR>U&]?E^8?-TYZT 8MKX0T
M"RO4O+;3(8KI(#;K.A(<)S_%G.>3\W7GK5W2=&T_0K%;+3+<6]JI)6)6)523
MDX!)QDDGCUJZSJ@!9@H)QR<4$@8R0,]* ,Y]!TU]8.KF!O[0,/D>>)7#>7UV
MC!X&><>O/6JG_"&>'_[(;2?[/']GM)YK6WFOL+YW9QN]>?KSUK0U35K+1](N
M=4O9UCM+>,R2/GL.P]2>@'<U:\U!&)&8*I&<L<4 94WA;1[B>>::U=VN%5;@
M&>3;.%  $B[L/P,?,#2ZAX8T75=1M]0OM/BFNK=/+CD.1\F<[2 <,N>QR*I>
M-]?OO#>A1ZA8Q6\I-U#"XFW8"R2*F0!C)^;UKI* , >"?#BV4%FFEQI;P3_:
M(T1V7$N<[^#RP).">15G4?#.C:M>VMY?Z?%<7-JI6*1\DA3U4\_,/8Y%:U%
M'/IX(\-Q6T-O%I44<,-Q]JC2-F4+-G.\8/49.#VSQBKT>@:9%JLVIK;?Z;/'
MY4LK2,Q=.RD$X(]JTJ* ,+1?!GASP]>2W>DZ3;VD\N0SH#P"<D*"<*#Z# XI
MJ^"/#*>(#KJZ-;#4R_F&< _?_O;<[=WOC-;]% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !7
M-^/[Z^TWP!KE[II=;N&T=D=/O)ZL/<#)_"NDI&574JRAE88((R"* .*@T[P\
MHTGQ!H3*+S[%*EDELP"W8,>[$@'+X*YR3P3SR:X^5(;SX&0>);8_\5!$JW*W
MRC]_]J\W:P+=3DY3:>,$#'2O3=&\)>'_  ]<3W&D:1:6<T_$CPQ@$C.<>P]A
MQ3X_#.BPWK7<>G0K*\OGL!G89?\ GIL^[O\ ]K&?>@#C=>,/@[QQI?BR>T1(
M-2MFL+_RD!*SXWQL/4L0R>_RU'K<8\/R>%-.NC96EKJ-Y/)J#RP[H&N60LJN
M 5R-S,%R?X5]*]%NK.VOHTCNH$F1)$E4.,X=&#*P]P0#46J:3I^MV$ECJ=G#
M=VLGWHIEW#(Z'V/O0!Y3XT\.6>C^!/&*PZ@DWFO;77V2"+RX;1VD"DH,G&X#
M)&??O71ZUH?A_2-;T6RM+)C?:C>R7*6S38@N9$B(:2;<&SM!R,#);!]3721^
M#_#L6A_V(FD6JZ86WM:A/D9O5A_$>!UST'I4^H>'-'U:VMK?4-/@NHK5@\(F
M&XH?8GF@#RZW%T/AMXVM+.\@A:WUV=(TC?RXS&'B+1)R=H;<R@>KX[UU-EX?
M,_C_ /X2"UTO['80Z8(A"X5#)<[L@A5/\*Y7=WR ,@5;\2>$8?[%N8=!T/2Y
M&N[F*6_MI%$8NXU.2F[!"G@8.,=>AYJAX=\&6MKK-KJ5KX5B\.O;L6=H[O>\
MP*D;-J';MY!R3V&!W !@^'K*U\4>$-(UNYUFTM=2M;E9I[F&UQ=BY#$-$[%\
MG<3MVXY!  QBNW^(L,<_PY\1!XU?9I\[KN7.U@A((]QZU<C\'^'(=>;7(]&L
MUU-B6-R(QNW'JWIGWZUL2Q1SPO#,BR12*5=&&0P/!!'<4 >;77V<^*/A?(#'
MYSPS L,;F3[(<<]<9KGIM!TR;P/\2;F6U5YK+5;U[5V))@98XV#)_=.>XYP
M.E>G6O@GPS9"W%OHEFGV9S)#F/=L8C&1G]/3M4X\*Z&+6\M1IT7D7KF2ZCR=
MLS'J7&?F)[D]: .1LKU=8^(UAIFL!)H$T".ZM89P"DLKMB1\'@L  /8%O4US
M%O=1Z#X9U:&!XK;2SXUDMKIF4M'%;DCA@"/DR$!&1P<=#7JE[X4T+4;>S@N]
M,@E2R_X]MP.Z(>BMG('MG'%.@\*Z!:V=Y9P:/9);7I+7,0A7;*3_ 'AW_IVH
M XZ_\-V-C!XENH]0MV^W:/([V%E!Y4.47Y9L!CANV>^/:M?X=:!IECX5T75K
M>U"W]WI-JL\Y8EI (U(!R<<9P/8 =!6MI_@_P]I6EW&FV&DVUO9W/^OBC7'F
M^S'J1VP:TK#3[32[*.SL8%@MHAB.)/NJ/0#L/:@#@%_XE/Q\EGOCLAU;2!#9
M2MPK.C@M&#ZX&[%>AS7$,#1+(X#2OLC7J6/7@?0$^P!-5]4TC3M:M/LNIV4%
MW!N#!)4#88="/0^XYIFGZ)IVEL7M+8+(5V^8[M(^WTW,2<>V<4 <3\((GTS2
M-:T*[^34;#5)O.1OO,KX9)/HPZ'VITEN^I_'F&ZM?F@TK1S%=R+T$DCL5C/O
M@[L>E=G>Z%INH7*W5Q;#[2J[!/&[1R;?[N]2#CVSBI;32K&PLVM+.VCMX&)9
MEB&W<3U)(Y)/KUH \T\!:)<:MX7\0QQ:]J.G"36+U<VIC 7Y^N2A/Y$?A63I
M]]]J_9V\0VPM+>"*P$]G');@B.X52#YHR2>23DY.2#7IT?@CPS%%)#'HMJL4
MA+21A?E<GKD=#^-7KG0-)O-*72I]/@;3U 46H3;%@=MHXQ[4 >:O VF^)?"E
MUXGN)=0T&6"$:=++M1+&\VC&\( &W#[K-G!_.NX\7//=VMOH5FD<EQJ+E9$D
MD*+]G3!ER0"0",)G!YD%:4V@Z5<:,=(GL89M.VA?LTHW)@8P,'L,#'IBF0>'
M=)MKR&\ALU6Y@C\J*7<Q9$_N@Y^[[=* .'62^\+?%BWO+ZWM;6Q\31"UD%O.
MTBBZB'[MB2BX+*2H&#DUZ.MS ]P]NLT;3H SQA@64'H2.H!JEJOA_2=<,)U2
MPAN_(;?%YHR$;U'H?>JMOX:L[?Q9+K\<$45RUM]F+IDO*OR<N3Z;  /J23G@
M Y[XE65G=7?@YKFU@E)\001$R1ALH8Y,KSV) X]A58Z-I>K?%G4K.[LX+BQ7
M0K8+;L,Q$>;(!\O0X[>G:NYU32-.UNT%KJ=G#=P!Q($E7(##H1Z&H8_#VDQ7
M[WT5E''=/%Y+2H2K&,<!>#]T=AVH \GT35)(?!G@&TO+J&/3;B\N[>62[0R1
M91I%@1QN&1QP"<95?2O0O"FAV^A:KK26VHQRBY>.X>R@B\N&U8@@E!DXW8R1
MGW[UH?\ ")Z =$?13I-J=,=MQM2F4!SG('8YYR.]6M'T33- L%L=)L8;.V!+
M>7$N 2>I/J?<T <-)_Q*?CZMU?'9;ZKH_P!FLY6X4RHX9HP?7 SCWKT.:XAM
MS&LKA6E<(B]2S>@'T!/L 3VJ#4])T_6K,VFIV<%W 2&V3(& (Z$>A]Q46GZ'
MINEOOM+8+)MV^8[M(X7T#,20/;I0!YMI\-MXA^&OB?4M611K4%Q>M+<-Q+:R
MQ%C&%;JH50F /ZFGV=F=9\9>#9=<MQ)=7GAV1[V.3.)&_=9#+T/4Y!XKT&;P
MSHMQ?2WLNG0M/,5,QY"RE?NEU'#D=BP.*GFT33;C58M4EM4:^B79'/D[D7N
M<\ ^E 'D7_"/Z4_P_P#B"&LXV&E7]\-/#9(M J*Z^4/X/F)/&*V9M-M-;\?^
M%UU)#<)=^'Y'N$=SMF(,7##/(YSCO7=KX5T-;6\M1IT0@O7+W4>3MF8]2XS\
MQ/?/6N<O_"SR^/M%N(M*D_L>PL);99$G5#$S,I4K\X<  $<>N!Q0!REM;V.B
MV_B/0)&NFT1?$%K;Z;;12@*\KA9&@+,"!%N^\/3/<\V?LZI<_%"QF6VCC73X
M9A;VV5CCD-O(20/[WRKDX&<9P*](N/#>BW6CG2;C3;>2P+;S"R9!;.=WKNSS
MGKFH1X/\.JTS+HUFAG@%O*4C"EX_[IQV]?7O0!Y]:Z79::?AAJ=I L5]<B.&
M>X!.^5&M22K'J1P, \#'&*M7,:^"?%NKZ796D:P^)HA)IV(@52ZXC="/[N&$
MF.@ :N[/AC162Q0Z?&5L,?9!DX@QTV<_+Z<50T^WUK5M<CO=<TRUL8=.>7[&
MD=QYS2LWRB4_*-N$+#').\YQ@4 ;6E:9:Z-I5KIMG&([>VC6-% [ =3[GJ3Z
MUYOIAGT+Q#HR:OI]M?V5U?R-IFO6F!(7E63"3J1GD,PR#CY1Z5ZI65:>&]'L
M98Y+:Q2,QLSQJ&8K&S9RRJ3A6.3D@ \GUH \EO\ 2+&Y\!?$349K=7O+36KV
M2VF8G= RLA#)_=.>I')[UU&L_8=8UN\B:-+J]AT)3<_;2#;V\;[CN1,9,C8Y
M.0  O/:NN'A/0A975G_9L/V:[D,MQ%SMF<]689Y)[D]:67PIH$]W;7<VDVLM
MQ;1B&*21-Q5!R%YZ@=L].U 'G,=P]SX ^%\DLIDD.JV(9F;)SY<G7\*ZBT_Y
M+3JG_8"M_P#T=)6VG@_P]'9VEI'I-LEO:2>=;QHN!')_?&/XO?K5R/1--BU=
M]52T07[IY;7&3O9?[I/<>U '(_$^UAN$\*^874MX@M(MR.5(5MV0"#QT'/M6
M)>:;IO@[QSJZV!FT_19_#LMUJ,=H2/*=7VK*@[.1NQ[@FNH\?Z->:[!HEO:Z
M<;R*WU6"[N5WHH\I-VX?,PR>>!^M=!;Z)IL-O<Q"S1ENUVW'G$R-*N,;79B2
MPP2,$D4 ><:7;PV?CKP>D5M:VMM=Z/<(848,\L06,H9F  8G)/3&=W)I+>SC
MT+4]:^'L=LJPZQ,+BP<)P+:3_7KGUC"OMSZK7=6_@WPY8?99+/0[%);(L]L?
M+&48@<@_@/I@>E0:%;:QJ&HKK7B#3;:PNH8&M[>VAG\\H&8%W+X'WMJ #MM/
M/.  ;RV=JMD+(6\7V4)Y?D[!LV8QMQTQCM7B:6EG!^SC<20P013S3 2/&@5W
M"W^!DCDXZ#TKW.L-O!OAQK6YM3HUH+>ZE\Z>,1X61\Y!8=^>?8T <I/80Z!\
M58O[&M5BDNM"N9)43/\ I$B2(59_[S9)^8\\]:S/#EA9>(O#'AO7VUJT@O;>
M>*66X@ML74EP?EDAD8N2VYB01CGC  KTG^P=,_M*'4C:*;V%/+CG9B75/[H)
M/3V[U5MO!_ARSUQ];M]&LXM2<DFX6,!LGJ1V!/.2.3F@#/\ B1J-QI7@:]NX
M':,+)"LTB@DI"TJ"0X!!^Z6Z$'W%9D'AS3!K2ZG!J5CLO=/>$V>G6XBAN8P,
MB1@';.W( ;W [UW<T,5Q!)!/&DL4BE71U!5@>""#U%8VE>#O#NB0W46EZ1;6
MB70Q-Y2[2X]">N/;I0!Y1:Z18K\+_ >JI#LU$ZA9Q?:T8B4(\I5E#@Y"D$\
MXKJHM(T_3/B;K&F6-K';65UX>6>>"$;%>03.N\@?Q8XSWKL#X3T$Z=;Z?_9D
M/V.VD\R"#G9&W4%1G ([>G-+>:)8QS7&J6^G^;J9MS"LBM^\9>R98@8SS@G'
M>@#R!= M8O@UX=\3:>C+XDMVM3:W*N3([-,$\OKRI#'Y>GZUV=Y<75K\1_%=
MQ8IYEY%X<B>!,9W2!I2HQ]<5H> /"4>C^%-(@U/3!#J-DF"K2!T63G,B@,5!
M()^; /)KI8]%TZ+5Y-6CM$6_D78]P"=S+V4GN/:@#RR_BA;X,Z+XETC!\01_
M9)HKM/\ 737+R(DBLW5MQ9@0>/RK9UQK?P%X\_X2%+,-9:Y;FVF6-.1=H"T>
M/3S!E?=@":[.V\,Z+:7?VFWTZ&.3S3, N=BR'JX3[H8Y/S 9YK/DM]:UG7Q!
MJ6F6MMH]C="X@F%QYCW3*/D^3;\F&.XG/50.F30!R^I6R>'=2\(:%<R6-O:7
M@N9+EYX-T$UYA&&Y=RCDM)M!/IZ#&9XM\.6>C^"]8MX-0$X.K6DXA@3RX[)Y
M)D#+& 3MR#G;GC.>]>I:OHNF:_8-8ZM8PWELQ#>7,N0".A'H?<54_P"$1\/?
MV-%HXTBU&FQMO6V"83=G.2.YSSDT 6=(T+3-!BN(M+M%MDN)C/*%).Z0@ MR
M>IP*\XT[PEH6OZQX]M=4@$D,5\/++R'$!,"DNO/#9[^WUKU:-%BC6-<[5&!D
MD\?4UPVA>%&E\2^*+O6=(=(-1NEDA9IE(EC$:J4=4;D9!.&!'- ',>$-0OM3
MOO NG^(P9K:?19IXEN!E;B=7 4L#]XB+YAG^\35?Q'9FTT3XG:5"F-&LT@GM
M(@?E@F>/=(J>@R5.WH-WO7KFH:-IVJP0PWMG'*D#!X>,&)AT*$8*GW&*BE\.
MZ1/I4FF2V$3V4C%Y(6!(D8]2W]XGU.<T >>^,/"FA:?IOA^ZATV#S[S7-.^T
MRR#>9<M@[BV>HZ^O?-:]S:VMK\8="^R11QJ='N4VQC"@*\8  ' QTKK;K0=*
MOM)72KNQAGL5V[8)!N4;3D8SZ=J0>'])74+>_6QB6ZMH_*@D48,:?W5QT7VZ
M4 >7VB0:W\%M6UV_ 3Q#!]KN);KI/!=1.Y10W5< (H [''>M"UTR+6/B7IG]
MMV:237/A59;R"0?(\OFIN#+T(SV/' ]!7>-X9T5[^6];3H?/E<22XR%D<=&9
M?NLPP,$C/%3/H>FR:M_:K6JF_P#+\K[0"0X3^[G/3OCUYH YGX6CRO"MU:(3
MY%IJEY;P(3G9&LS;5'L*C\-,[_%OQQYV=R0Z>L.>T?EN3CVW9KK-,T?3]&BD
MBTZU2VCE<R.L><,QZM]3W/>J=UH[1^)(M>L@IG,'V6ZB)QYL6[<I!_O*<XSP
M0Q'H0 </HNGZ?;R_$>2.SM8IDN9DC98E5E4VRD@'' /)Q]:S;'3+/3]#^%NK
M6L"QZA//:P2W()\QXWMVRA;J5X&!T':O3Y?#.B37EY>2:9;&YO8Q%<RA,-*N
M,8)'48 'N.*8?"NAFWL[<Z=%Y-BP>U3)Q PZ%!GY2/:@#SZ"SM_&-MXIMM4U
M.QM+RUU.99)I(/\ 2;2-'S$Z2%QM7:!@@8^]UR:]2LLFPM]TKS'RES(Z[6?@
M<D=B?2LN^\'^'-3UB+5[W1K.?4(L%9WC!;(Z9]<=L]*VZ (!9VJQQQK;0A(F
MWQJ$&$;U ['DUY]JG@Z/5]0O/%'@K6)-'UQ9I8;C:0T%S)&Q4B5.1U7K[YP3
M7H[[MC;,;L<9Z9KA)?"FJ323N=&\.HUP[//Y5Q/'YY8DDR;5&_.3][- &#+K
M4GB72/AQX@O;2*WO9]86*0J..%E4[3_=8J"!GTZT[4(;5]9^*\<:IM&E6\A$
M9QB003'/'?.#72ZAH>N:II::9>Z1X:EL8]IC@+RA4V_=VX7Y<=L5E:IX6UV+
M1M573?#_ (=6[O+)[0M;.ZR;2A4 %@  ,^M &)<>'[33M"^'_B#2(VCUJ6XL
M(7G5R6N(I(QYB-SRNT$^P'&!4NG^$M#UN'Q]'J4(9;?5)S"[2-_HY\E#O7G@
MY[^V.E;7AGP]XDTO2M-SI&B0W5I;K$HFN97,9V@,5 !52V.=N,YYK-T3PKXH
M.IZ]/J.A:4HU"\-P?/NG*2+M4!"J$[EX)PP[F@!FG7%]=+\)Y]39VNY!,SM)
M]YO]&;!/N1@T06=MXQMO%%OJFIV-I>VNISK)-)!_I-I&CYB=)"XVJ% P0,?>
MZY-=1>:/X@O[NUN[K3?#TMQ:'-O(9I\Q'N5^7C\*IWWA&_U/68M7O?#_ (5G
MU",@K.[2ELCH3\O..V>E %&VT73M1^*MW;WT(O89?#UO)*MPGRS-YKC<Z'C/
M X(X/TKDVTNSB^"4FK+#G4=-OREE=,Q:2W5+W:JHQY4;>,#BO1?[%U_^U)-3
M_LWP^+Z2/RGN!<3ARG]W.WI[55_X134_[+?2_P"Q/#7V!W\QK;S9_+9LYR5V
MXSGGZ\T 5+L1:_\ $#Q%H.IS:>-EK +2&]MO-W0LA+M'\ZX.\D$@9X7T%9KZ
M%8KXG^']A)>R:K"+?4('N920;A$0!0V#\RCD>A'J#6[J_A+4=?%M_:VA>&+P
MVPQ$TTDS,H],[<D>QJS+H>NS7EG>/I7AS[19+LMG$LP,*XP0F%^48XXZB@#@
M]7L+2V^'GQ*TZ*VB6SL=1+6L.P;8"4B)V#^'DGIZFNSU&UT=O%.C:19VD#W4
M5E-.EHX5;.*-B@:1D"_,^3@ 8X+9(ZU*GAS6(X[Z-='\-E+_ #]K5I9F$^>I
M?*\GW-0OX1OY8[%'\/>%&6Q!%L"9?W8/4#Y.0>^>M '(12E_@+9(91)Y6JQQ
MK@\!!?X4#D\8&!["O;*X(^$M0-B]E_8'A<6LDQN'B#S!6DSG<0%Y.>GIVKM;
M%;A+&%;H1"=4 <1,67/L6Y/XT 6**** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH *ANO/%K(;9HUF"Y0R*67/N 1_.IJ9+_J7_P!TT >96WQ(UN+X>V?C>]TV
MQETR1\7,%N[K+$GFF/<I.0W....O6O2!?6OE02&>-%G ,6]@N[/(QGZUY9\.
M?"=KXG^$6@V^J7U[+IVYY'L%9%BD*SN0&(7>1D9QNZU8\7G3KN7QW';)"9[3
M24CO);TAEB_=.T:0)Q@G.2V<;L8!- 'J)DC#["ZACV)YI&FB4.6D0!!ELL/E
M'O7E^JVZ6OACPEX[AB6XO-'MH&O6 #/);/&HER>[+G>/3!]:C\:V-K?_  H\
M3Z_+;1&;4MMS$[(-RQ*56$YZC*#=]7- 'J8GB,CQB5"Z#+*&&5'N.U+%+'-&
M)(I%D0]&0Y!_&O.-9\/Z1#\3/"4<=A J7UK?+> +_P ?(58V E_YZ<DGYLY[
MU@7%Q_8'A_QI!9C[-IEOXB@69(4^6&W?R3+A1_"03D#L30![+%<0W 8PS1R!
M3M8HP.#Z'%"W$#NJ+-&6==RJ&&2/4>U>>RZ#HDE[?:G!JMM=->:/)$]I:QQB
M&:)>5D8+GD$@!O?%<[9:98V7A#X8:K;6T<>H2:A9Q/= ?O&1XG#(6ZE< #'0
M8H ]7L];L+_5;[3K:=9)[$HLX4@A68$[?J ,GZBGWMY(VFW;Z9):2WD<3^4L
MLF(]X' <CD#.,UY]I]CIB^)OB0)'@L"/+5;I$ >W#6F6=>_]YN.N#5OPH][I
MWBR#1-?TBRCU :<ZVNI:?@0W<"L@(9,95@2I]/F..O(!H6WB+Q--#X;E?3M.
M"WSO%?*DK%P02%DA'=,#?SV(K=TK6#=ZA?:5=*D>HV)4R*GW9(W!*2+GG!P0
M1V*D9/!.M@9SCGUKA9-X^.T/E9VGPZWG>F!<?+^N?UH [EW2-"[L%11DLQP
M*:L\3PB994:(C(<,""/K7%^*[IA\0?!]A> '2KAKDE7&4>X5!Y8;MD98@'O[
MBJ^DZ>D/Q%\5:;%;QMHDMI;W$UNR Q)<MNSA>@)50Q]\&@#0\.:[KGB6#2M;
MLSI_]CWAD,ULZL)H4RPC8,"0Q.!D$#KQTK>?6[+^W#HD<Z'4!;FX,>?N+D*-
MWU)X^AKF/A#:VT/PRT2:&"*.6:WS*Z( SD,V-Q'7'/6H?L=@/CC/)+;VV[^P
MHI59T7/F?:& 8'^]T&>O2@#7\&>(KK6],NIM4:UCN8M1N+-!$"JL(W*C )))
MXS7233PVZ!YY8XE)P"[!03Z<UX=?Z98GX4^+=6:VC;4+76KE[>Y89DA(NAC8
MW5?PQFNMO)K?4OB/K6CZO=VL"M80?8HKN%762)@WF[-QQG=UQR<#^[P >D5$
M;B 7 @,T8F(R(]PW$>N.M9'@ZQM],\*6-C::A-J%M;JT<5S,06=0Q Y'! Z
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
MDZA)#+=Z?;RR0IY<;LGS*G=<]=OMTJ_%%'!"D,,:1Q(H5$1<*H'0 #H*?10
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
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
M-3WVGV6J6IM=0L[>[MV()BN(Q(A(Z'!&* .*T6>&\^*/B6RODADC%A:?V:C
M,C6I5O,V#I@N0#CK@>E6/A?'<0>&KVW9F:Q@U2ZBTXL<_P"C+(0F#W&0P'MB
MNGO=$TK4?)^VZ;:7'D#$7FPJVP="!D<#VJY%%'!$D42+'&@"JB# 4#H .PH
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
MBM9?#W@/4?#RQK<B^M$M'AP"T+J?-0X_AV@EA_LU+?\ G>$?B!>PV$(6/Q3
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
MZ&/<Q!'&]LUI:+%X<U'Q;:ZYIOB&74[]K(P[89(2GD9!!D"(",' &><]N#@
M[.>>&U@>>XECBB09:21@JJ/<GI5=-6TV2P-^FH6C68ZW"S*8Q_P+.*Y#X@:B
MNEZSX5N+V[DL](^V2+<7*A2L4IC(B+;@0!DMR1QUXQ7+^,]*T"/P'XTO=-U%
M]2:Y:WGGD+1/#'-O490HH <C&[OROK0!ZN-5TXS7$(U"U,MLNZ=!,NZ(>K#/
MRCZTJ:II\MA]OCO[5[+&?M"S*8_3[V<5PVLZ1I:?%7PI$EC;*DME>"1!&,2!
M?+9=P_BP<D9[\UR.NVUJGP]^),*PQ"&VUS?$@48B),&2O]WJ>GO0![1#J-E=
M7,]K;7MM+<P<2Q)(K-&?]I0<C\:P/!6M:AJ\.N_VG+"\ECJ]Q9HT4?EKY:!<
M<9/J3R36'JNAV%E\2?!USH-M!;SLMS]J-NH DMO+^\^.HWE<$]VKFKZ>XA\!
M>.);<,\"^*IOM@CY/V?S(_,'';;G/MF@#UZVU;3;T2FUU"TG$(S*8IE;9_O8
M/'XTL6J:?/;27$5_:R01_?E292J?4YP*X[7XEF\?^"KW1V0RN)Q,\)&U[/RP
M?FQU4-LQVRPQ65]DFT3Q)JG@B"!ET[Q!)]LM'1<+#&W%VF>W ^7T,@H ]$N-
M7TRTMH[FYU&TA@E_U<LDZJK_ $).#4MQ?6=G:_:KFZ@@M^#YLL@5.>G)XKSV
M[O[&V^).L:9K6J_V7!/I\"V'F"%8I80&$B R*0/F/(&,CUQ6;!+I?AG6O"MD
M-;O+?P]]@N8=/O[AHV!F\T'EF0J 4R%; ^7@'!.0#UBWN(+N!)[::.:%QE)(
MV#*P]01P:AO-3L-.V?;KZVM=_">?*J;OID\UA^"M.TC3;"_31+Z:]M)KZ29I
M7=&C$C8+B,H NT'L. <BLG0)EN/B%XTL=75&F98#"DP!#V?ED?+GJNXMGW/-
M &UXS\40^%_#SWPD@-Q(R1VZ2N &+NJ[L9&0N[<<=AVJQHO]I":\FNM6M-1T
MM]KV<T:A77KO#%?E(! P1SUS7ETD4T/P-M5NV+0IJL2V32G)^S?:U\OD]MHX
M_P!G':O:0BJFU5 7T XH XC6_'<%SX+\0:IX:U"T>YTP2;2X$@?8!E@H8<9.
M W(X[UU&F:M:WL<,'VRWDOA DLT"R+O7(!R5'('->5K-:K\*OB#;B2(7*WNI
MDQ@C>%\STZXY'YUMRV=G8>.?AVUI!# \]K=K(T:@&0>0K?,?XN>>>] '?OJF
MGQWZV#W]JMXWW;<S*)#]%SFG:C?VVE:;<ZA>2".VMHFEE<]E49->1Z*VB>(?
M"!T_7_$%U;:M:W[O<V4;0I<"[$I*F/*;R6.,8)ZXKT/QYI%SKW@36M,L^;F>
MU81+G&YAR%_'&/QH KZ#?^(/$FDP:RLUKIMM=KYMK:O;F9_+/*M(V\<D8.%Q
MC/4UIZ/?WW]E3S:\MM:SP3RI(R,1%L#':P+=BNT\^M9O@#6[+5?!6F&&15FM
M+:.WNH&.'@D10K*RGE<$'KVK)\8:JKZYX-N2V[06U1UN)3_JVD\LB%B>Z[R2
M#TR ?0T =M;:A97ELUS:WEO/ N098I591CKR#BHX]7TR:XAMXM1M'FG3S(HU
MG4M(G]Y1G)'N*X+5;%3\0_$GDQHVG3>'=^H(0"AN-[>66'3=L!_ "L'^S-/_
M .%=_#2;[+ )9=1L$DDVC<X9&#*3U((X(]!B@#UZVU.PO8Y9+2^MITA8K*T4
MJL$(ZAL'@_6FQ:OIDUS%;1:C:27$J>9'$LZEG3^\!G)'O7GMU8V4/CKQC9Q6
ML"6TOAZ*22%8P$9@90"5Z9 Q6$VAZ?)\*_!-_I=M NN^?8_9KB(#S7DR X+=
M2 H;(/ "^@H ]@FU73K>\2SGO[6*Z<@)"\RJ[9Z84G)S2W&I6%HTBW-[;0F.
M/S7$DJKM3.-QR>!D@9KQWQIJ6GW'A3QM]AEM[01ZJJSI/)ON)[A&B!903\B
M+P #D*3Q74"STK4/C6\GD6ES&_AY)<[5=7;[0PW>A..,T =Q)J^F10PS2:C:
M)%.,PNTZA9!ZJ<\]1TJ9KRU6Z2U:YA%Q(NY(BXWL/4#J17EGA_P]_P )!\(I
M;*RV)>V.HW,^FOQ^YFBN':,#T';Z&NH\':J/%*MXKG@-L@MUM8DE&WRR/FG/
M/;?\G_;+/>@#L:X]]?U@?%-/#0DLO[/;3#J!8P-YO$OE[,[\>^<?A746-]::
MG917EC<Q7-M*,QRQ,&5A[$5P\I1OC]&C;3GPPP*GO_I(XH [)M9TM&C5]2LU
M:24PH#.H+2#JHYY;D<=:NNZHC.[!549+$X %>&W6F:<OPD\=W*6EN)H=7O!%
M($&Z/;.-H4_P@=@/6O<(B'@0G#!E&??B@#A/$/CZ.?P#K>M^&+^T>>P+@%P)
M-P5MI8*", G."<@^AS796FI6=U*UK'>6\EW&@:6%)%+IGU4'(KQYYK4? [Q=
M;K)$+A+J]WQ@C<H^T'&1U'4?G757EG::=\3?!OV"WA@:?3[U)#&H4R +&PW$
M=>23S[T =P=4T\:@+ W]J+TC(MS,OF'O]W.:MUXWX=;0_$/@[3[76O$%U#K%
ME>B2:Q1H4N5O5D/W04WDLQZYYSR>#CO/B-)>0_#W6I+%9&F6#+"+[QCW#S,?
M\ W4 ;4.LZ7<>?Y&I6<OV<9FV3JWEC_:P>/QIZZKIS6C7:W]J;93M,PF78#Z
M;LXKC-(3POK7B/1M:T_Q!+J%XEM)%##"T( @9>1*B("%!Q@'&&('>L_P_:R:
M?K&H?#XPG[%!>#4(#M^7["[&39[XE&PCN"?2@#T*ZU;3;'ROM>H6EOYW^J\V
M94W_ $R>?PJ2>_L[5]EQ=P1-L,FV20*=@ZMR>@]:\UDN]+NO%7C+1/$NMG36
MN"FQ)FA1)K0PJ!M:1#T;>>#P23US1:Z-I*_$/PK;)$UU;KH4P1[Q0TDJJT8C
M9^!DXZ9''L10!V^L>+-&T70/[9GOK=[1L+"\<JL)F)P%4@X//Y<GM6M#<P7%
MN+B&:.2%@2)$<%2/J.*\5ODAA^%WC*)%1+>U\4LJ*  L2"ZA.!Z#DU[5;RV]
MQ 'MWCDA.0&C(*G!P>GOF@#C-:\=P7/@WQ#J?AK4+1[G3%EVEP) ^P#+!0PX
MR<!N1QWKIM+U:UO8H(/MEO)?_9TEF@61=ZY .2HY YKRQ)K5?A=\0[<21"Y6
M^U,F,$;PN_TZXY'YUM26=G8>-?AR]I!# \]M=K(T:@&0?9U;YC_%SSSWH ]
M?5-/COUL'O[5;Q_NV[3*)#]%SFG:A?VVEZ=<W]Y(([:VB:65S_"JC)/Z5Y'H
M[:)X@\(/IWB#Q!=6VK6VH.]S91M"EP+H2DJ8\IO))QC!/7'M7HGCK2+G7O N
MM:99\W-Q:LL2YQN8<A?QQC\: *V@ZAX@\2Z3!K2RVNF6UTOFVML]N97\L_=:
M1MXY(P<+C&>IJK?^+]1T+1(O[3L89-<N]1-A9VL+%8YF+?(V3DA=N&)[=*M_
M#_6[/5?!.F>5(J3VEM';W4#'#P2(H5E93RO(/7M7/_$0^?-X6\4VRO-IVCZH
M'NG1<@0M@-*/55QU_'IS0!O:U>^(_#NBS:S)/9ZBEI&9KJTCMS$3&.7,;;S@
M@9.&!SCM5#Q!XPOHQX4NM!GLGLM>NHX ]Q;LY574L&&'7GC&#6MXTU6UM? V
MI3"19OM5H\-JD9W&XDD4JBH!]XDD=*\^U70WT7PS\,=$U"1DFBU.%9MDI1E)
M1BP#*01@G&0: .UN_$FJZ%XOT;1]5%G=VVL&2.">VB:)XI$7=AD+-N4@]01C
MTJ!=<\1W?Q!U3P[;76F0P6MG'=1R263NQWDC:<2@<8ZU@>)+:+P_\3?"MUHU
MS+?:A>3FUN+.ZG:Z:*V/WY4+DM'@9R00#^=&HZ7<:U\5_$]E8:K<:=>-HD B
MG@DVE6W'&?;I[\T =;X&\57'BBQU%;VUC@OM,OI+&X\EBT3NF/F0GG!ST-0^
M,/&H\+ZIHT'D>9;7%RJWTW:VA?*(Q],N1^"M4'PVU'3QX>ETH64.EZGICM'J
M5F#]V3O+DG+*WW@Q)^IQ5*70+[QKX?UFX^U6*V>O)B'S;9W=(%&(2&#@?]-!
MQP7/6@#T.BN1^&WB"37O!UN+Q@=3L&:QOESDB6,[23]0 ?QKKJ "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH *BN+:"[@>"YACFA<8:.10RM]0:EI&8*I9B H&22> * *!T+2"D2'2K
M$K"<Q#[.F$_W>./PI\VCZ9<ZA%J$^G6DM[%_J[AX%:1/HQ&119:SI>I2/'8:
ME:73HH9E@G5RH/0D ]*Y;X@>+3HNB.VDZO8QZE%<PQO Q1Y"K2(K *3P0&ST
M- '52Z3IT]VUW-I]K)<M&8FF>%2Y0\%22,X]NE-.BZ43;DZ99DVZA8"8%_=
M= O' ^E)=:YI-BTZW>J65N8$#S"6X5?+4G +9/ )]::?$&BB2SC.KV DO0#:
MK]I3,X/0H,_-^% $LNE:=/-/-+I]K)+.@29WA4F11T#''(]C49T+1S'%&=*L
M2D1S&OV=,(?88XJ)YG_X2=(QK-LL(M&+:857S&;</WN[.X* <8QCFG?\)'H>
M^!/[9T_?<2&*%?M29D<'!5>>2#Q@4 7YH(KF!X)XDEBD4J\<BAE8'J"#U%54
MT328EC6/3+)!'&8D"VZ#:AZJ.. ?3I4,DLG_  D\$2ZQ;I%]E<MII53+(=PQ
M*#G< .F,8YJ9=;TI[LVJZG9FX!8&(3KO!7.[C.>,'/IB@!AT#1C;K;G2;#R4
M;<L?V9-H;U QC-/N-&TN\N(+BYTVSFGMQB&22!6:/_=)&1^%9>D>-_#^LP7U
MQ;ZI:+!9S/&\CSJ 57 +\GA<D@'H<>]:0U[1V6X8:M8E;8JLY%PF(BWW0W/R
MY[9ZT 6K6TMK&V2VM+>*W@082*) BJ/8#@56NM$TF^NUN[O3+*XN44HLTL"L
MX7T#$9QR:IZGXMT/2_#MUKDFHVTMC;A@9(95<,X_@&#RV>,5:@UW3)M*CU+^
MT+1;5\#S?/78&/\ #NSC/:@"2?1],NM/73[C3K26R7&VWD@5HQCIA2,42:-I
M<UO!;RZ;9O!!_J8V@4K'_NC&!^%"ZQICZ<=174;1K$9S<B=3&,=?FSBG6FJ:
M??RS16=];7,D&WSDAE5S'D9&X \9'3- !'I>GQ7GVR.PM4NL8\Y85#X]-V,U
M&VA:0]DUFVE6+6K2>:8#;H4+_P![;C&?>GW^KZ;I84ZAJ%I:!LE?M$RQY^F3
M7.:OX@N].\?:)9M?6\>C7=G<SR[E  \L*0Q<GI\V>W2@#HVTC3'$X;3K1A<!
M1-F!3Y@487=QS@=,]*GM[:"SMU@M8(X8D'RQQJ%4?0#I5>'5],N--_M*#4;2
M6PP3]J293%@<$[@<40:SI=U;37-OJ5G+! <2R).K+&?]H@X'XT <SX:\(O::
MKKMWK.FZ;,U[J+7EM(/WKQJ54!3N08(*YX/>NIN-,L+NXCN+FQMIIHO]7))$
MK,GT)&144&N:3=-(MOJEE,8HEGD$=PK;(V&5<X/"D<@],4MMK.EWDOE6NI6<
M\F<;(YU8],] ?3F@!)-#TF5[EY-+LG>ZQ]H9K="9L'(W\?-@@=?2G?V/IGVA
M[C^SK3SW7:TGD+N88Q@G&2,4AUK2QJ(TXZE9_;B2!;>>OF' R?ESGI2R:SI<
M5Z+.34K1+HL$$+3J'+'H-N<Y.1Q0!&?#^BF!8#I%AY*MO6/[,FT-Z@8ZU=M[
M>&U@2"WACAA086.-0JK] *<[I%&TDC*B*"69C@ #N352QU?3=3:1;#4+2[:,
M N()E<J#TS@\9H =_9>G_;&O/L%K]J<$--Y*[R#P06QFBTTO3]/9VLK"UMF?
M[QAA5"WUP*Y3QQXM.EP6<>DZO8K>'4;>WGM\I)(4:158 9^7 //!Z]JZ:ZUW
M2+$SB[U2RMS;J&F$MPB^6"< MD\ ]LT 4-?M?$5_<QV6G2Z?!I5Q$T=Y-)O^
MT)GC]T!\N<9Y/0\\XP=N*&*&W2".-5B10BH!P% P!^54CK^C":TA.K6 EO &
MM4^TING!Z%!GYA]*C,S_ /"4"/\ MFV$*V9+:9M7S-V\?OMV=P4 [<8QSUH
ML6.D:9IC.UAIUI:,_P!\P0JA;OS@<TR30M(FN+BXETJR>>X4)/(UNA:51C 8
MXR1P.OI3!XCT,R6\8UG3]]RYC@7[4F96!P57GD@\8'>D:60^*(XEUBW$0M&+
M:9M4RLVX?O<YW!0#C&,<T ::(L:!$4*JC  & !31#&)FF$:"5E",^WYBH)(&
M?09/YFJ:ZWI+W+6RZG9-.N[,0G4L-OWN,YXP<^F*S-(\;^']9M+V[M]4M%M[
M65XWD>=5&U3C><GA2<X/?\: -^*&*",1PQI&@SA44 #/)XJI;:)I5E+<2VNF
M64$EQD3O% JF7/\ >('/XTT:]HY6X8:M8[;9E2<_:$Q$S= W/RD]@:IZKXOT
M32?#=SKLFHVTME &&^&57#N/X%(/+$\8H T[/3K'3D9;&SM[57.6$$2H&/O@
M5'9Z/IFG3S3V.G6EK-.<RR00*C2?[Q Y_&L^?5(;\Z1/I_B"QMX9;CYDRDGV
ML;3F)#G@YP<C)XK0O=9TO39%COM2L[5V&56>=4)&<=SZ\4 37EE::A;-;7MK
M#<P-C=%-&'4X]0>*@;1=*?S-^F6;>8BQOF!3N5?NJ>.0.P[5+<:C8VDL45S>
M6\,DV3&DDJJ7P"3@$\X )^@I-/U.PU:V^TZ;?6UY!N*^;;RK(N1U&5)&: (O
M[$TD^1_Q*[+]QQ#_ *.G[OG/R\<?A5JYM;>\MGM[J"*>"08>*5 RL/0@\&N:
M\8^++?P_)I=E]MMK>YU"\C@9Y)%!@B(8M)AO]T@$\9/?&*GL-3&C6CMX@\2Z
M=/%-*7LKF1XX2\) V[L$*QR>J@ C% &S!IFGVLJ2V]C;0R)$(4>.)5*Q@Y"
M@<+GMTIEGI&F:?<37%EIUI;33G,LD,*HTA_VB!D_C3[S4[#3[9;B]O;:V@;I
M)-*J*>,\$GTIKZMIL=E%>OJ%JMI+CRYS,NQ\],-G!_"@!&T?3'6X5M.M"+EM
M\X,"_O6]6X^8_6IX[.UAM/LD5M"EMM*^2J )@]1MZ8HM;NVOK9;FTN(KB!\[
M98G#JV#@X(XZ@BBZN[:QMWN+NXBMX$^]+*X15^I/ H D$:"/RPB^7C;MQQCT
MQ573])TW25D73M/M+-9&W.+>%8PQ]3M S2-J^F+91WK:C:"TE(6.<SKL<GH
MV<$TEWK.EV$ZP7FI6=O,^-L<TZHQR<# )[F@"Q=6EO?6SVUW;Q7$$@P\4J!U
M8>X/!JL-$TD:>FGC2[(62'*V_P!G7RU/J%Q@5.VH62WRV+7=N+MU++ 9!YA
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
M,P;>"Q)*D ?)DG'&,<CC%;-Y86>H1"*]M(+F,'<$FC#@'UP14ZJ%4*H 4#
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
MFPQ+<*6D3&=P&>1CGZ5QFI0I)\0?$&H6KQG3O^$<,=^ZD&-I]S&/<>FX)GZ
MCU%8#)IQ^&7PS5UMMK:G8!P=N#E6#Y_K^M 'JEGXDT/4;>YN+/5[&>&U.)Y(
M[A66+_>.<"FP>*- NK^"Q@UJPENYXQ+#"EPI>12,@@9Y!'/TYKBKUK8_$;Q=
M"IB/F>'8RZ#'S$&3J/4#'X8K!&GZ?J'PE\$II:6YUC[19-:O"!YBR@CS22.>
M%#%OIS0!ZQ<Z_I%G>?9+G4[2*XW*AC>4 AF^Z#Z$]@>O:FWGB+1-/EGBO-6L
M;>2"/S9DDG53&N0 6!/ R0/?->1^--8TZY\,>.+>UE@T^2+4@)K/.Z>YD5H@
M9FW$[4( QM ^[G/.*ZV"?3;WXVBXCDMI@?#BO'("#_RW;Y@?]T]?0^AH Z]_
M$FAQVMI=2:Q8);WG%M*UP@68^B$GYOPJVU_9I?163W<"W<J%XX#( [J.I"]2
M!ZUYAX8T./Q-\)+S3K.5$N8-0NI;&1"/W$R3N\1'H,X_ FNG\$:A<>)HCXEO
M;5[:5H5LXX7&"A3_ %Q'UEROTB6@#J+R_M+"-9+NXCA5VVKO;&XXS@>IP"?P
MKD_%/B.: ^&+S1M4A:POM7CM)VC"2+)&=^[#<XP4QQ[U+XTM7NM0T86&MKI6
MMQM-)8O,@>*;Y0'C=3UR".G(P2.E<;J.J#5M \(_VI96EI,/%8BGBC;=#,RM
M,'D3/5&8D_C0!ZCIVO:1J\$\^G:G:7<4#%97@F5U0CGD@\466N:7JDKP6&I6
MT\RQB3;'(&.T]'QW7WZ5YQJU_I^G^*/B-)<VHO+;^Q[9I[2)]IF&V16!(Y'!
M&3V%&E:K92?$_P /3#5[.Y271988_LN!$IWQD1H<DD@<G))[X% %M?$FO_\
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
M@4 =BFN:5)?+8IJ%LUT[LBQ"0;F902P [D8.0.F.:N2RQP0O--(D<2*6=W.
MH'4DGH*\NT:XN]&U30ULKRVUSPY?W\BVJ.,7>GRLLA;D<,JY<'/(S71?$V:X
MM?"<=Y$LS6]K?6UQ>"!0S^0D@9R 0<XP#TQQS0!T%OXAT:ZCN9(-4M'2UQYY
M$R_NL]"WH#V)ZUP5IXUGU#PZ?%D?B*U@CMI+EY]*<1%7A1I!&@/WUD8("#D@
MDGC&!6QX>F\,:IXG?7=*UB75+S[#Y,UR)%,<<6X,JN%  ;.2 >< US_AF[MC
M^SWJ+">+:+/403O'!+S8'XY'YT =%X<U6ZN[.P\0W/BBUETZ:S3[9:LL>V&X
M8*P".N"N,D;6+'IWKJ+35]-O[%[VTO[::UC+"25) 50K]X,>Q'?/2O,]0U6/
M3=!^'.J7%W+!HL5NL=U=0 ,()&MU6-FR" ,[QG'&ZHO$"Z3!X=U77/#]Q<ZK
M:/J5E=:M-&XDCGCC<%PNT '"A=V!C'7H: /1V\4Z$MG>78U6U:&R3S+@I(&,
M:GH2!SSV]>U97_"3V.O>%;#4K+Q!;:0;IX'WNT<A!)5C"0QQN(.WU&:J3ZAX
M9\0KJNI:&\%_J#Z1+#)=VS%@D>"5C;' 8DD@8SP:Y&^U'3KGX'>&/+NK>1K=
M],C<AP?+=7CW*3V( .1U% 'K":QIDFIOIB:A:M?HNYK43*95'J5SG% UC3#!
M/.-0M3%;OY<SB9<1M_=8YX/(X]ZY#QNTGA[7]&\96D$DZQDZ=?1PC+2PRG]V
M?^ R;?\ OJJ7BXR^&K#PM>WT\T=C!J#2ZI<VZAO+EE1_WA!!^42.>W'&.<4
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
M=TBB5K*(1L;)OF&[."<MCHWI5'X;ZI?:UX"T[4-3N#<7DK3>9*5"[L3.HX
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
MFCZG>:+/8)%Y!G2P;SY$QC^)RH8CO@C/:@"EIEQIP^+OBQI9K7<NG6BDLRY
M&_>/_0<_A7+>%]=TZQ\'_#V.XDM8)'^U(FIW#92S(W J.0-[!L#=P/0]*]GC
M@BBC6-$ 55"@>PIQC0@ HI .1QW]: /#)KJ%_AEXVB6>25X/$9GD+IAQ']IB
M;>P &,@$]!T/'%=GX@U73KOXB> +B"\@DC=KTHX<88&' (/<$]#T/:O0=BX8
M;1ANO'6C8O'RCCVH \MT6]M+;PWXUT7Q#)''J!O+QYHIB UQ'*/W;(#RP(PH
MQZ 56TN%[#Q-\-+'69(O[1M])N5E25@71]D>T'/<8(_ UZRT4;R+(T:,Z_=8
MJ"1]#3BJDY*C/KB@#A?AS<6TM_XRC@FB?_B?S.%1@>"D?/'8D'GUS5+QKJ5C
M:?%?P$US>V\*PF_,IDE51&&A 7=D\9/ SUKT<*J] !]!044G)4$_2@#S3X@3
M1>.XK#PKH+K>^;>1S7UW =\-K"AR<N.-YXPN<UA>-]7L;K2OB!8Q/'I]U&0)
M+55W3WI$:?OFSG$>, ;0,;<D\XKVD  8'%-,:$DE%)88)QU'I0!YT-6L4^*6
M@WSW*"VO- DAMY3TFD\Z,[5_O$CD8ZBN?TJ[\/WNAWGA/Q5<7W]LQ7LOFZ:)
M'5KES,TB/'CKNR#D'W/'->S;5)!P,CIQTIIBC,HE*+Y@& ^.0/3- %'789)_
M#>IPQ(7D>TE15'))*$ 5Y/%K^DS^%?AC%#?0R/:7UHER%;/D,('4J_\ =.>Q
MYX/I7M-,6&)/NQH/F+<*.IZGZT >5P7&G-=?%5S+:DLN"2R\K]E Q]-V1]:A
MM-1M+7_A4M_<W,:6R:?+$\S-\HD-J@"D_P!XD$8ZYXKUO8G]T?E2[%P!M'!R
M..E '!Z%>VB_%OQC_I$*D6=D6RX&-JR;L_3(SZ9J3X03Q3?#/3!%(CE7N P5
MLX/GR'GTX(-=QL7).T9/M0%"] !]* .#BOK73_C-JB7<Z0M=:3;>0'.#)MDD
MW;?7'4^@Y/%<.UU8+\"+YTGMA*=8+Y#+N+?;@0?KLY^GM7NA52<D G&,XI-B
M?W5_*@#RZ]UK2=,\?>(;7Q-J,UC9ZG#!)8S^85AGA$05TW 8R&W''^T?6N]\
M,6=EI_ANQM=.@G@LHX\01SEBX3)*YW<CCG!Y&<=JTWBCDV[XT;:<KN4'!]13
MZ /&-'N_#]_H%QX4\47%]_;<-Y()=,$CJ]Q+YID1X\==Q(.<^I/'-1>-]7L;
MO0_']C"\>GW,4H$EFJ[I[PA8_P!\V<XCP !M QMR3SBO:?*C,HE\M?, P'QS
MCTS2F-"6)126&"2.H]* /.4O=)U+XQ:<_G6MPDOAR18]Q!W$S+T!ZY7=]03V
MJWI5W:1_&'Q%'Y\*[=+M1MW@8VF0D?@",^F:[S:N<[1GUQ1L7.=HS]* /#].
MOUM?A;H&HQO+)I^GZ_--J'V0Y:*$RS /@=@61OR-;^I3>%KWPWXOUO1KR2]D
MN-'EAN;UYF,;$1MLCYP"_P!.1QGJ*]1"J 0%&#U&*:D4<<8C2-%0=%5<#\J
M,+P4EF?!VBS6BP$-I\"EX@.<(."1Z$G\2:PK2^&D?%O7QK$R00W]E;-ILTS!
M4*1AA(@8\9W-NQUP<UW@  P  /:FR11S*%EC1P#D!ESS0!XKJD']F_!+Q?YC
MK%97>ISRZ8C';FW:9=FT>A(9A['->TP3PW,"302I+$XRKHP((]B*>5!Z@'ZT
M  # &!0!Y=9ZC9V<WQ+LKFYCBN6GEF$3G#>6;90'_P!TGC/3.!WK/2ZL(/"?
MPI*3VR,MW;;MK*,9@</G_@1 /N:]AVJ225&3UXZTFQ/[J_E0!Y!;W^@-)XD\
M,>,+N\ANYM2GD^R;G'VR*1]T1C"C+'&T #GY17I6I6MTW@^\M-/62*[-@\=N
M&?++)Y9"Y;N0<<UJ-%&TBR,BEU^ZQ'(^AI] 'E'A;4/"GB*S\-VSSWLNMZ8\
M6W3F=U>TEC 5RRX&$ SUX(P.IQ3;=K"_TGXIV[WOEPO<S,[V_P [JOD*"P4=
M>01[\BO5EBC61I%C4.WWF Y/U-9OB'2)M9T*ZT^TO38S3!<3K&'QA@<%>,J<
M8(SR": .!\/ZQI'B'Q'X7NI=?T1;O2[.2%+:UN][W$DB*I&&5< !<XY.?ISD
MR7&GR?#WXI,)K9GDU2\P=RY;Y4V?7G./?.*] M] U>^EA.O2:,\<,J3#[%9L
MKNZ,&4[G8[1D X R?6NGV)_=7\J /-SJ5I;?$+PC>7%S&L%SH4L44I;(ED+1
M':I[L?0<UB:?>>'[K2]5\)^+;B]&J"_G,FG[W#79:8R1M$!][.5Q@]NPKV3:
MO'RCCIQTIIBC,HE,:F0# ;'('UH \IDU/1]-\4^*=%\77US8KJ#K+;EY&$=U
M;M"D90$#D@J01U.>*M6D>EV/Q,\*VD*""*WT*9((;E\R1#<FP'=R&VYXZ]:]
M,>*.1E9XU8H<J6&<'VIQ52<E1GUQ0!POPQN+>6W\3I;RQNJ^(;P@(P("E@0>
M.QYI=(CD@^,_B439_P!)TVTE@SW12RMC_@7\Z[D*J] !]!6=?Z2MSJ%KJ4#B
M&_M0R))C(>-L;HV'=3@'V*@^H(!RWCN\MH/%?@E9KB*-AJ;,0[@8'DN,_3)
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
M3DXZC!/'&0#K[V_M=.@$UW,L2%@BYY+,>BJ!R2>P'-9TOBO1H]'O]3%T9(+
M'[2B1MYL9 SM9"-P/L0*Y_QO-+IOB[P?K-QD:-:7%PEY)_#"\D>R.1O10=PW
M'@;O>LR_M'U/Q-XQU722)]/F\._9'>$[DN+G#D!2.&*I@<=-P% %C6?%TUWI
M/@W6K&_DL[>^U*VBO82H";'C,C LRYP,#D'&,UV6E>(M(UM;DZ;?Q7'V5MLX
M!(,9QD9!QP1T/0UYC=:KIMYX(^&JK<Q.L&I6"RA^ I2%@^<]E) )Z \5+KJ3
M:EXD^(MCI4BR7MSHUND<<;#,K*)-RC'4X./Q% 'HMOXGT6YO#:QZA&)O*,ZB
M0% \8ZNA8 .ONN145AXQ\.ZI>V]G8ZO:W%Q<J[0I&V=X0D,1]"#^5<GX?U?P
M=XFU+2;^T%]-JNGJ[E+B>?\ XE^4Q)YFX[0.-N.<\8X!(M_"1K23P9^Y,+2I
M?79?;C<-TSD$_5=OX8H [.]U"UTZ-7NI=N]MJ*JEW<XSA54$L< G '05G_\
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
MW5HT9'+DJPC7<IW*<X)&1SUKH]2U[3M)8K=SN'$9F9(H7E98QU<J@)"^YXH
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
M0<  =JZ'3K"/3;);:)F8!F=G;&7=F+,QP ,EB3P .: /.-%O(=)T;Q?H&O\
MRW\MY=S)$XRU]%,,H8Q_'G.W R1C%06=K=>&=1^&JZN)MUMIUU;3,J-)LE9(
M]L?R@\\$#UVUZQ10!Y5%/;&/XIDO'F?=Y?\ TT'V8)\O][YLCCOQ5&/48-$D
M\(:OK'VX:))X?BL7N;5Y1]EN!M8B3RR& .,?5?:O8Z* /)=<BT.WTCP])I5G
M);V-QXHM[TF<R%IEYWSD2?,JY[G Z'O7K*E2H*X(/(([TM% 'C6C3:(^E7/@
M[Q38:I/K4=U*/L)DN?+O,RF1)$VG8%.023@#!)KIM&N;6'XE^-I9I8TC-M9
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
MW1<"W;1X$68CY&*N[, W0D @XKCK;*?!OP];-%*+B+68W>$Q-O11=LY)7&0
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
M@.J@Y'<5YZTJI<_$M1'J,BWVEQ&VEN+>0&<_9Y%XRHY+$ +@>PP*T)94"_#
M@-_HY7SL(?W(^S%/FX^7YN.<<T =+I7C:QUEM?C>.\M(-.G> S/;2(=JHI9B
M=N%.6.%ZX .*N:/J^E6?A32[F/5+J^M)D5+:YN TD]R3G' 7<S$ GIT!/:N;
M\/7 T^]\=V5W#<12R:A-=*6A;8T30H%8-C!R00 #GVKGM/FN]$\+?#K79+.Z
MFL=*CE@U&*.)FD@,D>P.4QGY3G/'1O>@#N]6\3Z!?>%M6FDUFZL+>W+6]U/
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
M'5C:K8Z[<:7"C-]H6"%':=",8#,#L(YP1Z_2M2VMX;.UAMK>,1PPH(XT'15
MP!^58$GCK0;>QU*ZN;B> :8P6]BDMI/,AW#*DJ!G!'1NGO4UGXQT:^U=-,AE
MG%Q)"9X2]M(J3HN-QC8C#XR/NYH WJ*YKPGXM3Q1_:)2TN;<6UY+;J)8&7A,
M*<L1C=NS\N<@5TM !169K^FW&K:/<6MGJ%Q87;(?)N8'(,;XX)'<>H-<7X9\
M4SW'@NXTR^-P?%%G+_9UQ;M.WF27)SM<-U", 7R. %;L* /1Z*Q+9H?"VB6L
M6I:G<WD[,L1FF+227$I[*H]<'@#@#/8FB+Q9I,D6HL9)HY=-7==V[P.)8EQD
M-LQD@CD$9!H VZ*Q3XKT<0Z//]HD\K6"@L9/(?;(77<H)Q\I(Y^;%:.H:A::
M5I]Q?WTZP6MNADEE?HJCO0!9HK'LO$.GZI?S:6C7$%Z+<7'DS1-$YB8X#KD=
M,\>H/7%<WX"UHV_@K[1JEY<W,K:G<VT;2,TLLA\YU11W)P/P [ 4 =Y65XAT
M4Z]I?V1+Z>RD26.>.>'!*NC!ERI!##(&0>M(OB33/L%W>3226\5G,()Q/"R,
MLA"D*%(RQ.]<8SG(QFEL?$6GW^IRZ8K2PW\<8F-M<1-&[1DXWKD?,,\9'0\'
M% %:RT34S+$^M:T-06%Q)''':+ I8=&;EB2#R.0,]NE;U4=4U>RT>&&2\D*F
M>98(452S2R-T50.IX/X D\56L_$VE7EC?W8N?)CTYVCO!.IC,#*-QW ^Q!ST
M- &O16 OC+1_M]I92-=17-X@EMD>TDS*A_B&%. ,C.<$9&<5#:>/?#]_J"V5
MM<7#S&Y>T/\ HLH5)$&6#DK\O?KC.#Z4 =+16%%XOT>74+*S\V9#?9^QRR0.
ML5P0,X1R,'CD>HY&:+OQAHUC*@N)I4@:X^R_:O)8P"7.W:9,8'/&>@/!.: -
MVBJ6KZG'HVCW>I3132QVT32,D*%G8 9P!_D#O61H_B^TO?"FFZQ>K);O>1Q
M1>0X+RNH;;&",OU.",C )[&@#I**S-,UZPU:YNK6W=TN[0@7%M-&8Y(\C*D@
M]01T(R#ZU%K/BC2= N;.WU&>2.6\8I JP.^\@$X!4$9XX'4]@: -BBL*#Q;I
MEUI]M=VRW<WVB-Y(X$M7\[:K;6)3&0 >.<9[9IUMXLT>^L+*\L;AKM+W=]G2
M&-B[[?O_ "XRNWH<XP<#J10!MU6M+**S$I0LTDS^9+(YRSM@#)_  <=@*QKC
MQQH%I!8S7-U+"M](\4'F6TBDLA8,"-ORD%3P<'VJ31O&6AZY'?M:W31MI_\
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
MNH=/N="%O'.]N^/,\XOL; ^5MO.&P>W7BN]HH \>US1KRW^&_BV5;&Y#ZSK
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
MO:O/;/''<@#)\MR,/@>G'IFN"\0I,FC?%262TNX8KE8Y())K=XUE5854E2P
M/(-=%?6Y\47_ (-^Q6URG]G7"WMS-+ \8B18R-F6 RS,5X&> 3TH WE\;:.\
M]NH:<VUS>&PAN_+_ '+S@D; >O52,XP2.#4-WX^T:UNM4M0FH3W&F!3<Q0V4
MC,H8%MV,?=P,YZ<C!.:X"[EU34M,TBXN]$UA-0LO$44]U:P6;K!;Q+,QS&H
M$F002XW').2 172Z?YZ>+O'MS+I]^D-U;VOD,UI)B4K"RL%(7#$$@<9]J .C
M;QCI FT:-'FD765#6,B1$I)E=V"W13CG!Q6E%JD$VL7&F(LOGV\22R-L^0*Q
M(7YO4[6XZ\?2N L] NM0^">EVOERV.KZ7;1W%L;B,Q-#<0\C(8# ."I/3#&N
MM\'K<SZ(NK7\/DWVJ$7<T><^6"H")_P% H/OD]Z +]_K%MI]Q#:E99[N<,T5
MM NYV5<;F[  9')(&2!U(JC:^,=&O-'AU*WN'>.><VL<0C/FM,"08]G7<,'/
M8 $YQS6!XDN+[PY\1++Q&=.O;[29].;3Y_L<)E>W?S-ZN4')4]./3Z9@U]-1
MFOO#'BBVTBYCLM/OY7GLEA_?^3+'L,S1CG<"2VT9;#=,Y  .GB\7:6R:EYIN
M()],4/=VTD#&6-2,A@JYW*1W7(XJI9>/M#O[C2HXC=K'JB@VEQ);.L3L5W;-
MY&-V,\>H(ZC%8>H64NI>*M9\26UO=?8E\/MIZ?Z.X>XE9V?Y4QN8 8&<=6XZ
M&LPV]XO@WX;6YTW4?.L+VT>ZC%E*6A5(G5BPV\ $B@#N-4\8Z3I"7<MP9WMK
M)UCO+B*(O';L<8#$=_F&0 <9&<59O_$-G8EU2.XO)$A%P\=I'YA2,YPQ^N#@
M=3@X!P:XK1-0O?#6I:]H&I^']2OOMFI3W=E-!;&2&XCE.X*S_=0@\'=@ 4W4
M_,T#QY?7NL^'[S4].U2V@$4]A;M/]GEC4JT94<@'.0?_ *^ #I9?B!X>C32W
MCN)[A=4C>6S,%M(_FA5)(&!][C&WKD]*9%\0M%GG6VBBU-[M[07:VOV"42LA
M.!A2.><].!@\UA3V?V7Q3X$:TT&XL;*U:]>2&WM&9+598R$WE 55B3R,\$GZ
MUI8E3XQ3WC6EY]D&A+!]H%K(8S()F<J& P3M.: )=8\3^'=5\%V^JSWE_'IE
MU/&J2VJR)()!( %8J,K\XVG.!VK2O_&.E:?K<FC.MY+J"6_VD00VDCLZ;MOR
MX'S<^G P<D8KSA[._/P=GT\:5J?VPZP91;_89=Y3[8)-VW;G&SG/]:Z_,O\
MPN!;_P"QWOV/^P?)^T?9)-GF>=OV[MN,[><?AUH V;?QAHUSX<AUV.X?[)-(
M(8U:,B0RE]@CV==^[C'].:DLO%.GWNMS:*$NXM2@ :6"2V<A%(RK&104 .#C
MYN2,=:\U%K+#\.'^TZ=JD5W!XC-W;!;-_,1C<%DD$; &0;23M')SCCJ.F\*Z
MII=_XQO+Z=[]-8O;=(42ZTV6T3RH\MA-^<MEB3\V<#@<&@#I]9\1V.A7%A#>
MB<-?SK;P,D196D/12>@)]ZGFUFTM]2DL9BZ/%;?:I)&7$:1Y(RS=!T/Y'TJI
MXMT%?$OAF\TS?Y4[J'MYAP8IE.Y'!]F _#-<G#I>L>+_ (7:M=7"I!K6N60"
MH&^555,(@/\ =8[F]O-- '4P^+],EN[""07-NNH_\>4T\)2.X.,X4]B1R V"
M>V:%\7:8UGJ]R!<;=(=DO5\D[HR%W'C^(;3GC-<IJ"W'B_0?#&G16%[:W]K?
MVMQ=K-;/&+7R>7.X@ YQA<$YW9Z9Q4NS=Z=+\1=,?2]1EGU-9)[-H;5WCE1K
M8+]\#:""",$Y/0 GB@#K[SQUHEDVFJ[7;OJ=N;FT2*TD<RH$#<8'+8(^4<\B
MMO3]0AU+3+?4(EDCAGC$BB9#&R@C/S \@UYS9I=#6/AH[Z9J*+8Z?-%=%K.3
M$#M!&@#G;@992*]"UJSDU'0M0L89/+EN;:2%'_NEE(!_6@#-7QEI1O;"W?[1
M%'J!*V5S)"1%<-C.%;U(Y&0-W;-49OB/H$5E>W@&H26]C<M;73I92'R&7&XN
M,94#/?G@\<5SOA*2VN[;2=*U#P5=PZWIS1"66YM/W$31X!F24\$D E=O.3Z9
M-0);WC>!?B-;?V;J(GOK^]>UC-E*&F61%5"HV\@D&@#MX/&6D7&MVVEH;D27
M:.]K,UNZPW&T981N1AL#GC@CIFLVY^)_ANV@N9V;4'AM+AK>ZD2QE(MV7 )D
M^7Y1DXYZX. <5EWJW#ZO\.I4L;\I:>8;EA9R_N<VY0;_ )?E^;CGZ]*S]$O8
MCHOQ TW['<W-Q<:Q?QQ0QV[,)BZJH4,!M'/7)&!R<"@#>\071?Q]X%FM+V8V
MMV]UN6.9O*F46Y925!VGKD'%;=_XMTW3Q>NZW,UO8-MO)X(2Z6YP"=V.3@$$
M[0<#KBN1_L>\T74OAK8R6]U<?V7#+'=SPV[R1QDV^P98 @#=P,T[1/M7AZS\
M5:'JEA>SS7%[<W-H\5L\B7D<PR & (# Y!!(QUZ<T =<_BK2TUG3M+#RO/J4
M1FM'2,F*5 -Q(?IP.?Q%1:MXRTG1+?4[B^^U+#II07#I;LX!8 J 5![$>PR,
MXR*Y2_\ "U]HWPFTC;(G]M^&X4O8G+<;T!,D>?[I4LOY5+XNTR_?X0:O$;*X
MFU?4T\^6"")I7\UV!V84$X10$SZ(* .A?QSHT>J_V;(+U+AXC+;[K23%T 0#
MY7'SD9'3MSTYJQIWB[2=1TF[U%9)H([.8P7,=Q"R212#'R%.N3N7 &<Y&*P]
M7,MQ\1?!MW%9WS6T,%V)I1:2[8C(B! QV_+D@]>G>N9O=*U:^L?&;66F74DX
MUN#4;>">!XEO(XO*)52P .=A_(>M '?CQEI:W=Y9W*W=K=VEM]K>"6W8NT.<
M;T"YW#/!QR.X%5K+X@:'?S:4L1NQ%JF!:W#VSK"[E=P3>1C=@'CU!'7BL:QN
MM,U:TO=0L/"5_93QV,L<D]U8-',"PXB0<L_/7'''O6.+:\7P+\.;8Z;J/VBQ
MU&S>ZC%E*6A5$96+#;P 2* .ST3Q8=8\5:UI/V&YACTYXX@[Q_>8J6))[ @K
M@?XULZAJL&GRV\#))-<W)80P1 %GVC+'D@  =R1U'<BN7\/+<V7Q&\61SV-X
ML=]+;3P7'D-Y+(L 4_/TR&&,=?;&2)_&^G6.J3:9#=C4[:5#+);:IIRN7M)
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
M++3[W4;WPT;-G5-2@=9+*3<NV)7<!B",_*?N[1GMD ]"HHHH **** "BBB@
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
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
ME\G.#T&,\T 4)O#%L_@MO#$4\L-HUF;-I% +E"NUCR"-Q!//J:J7/@N*X@T
M+JEY!<Z)E;>YB$>YE*>6P8%2O*]\5T]% '-0^$5@U'7KU-3N?,UI$28,B$1A
M$V*5XZ[?7-:7A[1D\/:#9Z1%<23PVD8BC>4#=M'3. !5C5+]=*TJZOW@EF2V
MB:5HX<;R ,G&2!T]Z9HVIQZUH=AJL*/'%>6Z7"(^-RAE# ''?F@"AHOAE-&U
M#5[L7LUS_:DWGS1RHNU7VA?EP!Q@ 8.:RM%^'L6AW(BM=;U,Z*DOG1:2[J8D
M;.X#=C=L!YVYQZYYKLJP-<\66V@ZIIVGSV%]//J+LEM]G5"'91DCEQCCUH @
ME\(+<^3#?:C-=64%_P#VA%#)&NY) Y=5W@9V G@=<#&<<5S'A.S?5M4\;00:
MN]O!=:K(&2)5+-&8T7?&QZ9Y&[D<<8-=GHOBC3M;O;VPA\Z#4+(@7-G<Q[)8
MP>0<="#Z@D5M4 <GK'@&QOX])?3;NZT:\TF/R;.YLR,I'@ HP8$,O X/^-&I
M> K35-$@L[C4;\W\%P+N/5 X%PLX&-_ VXP -N,8 ],UUE% '+S^"XK_ ,,Z
MCI&JZI>W\NH1B.>\D*K)@<J%"@*H!R<8[G.<UO:?:RV5C'!->37DJCYIY@H9
MS]%  _ 5:HH Y>/P-IX?78IKFYGT_69'EN+%ROEK(ZA68$#=GY1CG Z]:DLO
M"0A&F1W^IW&H0:4P>S295!#!2JLY ^=E4D \=<D$X-=)3)I8[>&2:9UCBC4N
M[L<!0!DDGTH ?1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %8_BN>YM?".KW5G<O;7-O9RS12HJL594+
M#A@1V]*V*P_&3!?!.N*?O/83HB@9+,8V  '<D]J .%EOO$>CZ5X.\3'7[F]7
M4)+.WOK&6-!$R3*!N3 W!P3G))R3V'%2^)-=U73;;4-1M=5GNI[76(H@UL +
M6&%I$3R'#<.^&.XKD@GJ.E;?A+P_'>^%O#$U]>W-TEA;PRQ6TJJHBF6,#YL*
M"2F2 #T[Y(!HN?AGI]Q8ZC8?VMJL=E>W?VT6\<J!89MX<LN4R1D=&)'/3/-
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
MH.CVNEV*%+6UC$<88Y./4GU/6LFW\$Z;#)K:O-=3V6L222W%E*X\H.X =EP
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
M><DGW))/XT 7Z*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
MR%ZD#DJV,D=#7F^IZKJNE?#K1_&L&I7-Q>E;6XO(6D)AN$F*AHQ']U,;Q@J
M>.<\UH>&[(#XL^,9#<W;>4EDP5IV*G='(<$=,#L.U '4>%_$$/BGPY9ZU;P2
M01708K'(1N4!BO...U6EO;AM:DL3I\RVRP+*+PLOELQ8@H!G.0!GICFO'_#S
MZAI'PQ\(:S:ZM=H?[1BMVM58"%XI+AD967')YSDG([8KNH;K4'^*VI:6=2N?
ML9T:.XCC^7$+M*RDJ-N.BCKF@#LZ*\:LM3UU/AQH'BB7Q!J$MZ-22%XV9?*E
MC:Z:-E=<<\=^V!C%=1K&J3_\)9KEAJ>H3Z=:1:;'+I;Q2F/S'.[S&R/ON&"
M(<\=N: .]JE#>W$FKW-F^GS1V\4:.EVS+LE+9RH&<Y&!U]:S/!/]L-X0TZ;7
MIKB34YHEEG$ZHK(Q'W<*HQ]#R,GFLBTNM1F^(/BG36U2Z^SQV%M+;CY/W#-Y
MF=HVX[#J": .WHKQ[3=2UM/!W@?Q'+KU_-=7NH6UM<1.P\J2.5RK KCD]\D_
M3 X'L- !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %175M%>6DUK<('AF1HY%/\2D8(_(U+10!QMO\
M#C3X8M)BDU75YUTF426?F7"_NP%*A/E4?* ?KTYQQ5U?!5HL.NQ#4+_;K98W
M>6CZE=AV_)Q\O'_U^:DUCQ9!I:Z'+%;/=VVKWD-K%<1NH1?,!*L<\D8!/ _$
M5T#$A20,D#@>M '*S^ ;"2/1V@O]1M;W2(O(M;Z!T$OE8QL;*%67 '5?ZTB_
M#S16T_6;&ZDO+R'5Y?.N1<39_><?,N ,'Y0<^WIQ70:5=75[I<%S?6#V%S(N
M9+5Y%<QG/3<O!]?QJY0!R^G>"+>PT^YM9-9UB]>>!K87%Y<B62*(]53*[1G
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
MW:* ,W4=(^WW=I=1WUW:3VN\(UN5PP;&0P92".!65=>!=+NM&73Q-=PR+?\
M]I+>1.JS"Y+%C)]W;GDC&W&.,5T]% ',VW@;2X=1U"]GGO;V34;5;6[6YFW+
M*@!'( '/S'V&> *;H'@:S\/%!!JFK7,4"E;2&[N?,2U!!'[M<8R 2 6S@<=S
M7444 <B?AYIS>%9_#AU#43837'VA_GCW[O,\SKLZ;QG_ .M74F!9+8V\_P"^
M1DV/Y@'S@C!R ,<_2I:* .(7X8Z8FF1Z6NK:P-,@N4N;:T^T+M@96W *=N[&
M>Q)QVYYJWJ/@#3[W7FUFWU'5M-NYD6.Z-A=&,7*J,#S.#D@<9&#[UU;NL:,[
ML%51DDG  IL,T=Q!'/"X>*10Z,.X(R#0!SM_X)T^YU.QU.RN;S2[ZS@^RI-9
M.H+P]HW#JP91U&1FJZ_#O2!H.J:.USJ#P:C=->22//EXY2X?<AQP00#SGISF
MNMHH YJT\%6=MKL>M37^HWE\MH;-WN9@1+&6W'<H4#KC@8''3)),&A_#_3=
MN5-I?:H]C'(98-.EN=UM Q.<JN,\'D D@'GKS7644 <[#X.LK6XUF6VO;^%=
M6=Y)HEE&Q'<!6=05/) '7..V*A_X033/[!TK2Q<7BG265["[#J)H"HP,';@C
M'!!!!'7-7/$OB,>&XM/D:REN5O+V&SW(ZJ(S(P4,<\]^P/X5N4 8+^%+6:UU
M2.>[NY;G4X?L]S>,4$IC ("+A=J@!FZ+U)/7FJ[>";-K?0H/[0U )HA5K3#1
MYRJ[!N^3GY3C_P"OS7344 <Z?"%K(4CN+^]N;1+TWR6LS(467>9!@A0VT,<@
M9]NG%:^J:99ZUI=SINH0+/:7*&.6-NX/\C[]JMT4 8-CX5@M);&2XU"^OVT]
M2MG]K9#Y.5V[OE4;FV\9;)P3ZG,N@>&[?P\VH&WN[N87UT]W,)RA'FOC<1M4
M8S@<=*V:* (+RT@O[&XL[E \%Q&T4B'^)6&"/R-8R^#-&6ST&U\@E-#D66T)
M/.X*5RQ[Y)W'U8 UT%% &-JWARWUC5=+U&:[NHI=-D:6!8B@7<P*DME23P2.
MM0GPG:+KVHZQ!>7UO<:A&B3I%*/+9E38K[2I^8*<<Y'?&1FM^B@#DU^'^GIH
M&DZ*FH:BMKI5RES;8:/<'0Y3)V<@'/\ 7-7(O"5O#J6LWZ:C?"?5T1+DYCP
MBE5VC9Q@$BN@HH Y5/ 6F1:3H]E#=7L<NCMFPO%=/.A!&"N=NUE(X((.:O#P
MO:FRU2%[FY>XU1-EW>$IYKKMV@#Y=H 7( "]R>I)K<HH Y2Y\ Z;<:3H]D+R
M_AFT; L+Z*15GA 4+MSMVD$  @@YQS4EMX(M+:YUFY_M/4Y+G5XDBNI9)4)(
M5=H(&W:#@GM@9X XKHA<PFZ-J)%\\()#'GD*20#^8/Y5+0!RP\"V*V.A6BZA
MJ BT1U>S^:/(*J5&[Y.<*2*JZ_X=.G67B?6;!=0U"_U2U6&:U1T&X %!LP 0
M55F. <GZXKKKBYAM(#-<2+'&" 68\9)P/S) J6@#R_1+.0SV:Z%X@\8R20O&
M'M]4M66!8P1N#F2)?X<C"MG.,5UP\(6K&)+B^O;FUAO?MT=M,R%%EWEQ@A0V
MT,<@9]!TXKHJ* ,_3]*&GW>H7 O;RX^V3><4N)=ZP\ ;8Q_"O'2M"BB@#-TO
M1ETJ>]E6]NK@WDQGD$^S ?"KQM48X4#%,M_#FF6NL:GJ<5LJSZG'''=C VR[
M-P!(]2&(/J *U:* .8L? VGV-I;Z>+N]FTJVF$]OI\SJT4;!MRC.W>55N0"Q
M' ]!5H^%K5?$EWKL%Y>V]U=Q)',D4@\MR@(1BI!R0&/M[5NT4 <BGP]TZ/PQ
M8^'TU#418V5PMQ#\\>\,K[UR=G(#<UI+X9A3Q+-KZZA>B]EM!:'F/8(P2PP-
MG4$D_P#UN*W** .17X>Z<GA:V\.KJ&HBPMYQ<1_/'OW!_,&3LZ;N?_K5SFKQ
M*_C'4I-0O/%VD2D1003:7#)+%=QJN0YV1N VYG&W QU[FO4:BN+F&UB\V>18
MTW*FYCQEB%4?B2!^- &5X7@U"WT@IJ%U=7/[UC!)>*JSF+C'F;0!G.>V<8SS
MFF+X6@CU[4=9CO[U+J_@6"4 Q[55<[=H*<$9/7/7G-;M% ')K\/]/3P_I6B)
MJ&HK::7<)<VV&CW!T.Y,G9R ?_KYKJP,  DG'<]Z6B@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "L
M7QA"L_@S6D9I%'V*9LQR,AR$)'*D'M^-;517-M%>6DUK.F^&9&CD7U4C!'Y&
M@#R:ZLQ%\//ALD$\Z/-J6FMO:0R%"83]T.2 !V'0>E=%H8O+;QKXHT#^U=0F
MM%M+>YA>><RR0L^\-M9LX!V@XZ#M6DO@'3$TS2]/%YJ1ATRX2XM2\X8JZ#"=
M0>%' 7IZ@U?3PS;Q:Y?:Q'>7BWE["L$K!DP$7.W V\8R>??G- '#:3JGB&Y^
M%_A;5(DO-6;+2ZC##<E+F>/YQE&R"2K%3M!&< =*['P3J=CJWA\W-A>W=S%]
MHE4B\W>= V[)B?<2<KD#GMCK26/@NRTS2]-L+&^U"WCTUF-LZ2*64-U4Y4AA
MR>"#^@QJZ3I%KH]O-';;V:>9[B>5R"TLC?>8X &>G0 <"@#'\47$MSJ.FZ1!
M8SWJ&07EW% 8P1%&<H#O91\TFWOR$88KG_AO/)HNN:[X.N+6:T2"4ZAIT$Q0
ML+:5CE1L9AA7R.O\5=I::+'::U>ZHMU=237BHDB2,I0*F=H48R -S=^Y)R:J
M7OA.SOO%%KXB:YO([^UC,,1B=0H0]5(V_,#[Y]L4 <1K&HZS/I_BZ/[9?P>(
MK:_V:3!;2, T6$\K:@^5P06+$@XR<XP,7]5M-3D\<:#HC:_JL$%UI=R;CR9P
MK;UV<A@.N6/./IBLN&P,VI:@UVOCG2=1N;R65K?36D:V;+85E?#1\J%R20,Y
MZ# KL]/\+R/=Z1K&J7UW)JUC;F$-N3!5L;@P"X).!DCN,C% '/1IJ^O7'B#1
MK2_G$NDF.RMIWU.2"5&\E6$SB-")"S$D[N#MQ@<YDAO=:U+7X_#=[<P3W%II
M,4\[VU_):">5G='=6C7<0-@XX +'@\8W-7\!:5JVN_VTMSJ6GWSH(YY-/NV@
M^T(.BOCKCU&#[\"EUKP'H^LR:?,KWFG76GQ^3;76GSF&5(_[F>Z_7W]30!RM
M['XFTN+PA8:CXBD>[?5C:7$EI)GS(S&[KORHRX 7J,'@X.:LZ;IMW=>+_%/A
MV37]9&GVT5M<0XO&\U&D5\XE^]MRH(7.*Z:?P;ITT>E()[R,:9-]H@(EW,TI
MSEW9@2Q.YLY]34\/AJWM];U'5X;R\6[U"-(YCN0C" A, KQC)_/G- '"Z'XH
MU;5= \"V4T_F7&K07#SRM<- TQA& OF*I8$YW'&"=O7DTGB:'Q/X>\%ZVTNN
MNA2]MY+$0W3RS0Q22JC(\C*&9?O8/7KSQ742?#C0I?#%EH+->"WL)/-LITFV
MSVS9)RC@9[GKG]!B:?P)IMUX>DT:XN]1FBFD26>>:YWS3,I!7<[ G *C &!Q
M]: ,N&*ZT_XGC2&U74;FRU#1Y9Y8Y[ACME615W1XQY?#'A<"CX0VD</P_M)E
M>=FDFN PDG=QQ/(!@,2![XZ]\UT9\.6[>([?7GNKIKV"W-LN64*8R02" O<@
M'/\ *ET#PU8^&H9H-/>Y\B21I%BEF+K%N8L0@/09)/K[T <IXUU2^TC5[FXU
M"+5#X?>T6-;W2YV#6$N6W/)&I!8$%#DY V].3F*X@36/BGI:PZA.()O#+O\
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
M6=S)&PS*F91EN.3^[7KP>X-=_<^#-*GU:SU*%KJSFM;46:K9SF)7@!R(V [
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
MN;B&YO(1'+=,8W3SG4;E/WB,9!ZCZ  ;7B:02^(-&LQ>7+LZS.=,MF*&XP%
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
M?VB;0VA^T30&(R!R#&Y3.0!UQ5[2-,31]+AL$NKNZ6+=B6[F,LIR2>6/)QG
M]@*\@LM*N5^%VK>(+/6]2LK[3;J^N;<0W!6$;)G8JT8X<-@CYL]?3B@#VVBO
M.+?4-1\6ZWJ6FRCR6MM/M'6%;^6U9&EC+LXV EB"0O)XV^YJM+;:W#K_ (%T
MO4?$5S/-,M]!>RV<Q1)_+C."1_>'0GKG)&#@@ ]0HKR7^W;[PYH_BJSBO[B2
M"SUNWM()[NX9VMX9O*W9D;)P S8)SC/>NJL=!U2U\2/-+J'DZ5=VIADL1J$T
MSM*#D21NV&0[>#M/OUH 6?Q?JEQ;O=Z#X=;5[1;F6T!2[6*0R(2I;:RXV;P1
MNW9[XKI$OE2.Q6\"VUU=X58"^X^9L+L@(ZX"MS[5Y7H%H;/X,>(K^TO+ZWNH
MAJ+I(EW)\I220J0"V >!D@9/<U>O[./4/$WPSEN);HR3VDXD=+J1&.+4-G*L
M,$D\D<GOF@#U&BO,M5U6ZT?Q++_PD":C%IT^HQ-8ZQ97+M!&H9!Y$R!L*"5*
MDD$'<?2NM\<:U<^'O!&KZM9H&N;:W9HLC(#= 2.X&<_A0!T%%>=:XUSX>@\*
M:OI=_>7#W5];6EVDMP\J7<<PP6VDD!@<,"N,<CIQ2>&M-N-6\5>(S=:WJYCT
MS6$:WB6[8+CRD8HP_B0Y^[T_,T =UJVJ6VB:1>:I>,5MK2%II"!DX49X'K5'
M2]6U6[U)K>]T7[-;-;K/#=QW E1LGF-AM4JXSGC(QWK&^*]ND_PSUQG:4&*V
M9UV2L@)]P"-P]CD54GG,'BKPSX72>[CL+JTFNY2UU(SS,BJ%3>6W!1DL0#V'
M;((!WU%>6:A>:GIX^(&B1:A>FUT_31?V,_GL9;=FC<E/,)W$;DR,G@<5UG@O
M2FMM)M=4EU+4;NXOK&W:5;FX+QJP3.44_=SGGUP.^20#IZ*\[\732S7?B86N
MH7MQ/9Z6'2&WF:W33VVNP=G5OF=L @8) 7G -59[K4=2U#X:L^JWT/\ :EI(
MUX()B@E/V7?D@<9R3SU&>,$ @ ].HKS32]-O]2@\;^&;;6=2B-G=J-/N3>2&
M6!GA5P#)G<RACT)/!-7/#&LOXLBT&$2W4$^G1M)JL2W#AEF3,0BDYRP+AWYS
MQ&/6@#OZPI_$;0>-;/PZUBV+JUDN5N3(,?(5!7;U_BZ\51^(&M7&C:)9K;2M
M ^H:C;V#7"]8$D?#./0A0<'L2#6'?6,6C?%G29K=KF1?[&NV\J6X>7E63IN)
M()XS]* /1ZSM>U1M$T&_U1;9KG[) \YB5PI8*"3R?85P6BQ:YXA\/>'_ !-:
MZK%:SLT=S=3M?RO'*A_UD)AQL49X&/NE>N<FH9IV\6>!?&VJ7=U=++;O?6T$
M45PZ+ D*$*I4'!+=6R#G=CIB@#T?2+_^U=%L-1\OROM=O'/Y>[.W<H;&>^,U
M=KS31[BX@U_X>P175RMO=:'(9H!,WEN4BBVG9G&1N/.*H?\ "17^EZ3X@C.H
M7(C;Q6FG+<33-(UK;OY6[:S$XP"V/0G- 'K709-9EUJ<[Z3;W^C6:ZFL[1%
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
MT%KJ99[JT@NF2%W/5]@X!/?M[5TUG:16-G#:P;_*A0(F^1G; ]68DG\34]%
M%!=%L$UZ76Q O]H26RVK2]_+#%L?F?T'I3-,T*QT71AI6FQFUM5WE1&>5+,6
M.#]2:TJ* .97P)HJ^&+;P\HN18VLRSVQ$["2%U;<"KCD8))_&K<7A:Q@UP:Q
M%+=K>K:?8PYF+#RL[L8.<G=SDY.>]&K:[)::M::-8P13ZE=0RSHLTACC5$V@
MEB 3R64 8]?2D\/:IK6H6]Q-K>AKHX3;Y:M=K,6&/F)VC  (X]1SQ0!8T'0+
M/PY9/9V!F\EY7F*RR;\.QRQR?4G-9M]X#T/4+W5+F9;H?VI'Y=Y#'<ND4I"[
M0Q0'&X#O^/6N@M+N"_LH+RVD$EO/&LL3CHRL,@_D:FH YZV\&Z9:7^FWL,MX
M)].@-O;LUP7PAQN!SG.<#KZ#&,57>V@\#VEU=Z=IFK:HVH7WG7$-L1*_F/\
M>DPQ&!\H!P<=.*ZFB@#$\+:,-'TN4M;1V]S>W,M[<QQXPLDC9VY'!P,+GOC-
M8GQ-LYM0T;2[6"UO+@_VK:RR"UB=F2-7R[94<8'X^E=M10!CP^'K!I+FYN3-
M>SW=O]FDENC\WDG/[L  !0<G. ">^<"LNU^'6A6O]F;6U!SICEK0R7LC&-2N
MW8.>$P<8[C@YKK** .0T\/XI\1V>KWF@7>G)I F2 WR*LCR/A24 )^0*#R>I
M88Z5LW?AZSO/$%GK<LEP+RS1HX=LF%56QN&WH<X'7TK6HH YU/!FF)9ZQ:"6
M[,6L,[WH,W^L++M8CCY<J,<8XJ#4O &B:I8Z9;S&\CETQ=EG=P7#1SQ+C&T.
M.2, #FNIHH YZ;P7I4UIIML3=*FG7 NX")V+&89_>.QR7;D]<]:G3POIZZQJ
M&IL9Y)]0A$%RKR91XP" NWMC)Z>M;5% '.6?@K3=.LK&VLKG4(?L)/V>073.
MR C;M^;(*@# 4C'MGFM;2]*M=(MY(;56_>RO/*[G+22,<LS'U/Y=A@"KM% &
M)=>%[&?69=6AENK.]GB$-Q):R[//0= PP1D=F&&'K4=SX/TFXCTF)%FMXM)<
M26<<$FT1L 1G_:.">N<Y/K6_10 5SD/@G2(5FMT-T=/FG-Q)8-,6@:0MN)P>
M<%N2N=I/:NCHH YO7O ^D>(-4@U.<WEKJ$*>4+JQN7@D:/.=A*GD5._A+3&O
MM)NT$\4FDJZV:QR$*F\8?(/WB1U)S^=;M% '/#P7HQCUB*XCEN8=8;=>QSR;
MED;  (_ND #&,=!Z4:!X-TWPXCBSGOY9#'Y4<EU=-,T,?]V/=D*.!P!S@9S@
M5T-% '.6W@K2[3P[>:#%)>?V==^9YL;3$D[R2^&/(W9.>>]27/@[2[NVTF&4
MW6=)_P"/26.X9)%7;M*EE()!7@UOT4 8,GA'3YO/CEENGLY[@7,MFTN8FD#!
M@<8R!N .T$ XY!YK9N+>&[MI;:XB26"9"DD;C*LI&""/0BI:* ,#3O"&FZ:+
M)$DNIX+ YLH+B8NEN<$#;GDX!(&XG /&*L:3X=L]&O\ 4+VVDN#+J$GFW'F2
M;@SX W =N !Q6O10!FZ[HEIXBTB?2[\R_9)QME6)]A<>F1SCZ56OO"VGZA;6
M$<[W'GZ>^^TNUDVS0G&.& Y!'!!R#WS6W10!B2>%M.FTS4;&4SN-2!%[.9/W
MLX*[<%NPV\8& !TQ6CIMA%I6FV]A TC0V\8CC\QMS!0, 9[X%6J* .=OO!&C
M:AJU]J,RW2R7\ @NXXKETCG4 J"Z@X) .*;;^"-)M6T5HI+P-HRLMF6N&;9N
M7:<YSG*_+@\ =,5TE% ',W%E;^$1JFN65CJFI7-]*CW-O;D2/(W"AE4D 8'I
MV%6/#&E"RCO]1ELEM+S5;HW4T/&Y. JJQ'&[:H)P2-S-UK>HH S];T33_$.D
MSZ7JEN)[28 ,A)!!!R"".00>01679^"-,M-5LM3>YU*ZO;*)HH9;F]=SM;&0
M>0#T'!_'-=)10!RFG_#S0-+U9KZS2[B1IO/%D+I_LJRYSO$6=N<\CL#C&,"G
M77@#1;J\U.=6O;9=45A>P6UTT<4S$8+E1QNP?Q[YKJ:* .;N/ ^D36ND0(]]
M;MI(*6DT-VZRHA4*R;\Y*D #'MQBFQ^ ?#R:=JVGM:22VNJR&6ZBEG=E9CCD
M#/!X'S#G@<UTU% &!HWA#3-&M9X$>\O/.B\EWOKEYV$7]P%C\J^PQ5;_ (0'
M1O\ A'[?1-]\;*WD22-6NF9@4(* ,>0JX& .*ZBB@#%O/#%E=ZM%JR2W-KJ4
M</D&ZMW"M)'G.UQ@JPSSTX[8J&Z\&Z1=:=86&R:*WL;E;N%8I2#YP8L'8]6.
MXD\]2><UT%% &3#X=LX/$<NNB2X:^E@%NY:3Y3&"2!MQC@DG/6GZUH%AK\,"
M7B.)+:43V\\3E)(9!T96'3^1[UIT4 8K>%["2RU&WE>XDDU*/RKNX:3][*F"
MNW(&%&"1A0,9)ZDFKVE:;#H^EVVG6S2&WMHQ%$)&W%4 P!GO@"KE% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
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
MY*[0=N"1Z4VV\+Z5;7FJW212O)JH O1),[K* NT<$X'R\<8XH J^ ;6*U\!:
M#Y7F?O=/MY&WR,_)B7.,DX'L.*Z.N>@\%:+;:=IUA%'="#3[E+FW#7<C%708
M4$ELE0.-O3VKH: "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHK
M,\1:S%X>\.ZAK$ZEX[.!I2@."Q X7\3@?C0!IT5Y9\-+.Z\<:$WBOQ->W5U-
M>32"VMH[AXH+>-6*X5%(&<@\G)X'OGIV>#P'9ZWJ^KZM<S:2/+>'[1*TKQ#&
M/+!/+98\9.?FY/&: .LHKFM,\;6.H:U'H\UI=V.HS6BWL$%R$S-$<\J58C(P
M<@D'\*YZ3XS:$FF7^H+I>LO;Z?<BVNV$"8A8G:"3OP1GC@D^U 'HU%>>>-_B
M%/HM]X6L]+LIKA=:N8F6=-OSQ;D+(@8CYF# <X #=<]&'5;6?XS:=#-<Z[:7
M[:86737\O[,RD,<MM<_,,$=.JCG% 'HU%>=S?&/1(K+5;H:5K+QZ5<"WO=L"
M8B);;DG?@C/'!S[8YK:U;Q_I&COH'G17<L6NLB6<T**5R^W&[+ CAP>AH ZJ
MBN6L_&^GZKK.NZ'!:WZ7VDQEIQM0;@>FP[L$]QG%<EX0\::-X;^%;:ZUWKNJ
MZ?'>O&\UVJ&=2Q'&"_W<D=SR30!ZM17'Z7\1M*U3Q/:Z#]CU&UN;RT%W:/<P
MA%GCP3Q\Q(X#=0.A]LUKSXJ:):VNJWT=K?W6G:5<+;75Y B%!(3C !8,P!(&
M0,<CJ.: .YHJI9:A'>Z7%J'ER0QR1^9ME W*O7G!(Z<\&O+?AMK%W\3-7US7
M-5N+@:=;2K!8Z?',T<<8.268*1O;&WDYZG'; !Z[17DVG>([[PU\9YO!4]W/
M=Z/J$0EM!<2-(]LQ0MM#D[BI*L,$\<>^<CP'XZN-!T[Q9>:K%K.J6=EJC*TJ
MOYPMHLX'^L<''LN?4XH ]PHKR/XAZ\\VO_#F_P!&U.Y2SU*_0,8)G1)XB\1
M900#]X\$=R*UM+UC38OBUXH\[5-7CFM;!9+BUNBOV2&-0AWIACV(/08W-F@#
MT:BN"'Q7T@V.F7RZ9JK6>J3M;V,PCC_?NK;<8+@KDYQD#.*NZS\1])T>;581
M;7=X^D1QRWXM_+S K].&92QZ9VYQ0!V%%><>.?B0VD:)H%SHEM+<KK<T0AN0
M% 5&() #$'>0<#. ,\GBDU'5[:?XL^&(;F?7M.O9+60Q6!\O[/*,/DR;7/(V
MGL>BT >D45QEY\3-%M#JDP@O)]/TJ=+:^OH44Q0R,=N,;MS8) )53C/>IM6^
M(6DZ1X@T[1GM;^YN-2A\ZT>UC61)1@D8.[/;TQSG..: .MHKB]/^)V@WWA?5
MM>D2[M8=)E,-W!/&/-1P0   2#DD <]:V]$\0IK4LL0L;JU9((IP9C&R2))N
MVE&1F!^X<\^E &S1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5F>(=&A\
M0^'=0T>=BD=Y T1<#)4D<-^!P?PK3HH \M^&[:MX$T23PQXATC4"+:=VM;RR
MMGN89D8YZQ@E3DG[P'6KGQ*T/6/'/P\O;:SL'M[A)TGMK>5P))E7KN'12<G
MSV&<$X'HU% 'E5OHNHZ]\6= \1K97=IIVD:2(YFN86B9IB) 8U5@"V-XR0,<
M=:XU?"_B _#GQQIW]B:@+O4=5CGM8C V9$\P-GVX4]?;UKZ'HH \=\4Z#K$]
MM\,=1MM*NYTT:2+[;#''^]BP(L_*>>/+;]/6K]SIVJ3_ ![TK73I5ZFGQZ9Y
M$LQB)6.0ASM)&0?O 9&1[UZG10!\^CPUKQ\'?$:S_L74/M&JZBDUE&;=LS)Y
MQ;(]..><5M>*M UF7PE\-KJWTJ\G?19+8WMM%$3,FU8PWR=3@H1^7;FO:**
M/)/"FGZM;_$KQIK%[HU_:VFH6X-L7BW%\ <?+GGV_"N5M?"WB"/]GZ^\/-HM
M^-5DU!76V\@[BNY&W9Z8PIKZ%HH \>BT?56^+7@K5?[+O18V6C+:W,Q@8+%*
M8Y1M/'JRY/09KD;S5_!UC/XJ\+ZE=ZGI6FW>K&2XLQ:>8_R,#E9,_*K%0<%2
M0 ,'FOH^N:M/!T.GV]Q:6.JZA;V<\LDK0 0N 7)+89XRW))ZDT :NC7&FZAH
M%E-I;I+ILD"B KG!CQ@#GGIQSS7F_@#0+_X8ZSK>EW=G=W.BW<JSV5[:P//C
M&04=4!8'&WG&.#S7INF:;::/IEMIUA"(;2VC$<48.<*/<]?K5N@#RW2/"FH>
M(/B]/XXU&TELM/M(Q#I\,XVRRG85WLO51\S$ X/(XKF],T+7=.\'>.=)FT._
M-YK=U(U@JPEED5V*Y9APF.OSE>,8KW:B@#Q+7O!VK:9:_#/3K>RN;TZ+<K-?
M2V\3.L8WQLW/?D-@#G Z<UHVVBW;?&#QGJ5_H]])HU_I1MU<0L!/B.,,@]SM
M8 \9[=17KE07MI#J%C<65P"8+B)HI K%2588.".1P: /G3PYXF\"R:?X:T[6
MM6OH;72+IKFWM7M#^[D9RP664??"DGD*N>_I73^--.\3Z[K7BVTC\.7#6<ED
MJV,UF$C2X8 '=*^0TIQD*O('IWKT/_A"+2318M%NM1OKK2HT2/[)*(0K(N,*
M66,-C@=\GN373@   # '0"@#P_7/#>O77PW\!>5HMXUQI%S"UW:A!YJJN 2%
MSST^O/2MW7K#5+_XU>$];CTF^%A:VKI<2F(D1,XD !(R,_,N<9 SUXKU2B@#
MP5O!^NZ5X)\9^$DTR[NKW4]226QFCB+131ET.YI/NI@*<AB.?6MBY\+ZKIOQ
M$^'^RSNKFST;3EM;J[CB8HK;&7KCIG'TS7L5% 'BWA+0+RWT;QU;ZQX<OKBV
MU+41*ELT15IX6D.2AXPP!W#D<@5M?"OP[JOAK5M;L8[B^E\,KL-A]OA:*0.>
M6 5@" ,X)P 3R.]>GT4 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !4%[<FSLY;@
M6\UQY:[O*@ +M] 2,GVJ>B@#$\,^*++Q9HW]JZ;%<"V+LB^:JJS%3@C&3CGU
MQ4^AZY%KUO+<06=W!"DC1![A54.RL5;;ACD @\]#VS7 ZC8WGAGXCQZ3H]P(
M-/\ %XE>102#:SQJ&EEC]V3(_P![!Z#%=/XOU4^%/#=A;Z8J6YN+NVTVW8*"
MMN'8+NP>#M4'&>,XS0!U=%<3?7FH:#X[T/2A?7-UINMQSQ,LQ#/!+&F\.K8S
M@C((Z#&1BN>/B37/^%._VW_:DW]I0ZB8?/VIET^V>5AAMQ]WCI0!ZO145RS)
M:S.CQHRH2'D^ZIQU/M7G&EZYJD7B7P? =2N;V'5(KA;R=U @N'2+>'A! 95!
M'!  ((Z]: /3*QM-\1V^I^(-7T9+:XBGTL0F5I0H5_,#%2N">,+WQUKFM'N=
M:\7>&8O$.GZT;&Z>\=DA=08$@25D,;KC))5<ELYR>,"L2[UTZ5\3_%%DLK6D
MNJ'3[2.^9<QVS&*0@G_:/10>">IQ0!ZS17"^)Y-7TS6O"5A9:Y=I'>7;V]PT
MB1N9 (F;<?E'/'^[['I6-=^+-5\)6'CQ);V74O[&>U-G+=A2X,ZKPVT %59L
M].G% 'J=%<-KEWJ?A76/#<J:E<WUIJ5ZFG7<4^TY=U)65, ;2"IR!Q@].]8U
MYJFOVUGXNT-=7O&URUN(Y=*D"1EI8I0/+0+MP0&#JQQVSVH ]1=BJ,P4L0,[
M1U/M63X;\0V_B;2VO[:">!%GD@*3@!@R,5.<$CJ/6L?PWK3>)VT>^LKR<6BZ
M>L]RF5.^5SA48XZJ4DSC'\/:N5T#6KC1_!,4=H=L^H>)KBR5\@%-\\A)&[C.
M%(&<C)'!Z4 >LUC:KXC@TG6M(TR:VN'?5)6BBE0+L5E4L=V3GH.P-<AK&L>)
M?!6G>(=8NB)]*CM%DLXKF<22QW!8)C( S&=P)R<C';-'B#3;BR\8> Y)M4N;
MQFO91+YI7:[^0_SJ !M[\#CD>E 'I%%>6ZSXCU?[!XN<:E+9:YI][Y>EV:!3
MYD6$\LB,@^9YA+<X..V,5M7&HZK)XAL_#7G74DJZ7]MN)%ECBED9I-@&X*
MN#]T#.5]\@'<5!-=)$)@H,LT2"0PQD;R#G'!(Z[3C/H:R?"4>O0:,T'B*:*:
M\BG=4E1@6>+JA?  WX.#@=L]ZY[PY;2_\+5\9LU_=NL2V1$;."I#1R';C' !
M)P!C\: .I\-Z];^)_#]IK-I%+%;W09D28 . &*\X)';UK5KQ3PW<:IHOPU\'
M:O:ZM<*C:A%:O9!$\EXI)V5L\;BW.<YX]*Z#QKK6JZ=:^*+RSU69[C3XXY+6
M*S4;+0!03Y^[Y69CGY<D[2" .M 'I#2QK*D3.HD<$JI/) QG'TR/SI]>>3Q3
M7GQ?T>4WUU&LFAR3>6CC8I\R+( (/![]S@<\5U/BNTU:\\-WJ:'?26>J+&7M
MI$"G<X&0I# C!Z?C0!M45Q>A:^_BH>'I=/NYXHQ;&ZOUX)S_ *L1/D<$R!^1
MC_5'UK&AUS6-;^&=[XULM3EM[R,7%U;VV%,*Q1.P\IEQ\V53DYSD\$#B@#TV
MBN$T?7[[5?'=A%]HFCT_4/#:ZC]E./W<K2(,@XSP&QUQ7/S^(?$'_" 27T6L
MS+>0^(6LA*T:'?%]I$85OE]/3!]Z /6Z*SM'TZZTVWGBN]5N=2:29I%DN%0,
MBG'R#: ,#GMWKD;'4=3\5Z3XCU&TU2>QGLKVXM;%(MNQ/)  +J0=VXY)!Z @
M#'6@#IKGQ'!:^*K'0)+:X\^]ADFBFPOEX0#<,YSGD=N]3Z_K,7A[0KS5IX)Y
MX;2,RR)  6V@9)Y('ZUYM'J5WXQU[P!J*W#Z;<7VEWK220*"R'$0;9N! R1P
M2#P:?>WVK1^%?B1X<U6^?4?[)LBUO>2*%D>.6%F"O@ $KCKCG- 'HG]LLT>D
MR0Z?=SQZAC+QJ"+=2FX-)SP.W&>:U*X"\U#4+&7X?Q6M[)%;7CI!<0!5VR 0
M%ADXW=1V.*JZWX@OUN_&,,^IR:;=Z; DFD1*0/-!C+!@I'[W=("F.<8  !Y(
M!Z33)98X4WRNJ+D+EC@9)P!^)(%<3]HU<0>'(-2U6Y^T7-H\MU90HJW<LQ53
M@%%551"6!)VC.W).:Y.ZU'4M>^'OA>ZOM0NA<CQ'%:R,A53(%NBJEP!@L H/
MID9P: /6);^2/6+>P%C<O'-$\ANE4>5&5(^5CG.3GCCM5VN-N+S4;+XFZ-I8
MU*>6PGTV>1X9%3ET* -D*"3\Q]JQ(=<UC6OAG>>-K+4Y;>\C%Q=06V%,*Q1.
MP\IEQ\V53DYSD\$#B@#TVBO.8-5U;Q!XUTVVAU>[L=/U'PZ-0,$:1[HG9T'R
ML5X.#C)SWQC.17L=?\1MX&\]5O-4DL-8FM+Q[8*+F:UC=UW*!@%_N9Q@D XP
M>: /3J*YSP7J]IK>DW%W8ZK+J%N;E@OGKME@PJYB<8!R#GKS@CD]:IVU]?/\
M3M5T=KV8V(TJ*YCB^7]W(TCJ2IQGHHZYH Z^BO)(/$7B&X\!>$[]=9E6\N]=
M6RN)#%&1+&;B10&&!T"KT(SS6G+XBU'PEK/BR&ZO[G5;6PTJ/4H!<A ZN2X*
M915&TE1VXH Z_7/$<&@W&EPW%M<2?VC>)9QR1A=J.^<;LD'& >@/2MFO+?$5
MK>/9^ M1NM4N+F:XUJS>=#M\IF96;*J!\H'(&.QYR>:NRW_B3Q/#KLFASR6]
MU8W\MG:%9D6)&B(!\Q2I+;CDG/8C&.I /1:*\YG;Q'JOCMM$/B"?3XY-"CO&
M%JD;"*8R[3L)7E>.^3CN,UT?CF.4?#W7=EU/')'ITS^;$P5B5C)Z@<9QSC%
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
M6*1K5EVR SKM9AMX8#'3C- '9#Q@B7CV-UI.H6U]]H6"WAD5<7)9&?,;AMI
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
MWNGPK>:K[R2<C/\ ".,X]0:M77B'4_"-]XVB-]<ZE%I^G0WUJ+Q@S)(X<$9
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
M_=YGF8SLZ;^>GMTH JV\NH:/\38M,?5[N[L[W2I;J1+ME(CE211N7 &T88Y
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
M:>+-5N]$U:^&K'5H-$DACCL]6L9W9;)]N#YZ*<GYB#N(.00*])1UD171@R,
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
M2[BM6E43RHSI'W95P&/X;E_.@#F]3\ Z9J6NG64O=4L+Z2-8[F2PNC!]I5>
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
M[,QN9)Y-0E,017.^%X-NP* -OJ,9SG)KI?B@EW)\,O$"V08S&T;(7J4R-_\
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
MASG:5QCJ2?7\.* //M;M#=>#_!&M37]W<7EUJNFSSNUPQCD,CAB-F=J@$\8
MQCZY]*UY+Z3P_J*:9.D%^UNZVTLAPJ2%2%)_'%<\GPST*.SAL1/J?V&WN5N;
M>U^VN(X&4[ALQR!GWX[8KI]0TZ#4M+GTZX,GD3QF)RCD-@C'#=0?>@#S2/QB
MVEZ=KTS6>J:=K^G:4TSZ7?SO/&Q!P)HW+$,N3@D8S5W69KS0M#\,>(-/U&]N
M;B>ZM8;I);AY$NTFP&^0G:K9((*@8Z=.*[&#PW9+=27-V\U_.]L;0O=E6Q"3
MDI@  @G&2<DX&35;3_!VFZ<EG"DEW-:6#^99VL\N^.W;! *\9. 2!N)QVQ0!
MCZ''YWQ/\<Q[W3=;Z>-R'##]W)T-<]X>\17\O@OP+:7>H7!;6;V:&ZO&E/F,
MJF5@@?J"Q"KD'.,@8KT&W\-VMIK6I:M!<727>HJB7#;P00@(3 (P, G'ZYK/
M/P^T%_"<7AJ2.=]/@D\VWW2GS('R6#(XY!!)_,CIQ0!GZ_IEWH?ACQ?-;>(+
MXJ;)[NT@,K&2S*QMG;(Q+%69<XXQ@@5C7UHFH>(/AA-<S732SVTPD=;J1&/^
MB;LY5A@DGDCD]#D5V,7@[3H]!O-)>XOYTOHS'=7%Q<M)/*A!&TNV2!@D8&,9
M..II;GP;I=U::1!(]V#I)_T2:.X9)$7;L*EEP2"O![^] '#>+M2O+31_$.JZ
M=JE]=7%CJ402Y29HH;4!XE-N$W$2D9.XE<?-R<C%;*Z?"WQRN7WW(/\ 844W
MRW,@&[SW'0-C;@#Y?N^W-:5U\-_#]W#JD#_;5MM2E\^:WCNW6,2Y!+JN<!B0
M#WK2;PIIK:W::N#=+>6UN+8.+E_WD8;<!)S\^&R>>YYS0!Y^_B74]$\'>,;D
M7]Q+-#XC>QAN)WWFWC8Q+D9X 4,2!TS70ZS]J\-^,/#*Z?=WLEIJDTEE=V\U
MP\P/R%ED7>3M8;3G'4=:V[?P9I$-AJUC*DMS:ZM,\]Y%</N#R-C<PZ;3P.F,
M8&,5-8>&;2RGMIWN;N[FM(VBM7NI Y@4@ [>!DX &YLG'&>30!Y?=R:FGP\\
M5:V->U8WND:M=+:-]K8*JQS  ,!PX(XPV1Z <Y]F,@%OYKLJ )N+'HO'6N;;
MP'I+:%J.C-+>-8ZC.UQ<H9N7=CN8YQD9.#@>GUKH5M4%E]ED+31[/+;S.2PQ
MCF@#R^RU"^M]3\%W%OJ5_>0W]W+#<7LTK+'?J8W8,L)8A5! VGY>G P:T]*6
MZ\:Z#JNH+KEWIFHQ:E-%%+%*VRT6&3 4Q[@K949;=UW^PQJV_P -M!M[?3X%
MDU%H].F\VT#7LA\D8(V+SPN"??IS4TOP^T.37;C55^VPF[<27=K#=.EO<O\
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
M8H\)6OBJ\T.ZAT2<C=/'*DC0J6V!G3@XSZ9/M7=QR)-$DL;!D=0RL.A!Z&O
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
M1&UUBQN6868&P&*9 1A=RG)YSOYYZ>GT %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !6
M-XM22;P?K,$,,LTTUE-%''$A9F=D(  'N:V:* .0\(>'+>/PYX?DO4O&N+"V
MCV6]VS8MY1&%8A3W&6 )S@'Y<"I[OX>^';W79=8>VGCN+@@W,<-P\<5R1T\Q
M <-^/7OFK&K^+K#1O$VC:'<9\_5&=4?/$9 RN[_>(('N#704 9,7AVP@\12Z
M\GGB_FB$#L9F*F,'(7;G& 23TIMMX8TRVU'5+Y8Y))=44+>"60NDH"[0"IX
M"\<=JV** ,'3O"&E:9]D2$7$D%DQ:S@GG:2.W."/D!/8$@9S@'C%5[OP'H=W
M?ZA=[;N!M10I>1VUT\4<^1C<R*<$X/7OWS7344 4]+TRUT;3+?3K)76UMT$<
M2O(SE5 P!EB3BLN3P9H[W%\ZI/'#J#^9>6L<S+#<,>I91W/?&-W?-=!10!CZ
MEX:T[5-0T^^N!.)]/8M:^5,R+&2,$X!P>..>U:KQI+$T4BAT92K ]P>M/HH
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
M#*P8$$$$ U43PIID>L6^JH;K[9;P&WCD-R[?(3D@Y)W$GDDY)/>MNB@#F_\
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
M V6CVI@A))PTK2'J3C+$D#)/'3D^IJQ::'866K7>J0I-]LO%59G>XD<,%R5
M5F*J!DXP!U- 'D'AZV:+]HKRY+66"6'2BTGG2*\DCD9+LR\$DM^'3@8%>X5@
M0>"]!M_$[^)([28:O(-KW)NYF++@#!4MMQ@#C&.*OZ?HMCIEYJ%W:1,DU_*)
MK@F1F#, !D G X':@#0HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH ***@O(([FSFAE!*,I! )'ZCI0!/17SCX#U6TNOA/XCOM
M<\0W<6IP2R_9)FU*1)@1$I0*-V3\W;!S7H_@CQ;?:9\)(?$'C66:-H0W[R5/
MWLJ;L)D=V.<#UX/O0!Z/17#:QXKM]3T;Q)H\EO=:?JMMI+WJQ2, VPH2KJR,
M>0V ><@_G6-\/?%\6D_"+P]>ZM<7-Y>WUQ):VZ;O,FN)6G<*H+']2< "@#U*
MBN0E^(VB6FDZS?7_ )]J^CSB"\MV4,ZNWW-N#@ANQSZYQBI=*\=V&H^)KOP_
M-;7%G?V]L+L"4HR20D [E9&([CC^= '545RGA[QW9^)19S6-C=_8KR22.&Z)
MC*90$D, Q9"0N0".14$?Q)T:5X)EBN/[,N-0_LV+4,+Y33XX&,[MI((W8QD>
MG- '9454U34[/1=+N=2OYA#:6T9DE<]@/YGVKG-+^(.G7^H:19SVEW8MK-N;
MC3GN-FV=0,X^5CM;!!P?4=^* .NHKQ+37OO'7Q4\3:9JC:Q:06AA-M]GN(T:
MRV\]F(^<]2N3SSCMU_Q<\;7/@CP=]IL-HU"[E%O;NPR(^"2^#UP!Q[D4 =]1
M7&^'O!%I%H-L^HW5_=:M-"KW%^UY*)?,(R=I#?* > !Q@=ZXKQM%J?AW5OAQ
M9-JMW),^K&&XF$[ W*>>A&\ X/#<@^IH ]GHKC-;^)6E:/-K$:6MU>_V,(VU
M P%!Y0<\8#,"V.^.!ZUB^-]>T>\N? ]V][K4-O?7D4UG)8%524MMPLH+ @?,
M.QX+"@#TVBN-OOB+9VGBR\\,QZ1JMUJ=M;_: D"1E9%P#PQ<8X/\6.F.N <C
M_A=&AGPW;>(%TS56TV2<6\\PB0"W<]FRWS<<_+G@C.#Q0!Z317-:EXULK'Q%
M%H4%M/>ZA):&]\J!D!\H''&]AN8\D*.< FMVPNUO].MKQ$=$N(EE57&& 8 X
M/OS0!8HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
MAO)?)LY9-DCX4_+&A9C[ "IJ* /GOPE\*KW5?AIJNA:SILVG:REXUY83RI@
M[$&-P[$@@CZ''%;.IZ5XR\:_!Z;0]6TNY@U^PD1T,N-MXJ'J&SC=@GKU(![\
M>UT4 >865F=4\+:I>_\ "&7FG:P^D2VDDEPN999&7 CC^8L4W<Y. ./?'&OX
M)\2K\+O"#PZ1/)J?A^_DGGT]CM:1&E+_ "GOQMZ<\GTKZ!HH \OUBVO_ /A!
M]8O_  MX+-IJ5]Y2O#?Q(\TN"<NR$L#MS\NXYSDXP!G*\,>'M>L_BQ'K5SH5
M_':7&D"%Y;F9)6$F%SYC;NY4\#L1@#H/9:* /%_"G@R_TKQY97VA6FI:3I5]
M;2-K&GW*D10.5^58VZ/\QR,9*@')YQ47@#PM>:/;2^%O$/@^>^DM[TS6M^2#
M:[>SDEN".2, GG&!7MM% ',?$/P]<^*O >K:-9L%N;B-3%N. S(ZN%)[9VX_
M&N#M_#.KZ]K?P[W:?=64/ART4WTEPFP"10@")G[^3'U&1@]>U>QT4 >8^"])
MU.S^+/B_5+K3KF&QU#9]EG>,A7V]?I^.*UOBIX'D\=>$C96DB)?VTHGMBYPK
M, 05)[9!Z^H%=Q10!QOAWQ+J2:%:6FJ^'-7CU>")8I8D@#1R.HQN67.S!QGE
MABN>^(VDZWJ^O>!;N'2I93I]^MU?"VRZPKOC.,G&[A3T';IR*]3HH \3\::1
MXN\0:GXOM/\ A'IFM)+9%T^2W=(XY2I!+2'(:1\<*#D+Z#K3-9\/Z]=>'OAG
M#'HE]YND2PO>IL!,2IL!/![[20.OJ!7M]% 'EB:5JD7QTU37FTR[.ER:6;=+
M@1$AG"H< =?X2.G6N%3P;XF'P,E\/'0[W^U&U83B#9_RSVCYLYQCC'7-?1M%
M 'D'Q$\*?\)'#;W,.F:I;ZQ9:?%)I]_:1$EI<M^XD Y7! (;@#<>>Q]-\/QZ
MC%X=TV/6'#ZDMM&+IACF3:-W3WS6E10 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
MDU<RWSQ:+/ILF(S>M)<17"@G=&^T$*5ZC/!Z8K*T'4+O3?!7@/3+2>5GUB)
M[23;2JI 7*(V#MR0!TSC.,'! !ZG17EWB5O%WA[P=XKN7U8PPQ)'/IK+.)IX
M@<"1'9DY7/0_>'K6MYNJ:5\1-%LWUB[N[;5[*Y::*4+LC>,(5:, ?+]XC'/O
MD\T =E/>+':W<MNC74MLK9@B(WLX7<$&>,D$=?44ZRN'N["WN);>2VDEC5V@
MEQOC)&2IQQD=*\R\,Q75EX+\;7=KJE]'<V^H:D(I&<2$&,DJWS Y/R@$UH6/
MB&]OV\"Z+)=2H=4TK[;>7"MB27;$AVANHRS$DC!XX(S0!Z)17EVJZWK6E+XX
MT:/4[D_V9IHU'3[LA6EC4HQ,;$@[AN7@GYL=ZMVUWJ^G^)/!4DFM7=U'K4$B
M7<$NWRP5@\Q2@ R"".I))SS0!V^M:K'HFCW6IS03306L;2RK"%+!%!)."1G
M'UK$;QY8P:):ZW>:;J5II-PB2+>21QNBH^-K,$=F4'(Y(XSSBKGC?_D0?$7_
M &#+G_T4U>>:G;^(YO@58+$]B^FC2('NTC5EG-LL:E@C$E=VT=QZX[4 >OHZ
M2QK)&P=& 964Y!!Z$4ZO/;#Q#!J^J>%M"TJ2XM=)N=(-]D-ME=%VHD6X<C&2
M20<_*.<9SDZUK^NZ;IGCW28]4N1)HL,5U97N%,GER*3Y;DJ<X((!^]CO0!ZQ
M17GZS:IIOCCPQ!)K-W=V^M6EP+F&7:$1HXU=6C  *]2.I/J2>:QKO7]9C^%'
MBG4EU2Y%]INI7,5M<9&Y428*H/&#QQR* /6:*\]\8Z[=Z-J\KZF=3MM#EM$6
MWU+3\LMG/EMS3*O)'*8R"O'3)-=W:2I+803).DR/$K"93E7!&=P/H>M $]%>
M6VVMZI;ZCX3F75+F^&H7\EM>70XM+D%78")"<@*5&&4 ''5LTR>;7;JR\?2'
MQ+J,9T:>1[/RQ&I&V!9 &PO*YXP,9R<Y[ 'JM8N@>(XM?EU2..TN+9].O&LY
M%GVY+!58D;21CYO6N;L?$-WXAU_0=%DGDMTFT)-7NV@;8TS,54(&'*J"6)P0
M>@SC.7?#>!K:^\8PO/).4UR0>9+@L1Y4>,D=3CC/>@#N&FC25(F=1*X+(F>6
M QG'YC\ZR?#OB.'Q$NIF*TN+9M/OGL9$GV[BZ*I)&TD8^;U[5S>HVC3?&K3?
M],NT4Z--($27"C$L8P!Z'OZ\>E<SMU"W\-_$35K#5[NQET_6KNXB2#:%=UCC
M/SY!W @8QP.O7L >R45PDFLZAKOB)='@WQQII,-ZZPW1@=GE+#(8*3A=HXX&
M6YSQ70>$XM<M]!BM_$5Q;W.HPLR/-"V=ZYRI;@?-M(SQ[]Z &R^)D.HW=E8:
M;?:B]D0MT]MY86)B VS+NNYL$'"YQD=^*O:-JUOKFE1:A:I*D,I<*LR;'&UB
MIRIY'*G@UQ&L>'_$>D:_?^)? ][!<_:I,W^CW1_=S2* I9&_A? 'I]>U5KCQ
M>VJ>%/#^L:0MQI<LNOPV=Y:D\JSS8F1@1@Y))SP>>W(H ]/HKA[J_P!17X@:
MUID.HW$5LNAI=Q*-K>5*9'4LNX'LHX.17)G4O$UC\.M!\<#Q#>7,Z_9S=63J
MGDS12.$(P!G?E@=V?7 ' H ]DK%USQ'%H5WI-O-:7$HU*\2SCECV[4=@2-V3
MGH#T!Z5R45MKOB#Q9XPTE?%.HV<%B]M]E,"QAD+P[\$[>5!/08)XR:R1K=]X
MA\(?#S4=3VF];Q#'%,RC =H_.0M^.W/XT >NT5YW-=>(?%/_  D/]CW+6MS8
M7TEG9LMUY:Q/&%Y=-AWAB<G.>", =2Y9==O?B#;:1=ZU-!#/X?%S/'9E-BS>
M:JL8V*YP>Q.3@G&,\ 'H5%>.3:EX@C^&VMZR?$=\;S0;ZX@MR @$RQ3;1YWR
M_.2..PZ<9R3UEWJ6H:YXJU'1;9I(HK*R@EQ#=>0Y>7>=^0I)"A0 .F2<@\8
M.WI&944LQ 4#))/ %>9S3>+K6^\$Z;JFN".]NIKFWOFLPC))LB=E?E =V,<?
M=SS@U0U:?4/^$5^).BW&JWMS'I2!K>>20"7:\ D*,P RN2?PXZ4 >M1R)-$D
ML;!D=0RL.A!Z&L?Q5XCB\*:#-J]Q:7%S#"5#K!MR-S!03N(XR1TS]*Y]O-M+
M/PQ9KJMTT,\+-)9Q,?M-T?+7:$<8V(I)))('W03S@\OJ^J7VJ? S7VU&:2:>
MVOVM0\N-Y5+I0H8C@D#C/?% 'L+$A20I8@=!U-<>OQ%L#%JLYTC5Q;:3.T%]
M,(HV$++RV0KEB .<@'BNQKR?PW:ZQJ'_  L+3]+6R3[5K-Q"T]S(W[O<B@D(
M%.[@_P!X<T >H6%]:ZG807UE.D]K<()(I4/#*>AJQ7 PZ/\ \(Q;^'?#-OJE
MS+;06DH:SM<I<W3Y'[S<"-B LQY8#)49/2L:'5?$=_\ ":T\0Q:A=O?:;<RO
M=1QE0UW;Q3LKHV!][8O4<Y'O0!ZO17(B_DU^ZO;_ $K5)XM/M]/7RY(2I5YI
M%\P-A@1E4*=O^6G/(%<?!J7B!?!G@GQ /$%XUY?W=K:SQNJ&%DE)4DKC);H<
MY_(<  ]>HKSB76M1\*>)?$UL^H76IVMKH7]K1I=E2RR N"H*@84[1QV[5:L+
M?Q3<7&A:K;7Z?9)T4ZAYUWO29'48:--F$8$@@# /0YH [VF&:)9T@,BB5U9U
M3/)4$ G\-P_,5X]=:GXAC\ ^)-?_ .$COS=Z/JMPENN(PCK'*%Q( OS CC P
M/:NEDM6F^-T+&\NU7^P3,$67Y0?/4;0/0X&?6@#OZ*\WT;Q#<+XJL]+\03:C
MINKFZF*K(2UIJ,6'V+$1\HP"AQP?EYR37I% #&FB69(6D42N"RH3R0,9(^F1
M^=/K@;^T:7XV:?\ Z9=JO]BS2!%EPHQ-&, >A[^N!Z53MM5U3Q'X#U?Q3:ZG
M<6E]!)=/:1(P\N)(68+&Z=&W!>2<GYN,8% 'I5%9GAS5&USPSI>JO%Y3WEK%
M.T?]TLH)'TYK3H **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ J.>-I87C29X688$D8&Y?ID$?F*DHH
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
MGCB=?+9D4JKX*GD D=<>HK.3X>:?'X:TO04U+4EM-,N4N;<[HM^Y&W*"?+Y
M/M]:Z^B@#DK_ , 6=UX@EUFTU;5M,N;E56\6QN!&MSM& 6&TX;'&5P:ZB&WC
MMK2.VMQY44:".,+_  @# QGTJO=WES;W]C!#I\MQ#<.RS3HZA;<!<@L"<G)X
MXJ[0!S^A>$;309-5:.[N[I-4N'N;F*Z\ME:1^&("H."!C'2J<'P]TB'PW>>'
M)+B]N-&N,[+2:12MOEMP\M@H88/(R3BNLHH YO1?!\.E0RQW6JZIJQ>$VZOJ
M$X<QQGJJX ZX&2>3@<U2?X;Z5+X5MM!FOM3DCLW22SNC.!/:E.$\ME4 8!(Z
M'/?.!CL:* .3G\!VMYX;O='OM7U6Z^W!5N+N69&F=%.0@)7:J@YZ#N?6KTWA
M>&?7M*UB74;YKG38GBB'[L*P< -N&SG.T=".G&*VIKB*W"&614WN$7)^\QZ
M>],O+@VEE-<+!).8D+^7&1N;'8;B!^9H P(O!%E;V^N6\.H:C';ZP\TDT0D0
MK$TO^L* KW]\X[8R:)/!%@VFZ+;)>7D=QHH"V%ZK)YT:A0NT_+M8%0 01S6E
MX;UN/Q'X=L=9BA:&.\B$JQN<E0>QK4H YVX\'6=WINKVMQ=W;3:NGE7EV"@E
M= NT*/EVJH!(  [D]3FD?P=;27.@SMJ5_OT0$6W,7S938=_R<_+QQC\ZZ.B@
M"AK6E1ZYHUUIDUQ/!#=1-#*T&T,48$$ L"!D'TK";P'!+X?AT"XUS5YM)CA6
M#[,7A0/$H ",R1JY&!@\\]ZZRHY+B**6*.215>9BL:D\L0"Q _ $_A0!AW_A
M#3KHZ5):F73KG21MLIK7:#$A7:4PP(*D #!'Y5%>>"K"_P!'U6PN+J[+ZL0;
MVZ4H)90 %"_=V@     ?F23L6]Y<S:I>VLFGRPV\ C,5TSJ5GW E@H!R-O0Y
M]:S?$7BNWT'0HM62WDO;:2:.(- R@#>X0,23TR1T!H 27PG!-JVBZE)J-\9]
M(1T@&8MK!U"MO&SG( Z8K+O/AKIU[:ZQ9-JFJ1Z=JLS7$MG'*@C25B"S+\N[
MDCH21SG'3':44 <_<^%1<?:E&L:BL5W;BVN(B8V5U (W?,APQ!()'MQP*U[?
M3[6UTN+388@MI%"($CR>$"[0/RK-T/Q&FMZEK%D+.:VDTRX6!_-927)4-D;2
M1C!'>MN@#BK?X::?;V>EVHUC67BTJX$UD#<*/*&"-@P@RN&(R?F'8BKR^";1
M8-?A&I:@5UPL;K)BR-R[#L^3CY1CG/YUT]% ')S^ ;)ET:6VU+4;2_TB$6UM
M?0M'YC18QL<%"C#CNO7FM#P_X7M_#USJ4\%[>7$FH3_:)OM#J1OP 2  ,9 '
M],5N44 8FI>&+;4?$%CK7VN\MKNTB>'_ $>0*)8V()1L@G&5!X(/O6>/ =E_
M9&N::=3U$P:U/)/=DF+=N< -M/E\ @ ?A75T4 <CJ?P_LM0?3;F+5-3L=2T^
M#[-'?VLJI*\7]Q_EVL._3K71Z9IT6EV*6L+RR!<EI9G+R2,3DLS'J2?_ *W%
M6Z* , >&9+>\O;FPUO4;1KV4S31KY4B!L 94.AVG '3CU!JO<>!=*F\+KH4<
MES B3BZ2ZCD'G"</O\W<006+<GC'-=/10!R$WA2UTJ[O?$,VJ:A<7K:<;25I
MW4K( 6()55'.6X"X'MDG.3X \.)?^ /#T6HW=Y+#:+'*UA,JJJ2H<@-\H8A6
MP0"?3J,5Z+10!YSHEI+??$?QK)!J-Y91W#6JQO$B[90L(5BI=2,J<C(]>>U=
M%=>"=-GL=%LH)KJSMM'G2XM8[=D^^H(!8LK$_>;/KDYKI** .2O?A_97'B&X
MUBSU75M,EN]OVV*QN!''<X& 6&"0<<94@_CS5]/"EI%XEBUR"[NH9HK+[!'
MGE^4L.0V "F>H!SGM6]10!R)^'U@WAK5-!;4M2:TU.X>XN&+1;]SMN8 ^7@
MGV^F*=J_@.TU34+/4XM5U2PU2VA^SF]LY522:+.=KC;M(SST%=910!SDO@VR
MDN]%N%O;^-])=Y(<2*WF.X(=I"RDL3N.>1UII\$V$C^(6GN[V9=>C"7B.R
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
MIX9L= 2]U 6-E.MQ"-Z;@RMO7)V<@-S5Z;PI;'6I]7L[Z]L+VZB6*Z>V9,7
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
M,H=58892&!5E/H0?;%5+[P3INHZ%J&E3S7134I!+>W =1+.PQU.W &%48
M&!0!DAK_ $?XEZ/:?VM>W=OJEC<O/#<."BO'L*LB@ +]XC _GS3_ (JAF\'1
M!&VL=2LP&QG!\].<5MR^&()]=TW6);Z\>ZT^)XHLE I5\;MP"\YP/3IQBK6O
M:%9^(M*?3[[S!$SI(K1/M9'5@RL#Z@@&@#B;ZYU7P5XUM475K_5=/U&PNYY+
M>\<.8I($#[D( VALXP!CGZ8?I,7B;5+'PWXAM-2MXQ,8I[\RW\CQ7$+CYD6+
M9M1@2-N",8P2>M=?9^'X+>^-]=7%QJ%Z8?($]ULRL9.2H"*JC)P3QDX&>@K'
MT;X=Z3H5Z)+.\U3[$DAFATU[LM:POG.53'8\@$D \]10!Q+0WD7ASXBZK9ZM
M>V4UAK%W<0K;.$!=8XV^;CY@<8P>*ZJ_O+C4M0LT^WW3M+I G&G6$AA=)&(_
M?O(&&%'W0I/)S@''&D/ M@-+UK3C?7Y@UF9YKS+1Y9G #8.SC( 'X<8I?^$&
MT\:E;7ZWNI)/%9K92&.<(+B%3E0^T#D9ZK@T <7-JEWK/P[^'>H7\IENI]:L
M#+(1@L0S#)QWXK:U#38Y?C58$W%VN_1II#LN'7!$T8P,'@>W0UIP_#S2[?0]
M+TB*]U);;3+I;NW)F5F$BG*YRIX&3P !ZYK3E\,P2^*(/$!O;P7D-N;95!39
MY9()!&WN0#G.: -NBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHK!\;:U<>'?!6KZO:H'N+6W9X@1D!N@)'H
M"<_A0!O5S^J^))[;4+K3M*T[^T;^TM5NYH/.\KY&)"JIP<N=K8!P..HR*YO6
MY;SP[;>%M8T_4;VZ:ZOK:TNXYKAY$NDF&"P4DA6!P1M ';IQ3]'TR ?&+Q$_
MF7>8[*TE'^ERX))DR"-W*^BG@=A0!W=I.US9P7#020-+&KF*4 /&2,[6QW'0
MU-7+^/K#4[OPO/<:-=74.H66+B)()FC\\+RT;;3SN ('H<5F#Q+'JMM<^*-+
MEGEL-,TAKA85F8+-.R>8$=0<%D51U_YZ^U '=T5Y7J>H:CIWPRTCQK::E>3Z
MF%M;FX1IV:*Y$K('C\O.U1\_&T C'UK:TZ>YE\8^.]/DO+MK6W@M'@0W#_N2
M\3LVPYRN2 >* .ZI')5&8*6(&0HQD^W->16M_JU_X;^&TK:UJ$<NHR^5=NDW
M,H,3L2Q[GCJ>E>HZ1IO]D:7#8B\N[P19Q/>2^9*V23\S=\9Q] * */A7Q$/$
M^DR7PM'M=ES+;F)W#$&-RI.1QVK;KQ!5N].^&6K>(+/4[ZWNK#6IWACBG*1'
M-WM8.@X<$$_>S[8KL[RYU#Q#XM\0:)#(433X8%B$>HRVK*9$+&3]VI+<X')P
M-O3DT =?>W5Y;W=C%;:>US#/*4GF$JK]G7:2&(/+<@# ]:NUYQ<R:[IU[X"M
M]0UIKBZ>\EMKUK5R(KC;')@L,#)^49SW!XIVD6%[J_CKQ1;W&OZNEOIE_:R6
M\45SM7F(.488Y0DD;>/Y8 /1:*\S\.ZQ=0>)--TKQ'_:=EK#/*T<_P!H>6RU
M-2K?<^;:IP0P7 QC'>O3* "BN%O;J^U_QCKFAQ.RQV%M!Y:IJ,MHX,@8F0&-
M26Z <G QTYK/UNU\2:7X-TG4WUJ2]UW3)U6:&UGD$6I .08BH_CQWQU!SQT
M/2J*\[N/$)TWX52^);'4GN9;UHY#/),S) 9951@H;.P1[B,8_AY!J2_BU_PS
M->Z_'=1_V?%IL[/83:A-=&:9$9T9#(HVG"G(!P1DXXH ] HKC-'TV>^T_P .
MZ]'XBNU,L*27@>5GCO/-0?*%+!8SN(P5''2N5NM4U)/A/XQNUU.^%UI^J7<=
MM/\ :7\R-4E"JN[.2 .,&@#UAKF%+N.U:11/(C2)'W95*AC^!9?SJ6O/9;"&
M?XV6<CR7.XZ TIVW,BC<)T X#8QZKT/4@U0M+^_\1?#75O%::G>6FJQ-=SP"
M.=EC@\EFV1F/.Q@509W D[B?3 !ZC17EJ7&I>*?%6@Q2ZMJ>GV^J^&S=SP6D
MYC\N0F/E?0C=UZ]NA-+J^I77A[5YH=?EU=-*:>!;'6[:Z=HX0H13'<(I !+!
MLL0<[^V!@ ]1HHKF?%4V-0T2V%_<IYT\A-A:966]PAX#AEV*I(8G(' '?! .
MFK"D\1^7XV@\-M92 S6;W:W)<;2%95*A>O\ %WQ^-<!;>)]6LO#-Q927<Z2S
M>+#HL=Q)*99+:%G!/SMRQ"[E#'U'I6P^EQV7QDT](;F\*2Z'<#][</*4/F1C
M*ER2.WMQ]: /1**\5^T:LGPB3Q-_;^JMJ=GJ#+&[7+;&7[9Y95UZ.-I_BSC
M P.*Z^)+K2/BE9Z?'JFH7%MJ.F3RS1W,YD42(Z8= >$.&(PH ]J .NTVZO+M
M+@WNGM9-'</'$K2J_FQ@_+)QTW>AY%7:\=O]2U:/X5>,[I-9U 7=CK%S%!<"
M<^8J+*JA<]A@]L5TY2[T?XGZ5:)JM_<0:G87+W$5Q,70/&4*NB]$/S$84 >U
M '7:==7ET+K[9I[67E7#Q0[I5?SHQC;)QTSSP>1BK,\\5K;RW$\BQPQ(7=V.
M J@9)/X5YMI=QXAN?"OBJ.PNY[V_MO$$T,"SW.QY(4>/,2O_  $H& (Q@G/'
M6LCQ#J=CKGPT\8K&^L6UU:Q(;C3=0FD$EJ^..2QW(W) R0<?3 ![&K!T#*<J
M1D&EKSK7;6Y@\3>"M,L]7U.VM+W[2DZ)=.Q<" M]YB3GKCGCC&"!4.L6\UBF
MK:=;:YJ^HRZ?I **+IHWM&P["6:56&]FP,#!.%Z8)- 'HTMS#!+!%+(J/.YC
MB4]78*6('X*Q_"I:\G=#KFM?"V_OI[EKF]T^:2=XKF2++?958D;6&TDDY(QG
MH>*V](DG\93>*Q-J%[:2V.HRZ?:"VN'B\@1JN),*0&+,2?FR,8'2@#O:*\@T
M_6]9\3P_#JXN-3O+-]4^UQ7B6S^6LOEQR#=@=SMR#VR",8%7O$+WWA5I(=0F
MUZ]\/I9+ FJVMX[SV,HW%I)E4@OPRG<0<!0,<T >HT5#:31W%E!/#*)HI(U=
M)!T=2,@_C7(_$FXOK72](DL-0N+*235[2!FA;&Y7D (;U'MT/>@#M**\NU"[
MU3P-XON4M]2O]4L+K1KJ^-O?3&4Q30 '*G^%6R!M'&3],7]+LM?OD\.Z[;:K
M'##(L;WKR:C+,EW'(HX$90(C9(*[<8/'2@#T*BO,O#%AJFJ0Z_?'Q'J?VK3=
M7OX+-9;G]SA1M02KCYE!(/MCCOF'2_%,NF?;AJ5MJUCK^G:1/-)I]Y</-!>%
M K>;$Y8@\J1Q@X<^E 'J=%>6ZI?ZCIGPVT;QG9ZE>3ZCMM+BY1IV:*Z$S(KQ
M^7G:HR_&T C'UJT+2\U;QGXVT^;7-6CM;:"UD@2"Z,?E,T;G*E<$#(Z#KWS@
M4 >D5A>+_$?_  B?ANYUDV4EVD!7=&CA,;F"@DGMDCH#7(Z/J]UK'AKP3+>:
MG=R75U:O)-8VI*2WI" ;S(&78J_>.3@D@=<"L74[Z]O?@9XE2_GDFDM=0EM5
M:60R,$2Z4*"YY; XR>3B@#V6BD==R,H8KD8W#J*\HT*;4;?P=J_BJ?6M5N[K
M2)=2\FWDN"89 A<*)%_BQC(Z8[4 >L45P.GZ=KT\^A:S;:LD-I)&/MADU&2=
M;M)%&TJC($1]QR-N!SCIQ7+QP:U>?#G6O$"^*-8CU#2;J]DMC]H_=E89&.UU
MZ/D+CG@<8'7(![-17F _M'Q-XWM;*;6=5L+:^\-)>R0V=P8S'*TBC*G'RD>O
M7C'0D&2-=<\60>((M/OGM[NPOY+*UN/[1EB,!BVA6:)4VONY8[LYW8X % 'I
M=%>7^)=4U33'DN=:-_+H\UA$G]J:+</ML9]IWR-&I!*DLK!CG@ 8YK1EU"Z\
M3^*-6TFUFW6UI9VSP&+49;5F\U6;S08U);^$#)P,=.: ._IDTT=O!)/,ZQQ1
MJ7=V. J@9)->9RQ>(8-:\"Z7J7B*>2XG^VP7TEE+M2;RXV*D\?>'0D]#DC!
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
MFNA))+<2K!;6\*[I)Y6Z(H) S[D@#N:I7WB#5-)LOMM_H1\@LJG[+<B5XMQ
MRX*K@#/)4MCZ<T 1+X#T=;'1K59+Y?[()^RS+=.)%4KL*ELYVE<# QP.,58F
M\(V#:I=ZA:W%W8RWR*EXMK(%6< 8!8$'#8XW+@^];]% &#<>$=-ENM'GB,]J
M-'!%E';L%2,%=IXP<Y7CFI+[PU;W]S>RM>WL27T0ANH8I!LD0#;C!!*G!(RI
M!]^!6U10!S:^&A!XML=3LY+FWM[6S^RM")_W#( 0JK'V(SDL?[J@9R<9GQ.M
M9K[1=+MH+:]G/]JVLLGV2&1V2-7RS90'&!_]:NWHH R;/0K6.\EU">2:]NYH
M! 9KH+D1==@4*  2<GC)XSG QE:)\/=&T"\\ZQFU$0(Q>"RDNW>WMV.?F2,\
M \G&<XKJZ* ,'3_"5AIUAJME'-=/!JDDLMR)) 27D&'8$#C/Y>U2VWAJTAO(
M;NYGN;^:W@>W@:[97\N-L;AP!DG:N2V3QUY.=FFN66-BB[F )"YQD^F: .=L
M?!.EV$,%I')=/IUM,)[>PDD#0Q.#N&.-Q /(4D@'&!P*L1^%K6'5=5U*.ZO$
MN=41$N2'7!"@A=HV\8!(_'G-6K34Y5TBTNM9MTTVZF9(WM_.$NR1V"J@8<-D
MD=*TJ .3B^'FCP0:1%#/J$+:2KI:RQ7)1UC?&Z,L,94X^OH:&^'>AG0]1T</
M?+8ZA<&XGC%R3\Q;=A<YVC=SQR>Y-=910!&D;+;B(S2,P7'F'&[Z],9_"LK1
M?#%AH>GW5A TTUK<R/+)'<,'!9R2_;H<\CI5/4O$UVE]J5CHNEKJ=UID44MS
M$UQY1/F;BJI\I!;:I/.!R.>>(&\6ZA="YDT;06OXK.\%G=(;D1RJ^U2VU2"K
M!=X!^8=&QP,D 70_ 6C>&;C[19S:D\$)9[>SENGEAMR<Y,<?K@D=SR<=:P?
MWAK[?X>U*TU5=4@MY]3N)I;&XB:*.9&E+*?F4-M(QD @'N.3GH-6\57^B:!I
M=_?Z)Y=S=W4-M/;BZ5A;M(X7.X#YL9["MQKF^&M);+8 Z>;<NUYYPRLFX 1[
M.IR,G=TXQ0!4_P"$;M/^$H7Q")[D7JVWV4*''E^5NW;=N/[W.>OO6;?_  ^T
M:^UZ;6%EU"TN+D 7:65V\,=T!P/,"GGCCM755#'=V\UU/;1RJTT&WS4'\&X9
M&?PYH R+OPK:74EYBZO((+V(0W%M"ZB-T"[< %3M^7C*D'WX&*FK^ =&U:]L
M[U'O=.O+2$6\=QIURT#^4.D9(ZK745@^,?$;^%/#5SK*V)O! 4#1B4)PS!<Y
MP>Y':@!)/".G-?:1=1O<Q/I(?[(J29 +C#EL@EBPZDD^O4YJ/_A"M+:/7(YW
MN9X];'^FI)(,,=NW(P!M(  X]*Z.B@#F)? NERMI<AN=26YTX,L5RMXXE96
M#*S=P0!Z8QQBF#X>Z$NBW^E*+P6U[<_:V_TEBT<F_>"AS\OS<^_?-=52$X!(
M&?:@#$?PK92:MI>IM<WAN=,1TMRTNX8? ?=D$L6P,Y_#%6[O0]/O=:T_5YX
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
M9Q5V@#G?"^F+%/JFMR6!LKK5YUF>)P ZHJA$#X)&[ +$=BY':NBHHH ****
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
M]R[8'JS$D_B:YFQ^'GA[3M8?4;2&YBWS?:/LBW+_ &82YSO\K.W.>1Q@'IC
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
MXEW&0.6'3 VXV^IKS[0M>OKCPWX$TB\O9S#J5]=6]S<M(1))' TFR,OU^8A
M>Y ([FNA\/V%OIWQ>\0Q6P98FTRU<(6)"9>3A<]!QG XR30!V]U>VUF8!<2J
MC3RB&('J[G) 'X G\#6/IOB*:^\8:SH,MDD*Z?%#*DRR[O-$F[M@;<;?>L'Q
M_86UWXH\%-,KDMJ;1DK(R_+Y+GC!XY YZ\5431+75_B9XKL[F2Y6W&G60V0W
M#QDG$F"64ACCZX]0>, 'I-4]5FOK?2[B73+2.[O57,4$DOEJYST+8.*\OT'7
M]0U'0/A_I]W=AQJ=O<&:2XD8>>\0 1&8')R"3C/)49S4WBG2M1\/?#GQ;&VN
M2OLVW5I%;S2*UFK'!3=NR4.#@'CK0!ZJI)4%@ V.0#G!I:\[\06!U+XCZ%I\
MM[?QVEYI=UY\4-W)&K;=@!&#\IYZC!/?C-=E<6*6WAN2QCFN=D-KY:R^>PEP
MJX!W@[MW'7- &E17C=BTFC_"G2O%/]I7YO[NWMK2YN)[MV2.*290S[<X4A<C
M<.><]>:ZB3P]JFGW]]>66NVVGQ7>FRPI;AW:,3 $K< L3M*\9('(Z\T =Y17
MEVDWQ,]_I.J:=?Z)KL6DRDI%=.T%TJ[?WT4@;[P(&?XOFY)Q6*UG>6'PX\+>
M,+/5-2DUI#9AQ)=.Z7"2,J&(H3MQ\W7&3C))/- 'M=%>9K;W_C:3Q1 E^EK>
M6>H26MO()9%DLP@78ZJI YY;/\62"<  6M+F_P"$D\4ZIHFKWQN19:9:& PL
M8UF,B$R7"@'KG: ?X>W4T =U/>VUM<6L$TJI+=2&.%3U=@K.0/\ @*DU%#/J
M#:O=0RV<:6"1H8+D39:1SG<"F.,<<YYS7G6I:);IXO\ A]:W-_<:G)']NMY+
MN25E>39$>I4]0003U..<UL:;";CXF^*]/FN+I[1["T81M<.1&6\S.SGY.G;%
M '=45YCX8EGGL6\$7MQ<2:GIVI,MS.TS>;);*1*DI;.<.K)'U_B-/%O>^-+G
MQ59I>I;75E>M:6S^;(LEFJHICD4*1U.6SWY&<   'I=%4=->=-"M'FN5OIUM
MD+SQKM$[;1E@.VX\_C7G.AVVI>*/"NC>)X=:@L[P2K<W%T'D8MACYD++NV[?
MX=O; Q0!ZI17E0TQ=2O/B)!=7VI/'9R*]LHO91Y3?9PX((;/#'(!R!Z5$AN(
M='^'7B+[??2:GJ-W:6]W))<N5ECEA8LI3.WJ >F<\]>: /6JY_7O$4VBZSH5
MDMDDT6J77V8S&7:8CM9ONXYX7U%<=9>'5\2:[XVL;O5M52.VO(Q:[+Z1?(8P
MJVX?-S@G@'('I5*QU.^UCP]\+[_4G9[N74B)';J^(Y5#'W( /XT >O45Y_HJ
M#QE=^+DU*>XCGL]2DL;41S,AM8T1=DB8(PQ)9MW?@=!BL"+4M5NOA]X6\>7D
MER]QIS[M1B21@MS;;VC:0H#@L!B0<>M 'K]%>;Z_K,EKX;U[Q9973I#<3P6E
MO,)&*);B58WF S@$EI"&'94-2ZC8:GX9:_\ $5CJ,"0KI<Y&GHTDB7$J(SI(
M-S'YACDCJ.M 'H=8'C'Q%-X6T!M4BLDNE2:*-U:79M#NJ ]#GEAQQ7-Z1I-Y
M=#PYXCM=;AAC*HUPXDDD^W+( -K@MC=D\''!X&!Q5WXM M\.KT!BI-Q:#(ZC
M_2(Z .VHKSJYT^;PK\2-"_LJ[OYH-6BNA?6MQ<O,',<>]9!N)VG<0...0 !5
M#0[;4O$_A;1?$\.M06=X)5N;BZ#R,6Y/F0,N[;M_AV]L#% 'JE%>2RZ;]O\
M^%CBXU#4V6PD,EH!?2CR6%L'!!#9.&Z Y ]*OV^L7NLWGA#2KN>,K?Z$+UQ,
M[*MS/B/(.TC. 6;'3G/84 =UKVLVWA[0;W5[S<8+2(R,$ZMCH![DX'XUEQ:I
MXJ_MR&TE\.VIL'*N]['?9$:D'(VE0Q8$#IP0>U<3XPT*XTSX2>);2_U0Z@;:
M8R6P#OFV1F0K$Q+$O@'C=V(]JWO$]L-+UWP5'9SW444FJ&.2/[3(5=3$[?,"
MQ!Y ZT =K'>VTU[/9QRJUQ;JC2H/X V=N?KM/^35BO/_  EIMK%\3?&\J(X>
M.>U*_O6(R\&6R,X/)/7IVJ?XA),=2\)I!?7EK]HU=+>7[/.R!D,;D@CH3D#!
MQD=J .RO)I;>RFFAB661$++&S[0Q';.#C\JS?"FN'Q+X6T[6FMQ;F\B\WR@V
M[9R>,X&?RKDM(LYO#OQ%U?0K2ZNYM'N-'%^(KF=YO(F\PIA6<DX8 GD]O:LW
MPU)"WP[\!6;W-P9)\E-/AP/MNU')5V)&$7AC] ,$D"@#UBBO%=0N=03X7^.$
M:[N8)=.UEXK;R;N0^2FZ+]V&X)3YV&",<]*ZS[,=$^*VF0VMW=F/4=-N'NEG
MN'D5W1D*OACA3\Q'R@#'  H [ZBO,/#-]<:?XBTC2O$=I<0:HXD^SZG!.9;7
M5?D));GA\?, 1Q@XP"!75>-9H8]-L89;VY@,]_#&D%L/GO#G/D9R-H8 Y.1P
M#0!TM%>1SRWT&E_$^R,T]FFGP)<6L5O=N1;LUMO(1N" 2 2O3DU=M[=]+\2^
M +J"\O6EU."2*]\VY=UF46V]<J3M&&&1@"@#M_%6M3>'?#&H:Q#:+=-9PM,8
MFE\O< ,GG!_E6C8W!N]/MKDJ%,T2R%0<XR <5Y)>2)XK^$/BG7KZ25K\F\
ME8?9EC9E6( ' &T#(_BW'.:]4T;G0=/_ .O6/_T$4 8E]XGU&2[U2WT'28]2
MDTN2..YC>X\IY&90Q$>01D*P/)&3D5N:3/J%SI<$VJ6<=G>L#YL$<WFJG)QA
ML#/&#^-</X+T:S_X2GQHH%POEZ@L:E;F0$ P)GG=G//7J*PM!UR\;P)X!T^X
MO+C;K%])#=W32MYCJK2-LWYR"Y"C.<XR.] 'H=MXBFF\<WGAR2R2-(+%+Q+@
M2[BX9RN-N!C[I[FM^O,FTNULOB;XA@MQ(D4GAR.0()&^0^;)]SGY1D9P.Y)[
MU2CO+IO /PUO6O+DW,^I64<TOG-NE5@VX-S\P.!US0!ZU5*6?4%UBW@CLXWT
M]HG:6Y,V&1P1M4)CD'GG/:N*T^$>-F\6PWE_<VU[9ZE)9VSPRE6LT15V.@!Z
ML=S$]^G05,\DB?%+PZL>H7$\$^CSNV96\N4J8\/LSM!(/4 =: .\HKR&:[E1
M/#6JZ=>7-RESXC6!]4EE*-=QO)("@C&08@!M&<?<! YS6M9:,FM?$GQ;:7>H
M:G]FM?[/GABCO9%".5=CCGID'Y>G)XZ8 .[L9]0EN;U;VSCMX8YMMLZ3;S-'
M@?,1@;3G(Q[5=KR676KW0M#^(5S#>7#&UU6.*.2:5I#!&XB5B"Q) 4.Q'IBN
M@70;ZPU=-4M-<MK&UGLY86A$CR1S/L+)-EV(W+C);N,YH [JBO./!]]+:>)K
M32-=TV[TW7%LI$#K.9;;40"A:56S]\;<\C(#')KT>@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *QO%L<L_
MA#6+>"&2:>>RFABCC4LS.R$ ?F>M;-% ')>$/#=M!X=T![N"[^U6-K&%@NI'
M(MY?+"L54G&?O 'G )Q@&MC3/#NFZ/?7U[91S)/?/YERSW$D@=L8SAF(!P,<
M=JU:YO4_$%^VL7NCZ':6]S?V=HEU(MQ(45MY8+&".A.T\G@<=<\ #+'X?>&M
M-UI]4M+!HIFE\[RA,_DB3^^(L[0WOCCMBEO/ 6@7EYJ%R\%Q$VHH4O(X+J2.
M.?(QN9%8*3@]<5T%I)--9P2W$!MYWC5I(2X;RV(Y7(X.#QD5-0!S.H^ /#FI
MZ;I]C/9R!-.&+.2.XD66$8QA9 V[& .,]A4U[X*\/ZAX?BT2XL UE"XDB D8
M.DF2=X?.[=DG)SDY.:Z"D.<'')[9H Q8?"6B1:#<:*UGY]C<Y^T+<2-*TQXY
M9V)8G@8.>,#&,"JNF^ O#^EZ9=Z?!;3-!=1&"4S7,DC>7_<5BV57V7%2>$_$
M-QXABU8W5I%;26&I36.V.0R!O+"_-D@=<GL*Z&@#$;PII4L=RMRD]R;BU-F\
MD]P[N(3U0-G(SW(Y.!D\"IK7P]I]K<-<,LMS,8#;>9=2M*1$3DI\Q/!(&>YP
M,DX%:M<])XAN8_']OX=:TB%O-827BW E)8E75=I7&!][U/X4 2:?X/T?3#;+
M;PS&"U<R6UO).[Q0,<\HI) ZG'IGC%6-/\.Z;I>JWVIVD<RW=^5:Y=[B1Q(5
M& =K,0,#C@=*U:* ,2P\*:5IQLO)2X>.QR;2.:X>18"05RH8GG!(&>@) Q4?
MA7PY%X;M[Z* /'#=737"PM,TOEY !^9NY()..!G'.,G?HH Q[WPSIU_=7=Q*
M;E6O(Q%<I'<NJ3(!@ J#CH2,C!YZU'?^$='U&^LKR2"6*>SB,$36T[P_NN/W
M;;"-R<#Y3Q6Y10!S7_" ^&O[ N=$.G!M/N)3.\32N<2$YW*<_(<G^'%6M/\
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
MP,481QNW+SD%ATYKMZYZ\\0W-IXYTO0#:1&WOK::87'FG<#'MR-N,#[PYR:
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
MH;N3$3&V#[A\W9CD9X'85UZ?#KPI'!' ND@117 N8D\^3$4F2?D&[Y1DG*C
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
M#Q5;6Z7$G+3)'<,JL3W.!C/?&:ZG37A\3^.O%=CJJ^:FF>1!:V[,0(T>/<9
M.S$G[W4!1@BNCO?"VC7]C8V4]GBUL9$DMHH97B6)E^Z1L(Y';TJ.^\(Z)J.K
M1ZK/:R"^2/RC/#<21-(G]U]C#>/9LT >9>%;Z6+P?X T8W$45IJ$MZLK7"ED
ME='?9&V&7.XDG&>2HZ]*N>+]"NO#W@3Q.BZX[J9[:XM[6VWQ"S#RJK*/G.4;
MD[3P.>*[EO /AA_#8\/MI,;:8K^8L)=B5?).Y6SN!Y/(/<^M._X0;P[_ & ^
MAFP8Z?(XDEC^T29E88P7;=N;H.I/0>E &#K_ (;N=(:WF\/VHU3-Q)=WNE7M
MXQ-X-@0LI<D94D'!XRWKBMOP-J.GZAX8CDL([J"-;B:-[>[XE@D\QBT9S_=)
M('L!6G=Z#87K6;S"X\VS#""5+J177< #E@V6S@=<UDZOX)TS4+33K6*U$8L[
MP7D<WG.'CDW;F?@Y=VYY8]3GG&" 7?&.HW6D>"]:U&Q'^E6UG++$<9PP4D''
MMU_"N;TW0#)>Z#X@LM=MXK=X]D@MXGSJ*R+P'8R'+#EMV"1@UWKHLB,CJ&1@
M0RL,@CT-<]HO@/PUX>O9+O2],%O,^[&)781[NNQ22$S_ +(% 'F=S8*WPR\7
MZFUU>M>Z9JMX;.8W<A:$I*-I!SR<#&3DUU5Q9)I?Q'\)R6LUR'U:VNUOBT[M
MY^V-64D$X!!)QC&.@XKI?^$)T#^R;W2_L<ILKV4S7,)NIB)')RQ)W9Y/7U[U
M8F\-:2UY87\D%P]SIJ,+5_M,I,8(P0!NYR!@YSF@#RV+08M1\ >*M4EU'45O
M]*O]0DLKC[;)F Q,2O\ %SG: 2V3COP*Z.&ZN;WQQX N[U=MW/HMS),,8P[)
M"6X^I-2^#/":/9:PFM:==PFYU:XNO(EF8131M)N0LBMM;C&01V&>U=?<:!IM
MWK5KK$T,C7]JI2&43R*$4]1M#;<' SQSB@#SFR8^(_A;K7B.ZFDAUZ%[R87"
MN5DM'B9BD:G^%0JJ"O0Y.<YJU>74^F2^$?'=^#'%<VT5MK$9)"1&5%VS;>BE
M7^4GKAL=J[.3PAH<MU=7!LV'VQQ)<PI,ZPSM_>>,-L8G'.1SWS5'Q#'J6MW<
MOALZ'G2+A$,^HR3(4V;LN@3[VX@8![9SVY .<U>]EL-#T[4?-%HGB+6H_M$D
MF[;';NK&-3@@J"$CW<CEW]:C\0V=_P""-*\0ZI::Q%'%<P1$6-M;LB6W[U$>
M9 7.WY7.0,<C/:O1-4TC3]:TN73=2M([FRE7:\+C@@=/H1V(Z50TGP?H.B:;
M<:?9:>@MKE=DZS.TID7!&UBY)*X)XZ#)]: .?3P]+8:K%K%GX@L[&WN+*6)H
MK>%A'<'8668DR,-RXW;L9(ZGFJ7A"YET[Q19:/KVCMI^M"RDCBNK>3S+;4E!
M0M)GKY@V@_-S\QYY%=+H_@+PUH,5S'IVFB);F)H7#32/B-NJKN8[0?08[>E7
M+?PSI=GM:*"61HH&@B\^YDD\N-L952S';G ''H/2@#7!# $$$'N*\G\;NEQ8
M>-;VPDENKFQ1,W,LGEC3W1 P2# )W<[F^Z/FQDXQ7?>%/#L'A?0UTVV41PK(
M\B0K(SK$&.=JLW) ]3U))P.E07O@7PWJ-W?W5UIBR2:@FRZ'FN$EXP"5#;=P
M'1L9'K0!S,EA:WOQ;T*XN(5>6;09)78YR6$D>#^&3^=8,$A\,^#OB/JVCVXC
MOK75KF.%UY,:D19./;);\*]+;PAH3R:=(;!=^G(4MB)'!53C(;GYP<9(;.34
MD/AC1;>_O[V.P3SM0S]JW,S))D8)V$[02  2!SWH Y'7[=-!N/!^J>'W</=:
MC!9S[7+"\@E4EFD_OL NX,>1SS4/A3P[::MKGB:2]N-0E-AKS_9A]NE'E_ND
M[ALGKCDGIQCFNRTWPKI&DO;M:V\F+4$6R2W$DJP C!\M68A>..,<<=*DT[PW
MI>E2WTME%-$]\YDN6^TRL7<\%N6.#[C!XH \BL[4P?";1/$(NKQM4M]558YW
MN7)"F]9&7&<$$$YSG/>NKFMYO&'B?Q9H\]W;126310VZ2QNSP1M$K"6/#K@E
MRWS 9X SBNE'@;P\-$CT464HTZ.7SD@%W-@/NW9^_G[W/UYHUCP)X;U^^@OM
M1T[S;N%!&LRS2([)_=8JP+#_ 'LT <IJUM+X9'ACQ3<:DVI0V16RU6YY5)8V
M^1;@KDC*MC)YR">:N7=AJ&I>'+G5-*:#[;JE\EU#;7#E8[FW3[L6>V]$WGW8
M@\5K:_#J&H%O"UMH(&CW-LL4M^94$449.'01_>W;1A<<9(]*W+_1K'4[.&UN
M86\J%UDB$4C1&-E^Z05((Q0!SO@/5+.[CU>%=-N-(OH+I3>:?.05MW:-0/+(
MX*$+D8QR3QS78US.M>#-+U/0+[3#9K-]M=9)7GN)-S.N-K,^=QVX&%SCC'%=
M!:P?9;."W\QY/*C5-[G+-@8R?>@":BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBL;Q;=VMEX
M1U:XO;RXLK=;5]]Q;?ZV,$8RG^USQ[T ;-%>660N-%\?VJV=C#9B7P[-(+2)
M]QE9'38TF  7Y(R,]3R:N>%;'2->\(^&?$LU_)'J22QSSWL+@2SSD[7AD."2
MA8[=GH !@"@#T>BO,=&M=-\9>'M<NM8NWMM3M=4G$UY&X6>Q$4F45&(.Q0BC
MV.6[DU?TM;;Q1XW\6V&MVZW"67V>*U@G7B.)X]Q=0>C,Q.6'/ ':@#OZ*\8T
MZYOIM'\$RWLTDTL'B62QCNW/SSP+YH7<W?[H^NW-:]S'&WB+XFP([(BZ9;2!
M8I"FU_*F)(VD8)(!/KWH ]0JI:ZE:7EW>6MO*));-UCG _@8J& ^N"#^->66
M6GP:;9?"_5K8RK?W?V>WGF,K$R1O:DE#DXVY P.V*L:7;Z/I1^)%Y-C3XX+M
MU^U6L8$L*M A)CXZY)/UH ]6HKR_2+8V/Q$T2VBM4L+:\T.8/#%+\\H5H]KR
ME0!YG)Y&<9/S&N:_LZ"#X0RZZC3G4[#5V-K<-,Y:+_3@A R>X)SZYY[4 >U?
MVE:G5O[+$H-X(/M#1CJJ;MH)],G./H:MUY_!IM@?C?J$K6EOYG]C03!S&,^9
MYSC=G^]@ 9]A69X<DFT?Q#HEAKVFQ//.\AT_7[)@R7^Y&.)A]X,5.<G.2..,
MT >IT5S'CF6S72K&WNY;D?:=1MXHK> @?:GW9$3D\;&P=WL#UZ'AY(I(+/XJ
M6#!+6*VLX[B&WLY66.&0VK,=N-O4J"> ">U 'K]8_BK5KG0?"VI:M:6\4\MG
M;O/Y<KE00H)/(!].GZBN"MM.@TO6?AQ?VGF)=7T30W4ID8F9/LI8*V3R 0"!
MT':J4HM?$_PK\8ZSJ<23:JCWRLS_ '[7R\A(U/50%"Y Z[CG.30!ZQIETU[I
M5G=NH5YX$D8+T!90>/SJU6=X?_Y%O2_^O2+_ - %>67,D#6WAW6M*+213^)X
MT75)W'VFY5YG5UX'$6,J 3R%'RCB@#V2BO-=7M)[WQ#XRMKRTEU$RV<(TLP+
MO^SL8V^0$?ZI]_S[CC@@YX%0M!=:9J'@[POJES;@7%A*T_VQ6N(KF\41@J07
M&[@N0"<9/3., 'J%!.!D]*\A\2>'_P"PO"[62ZS)<*NOVKQQ0!HDLQ)(F8E&
M]N,'(!Z9]ZVK/2+'3_BKJ.DV\ _L^^T%;BYMY&,B2R"8IN8,3DE3@GO0!W6F
MZC:ZM8I>V4HEMY"P20=&VL5R/;(.*M5X_P"%M)GG^#GALZ+'IXU"219GMKD;
M4OPAD)B<CKP"1GNM=EX!U"TO;/4XXM*FTB[@O2MYI\A!$$I1/N$<%" ",>I[
M8H ZZLWQ!K,'AWP_?ZQ<JSPV<+2LB]6P. /J<"N6MC#K_P 3/$FDZU!'<6]C
M:6OV*WG7<A1PQDD"GC.["[NHQCUKD=12:Z^"OBZWU#-VFE7UU:Z?//\ .YBC
MD"J=QY)'S+GVH ]/TNXU]]2=-1M;+[ \"RQ7%NY#*YZQLISG'7<, ^@K:JII
MEG;6.GQ0VEO%!%M#;(U"C)')P*\QM=/;QMI&N3W.KV=AJ-GJ<ZO=&V)N; 1R
MG9M?S!M78H[ '+9R<F@#UFBO)/%PMK^P\9W%NS7UW9:?&9;JZ.P6<BPEU%NN
M-P8\,>0 2.3@@:MG?Q:SXWTW1]:V7%NWA^*[@@G 9)YF;$C$'AF  QZ L>]
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
MH.N:+7P[I5G-?RPV@W:A_P ?>]V<3<8^8,2#QQ].*T]PW;<C=UQF@L!U(&*
M.?T?P-X9T W)TO2(;<W*-'*068E#U49)V@^@P*NV'AW2],EADM;=PT$9BA\R
M9Y/)0XRJ!B=@X'3'0>E:A( R3@#O7-^'O$%[JGB/Q'IEW#;QII<T,<30DDNK
MQ[\DGOR.@% %[Q%HB:]I8M_,\JXAFCN;6;&?*FC;<C8[C(P1W!(J+5/#NF>*
M]-@A\0Z5%(T3;PA<YC?N4=2#@_AD8R!TJMK>OWNF>+?#>EQ06[6FJ2S1RR,3
MO4I$SC:.G8<G/TK7MCJ?]JWPNA:?V>!']D\HMYO0[_,SQUQC';.: *[^&=%D
MT)=%;38/[.7&V +@*0<[@>H;/.[.<\YJ6TT6PL4G$$<@>=0LLSSN\K@< &1B
M6XR<<\9.*NNQ*/Y6QI #@$X&??TK \$^(+KQ)X9BU&^B@AN'GGB*0YV_NY60
M8SR>%H D_P"$,T#^PUT3^S_^)8K^8MMYTFP-G=TW>O/UYZTNM^#/#WB/[,=7
MTU+I[88BD=V$BCTW@AB/8FK[G4QK4006?]E^0V_<6\[S<C;C^';C.>^<5A>'
MM?UC7M.\1X@L8M0T_4+BQM@2_E,412I<]<$MS@#B@#1U3PCH&LZ5;Z9?Z7!+
M9VV/(C4%/*P,#85P5X]#3I/"NARZ"NAOIL/]FJ0RP#( 8'<&R#G=GG.<YJ7^
MUH[-M)L]2EA74;_]VL<))5I%C+N5SSM 4\^X]:FB.I_VS<"46G]F>4GD;"WG
M>9D[MW;;TQCGK0!7'AO25U&TU!;3;=6D?E6[K(P\M.Z@ XP>_'/>KDFGVDVH
M6]_);HUW;H\<4I'**^-P'UVC\JL;@6(R,CJ*-PSC(SZ4 8NO^$= \4&!M9TV
M*Z>W.8I"61T]0&4@X]LXJ2X\,:-=06$$EBHAT]E>TCC=HUA9> 5"D8(]?>M>
MD#!NA!QQQ0!S$D.K:[K\=OJ6BQVFE:;=BXAN'N%E:Z901&0H&4P3N.3GY0.<
MFNHKDI=?UO4[W5HO#T%C(=*NDMI8KO<#<$JK/M<'"8# #(;)!Z5UM !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
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
MC.#U[#Z8XJ5/"NAQV%Y8KI\8M;QS)<Q;FVS,>I89Y)[^O>@"QH/_ "+NF?\
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
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !112,RJ,L0!ZFDVHJ[V 6BH_/B_P">J?\ ?0H\^+_GJG_?
M0K'ZU0_G7WH?*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y
M\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1
M]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\
M/5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6
MJ'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[
MZ%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\
MZ^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A
M1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'
M*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>
M?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q
M)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/
M5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL24
M5'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^
M^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y
M\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1
M]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\
M/5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6
MJ'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[
MZ%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\
MZ^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A
M1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'
M*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>
M?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q
M)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/
M5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL24
M5'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^
M^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y
M\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1
M]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\
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
MTF]LK;4K*:RO(4FMIE*21N.&!JOI.AZ=H<,L>GVYC$K[Y&:1I'<XQEF8ECP
M.3Q0!Y_JNB:I%X@FU14U6"UBU>>0MIT:/-MDMH5$BJRMN7<CJ<#/S'WJI>^&
M=3O=%TFWM=(NBUC+/JL@U!U+SAI2WV8E J@R?>*XPN%!S7K=% '-^*;6[U+0
M[*^L+626ZLKJ"_2U?"/(%/S)SP&VE@,]\5CZU=ZWXOTK4[*PT6YM;'[$V1J$
M7DR7$VY2(T!/"[0P+'@EACH:[RB@#S75+.]\2ZO_ &E!HM[;VJOIT#QW4/EO
M+LNUD<[?[J+GGIR<9J+6?/O=5\::)::5<S7.HRVT4=U'&#'&?(CY=L_+L^\,
M]>V37I]5X;*VM[FYN8H@LUTRO,P)^<A0H/Y #\* .!CL-0_<Z =)NOM$?B Z
MBU^4'DF'[29]^_/WBA\O;U_#FHX[+5M+\*^%;>.TO+41"074UG9I-<V[$' 4
M,K;=Q)!;!_#.:]*HH \@BT?68/#\$,NDZ@TTVF:W:%64.Z22S"2/>5X^8*>1
MP21ZUI7FG:DEAKFA#2+N6YU>YAFM[M(P8D7RXE)=\_*8S&QP>3@8SFO3:* .
M"M]&O8[6Q_T*177Q1<7;_+R(VDFPY]BK+SZ$5WM%% !1110!'<0K<6TL#DA9
M$*''H1BO.R^M'P1_PA']AWO]H_9/[,^V>6/LGE[?+\_S,]-GS;<;L\8[UZ11
M0!Y_)H%W%INKPPV4A9_$5E<1';R\4;6N7^@"/S[&LW2-!U&#6K2PNTUZ1K;5
MYKPG]REFJEY'$HD\LLQ(< INSECG %>I44 <OXWM]22RM-7T:U:ZU/3IBT4*
M]9%D0QLOT!96_P" 5C:MX7EM;;2M/AT^;4;6UT&]M)5CD\LRNQM\#?V=MCD'
MU%>@T4 >86%AKEY<0;DU*>SCU.V>&ZU"U6&ZVB.4/OV@;E4E &(SR>O6JSZ7
MJEYX:TG14T2\M[K1=-N8;B5XP$E<VSPA8V_CWLP?CTYP:]8HH Y;3--N+;Q1
M93?9FCMX]$2W+;<!7#@[?J!FLR/4]2T'Q!XG2+PYJM])>7B36CP1*(7_ -&A
M3EV8!1N0@GM7>44 >:V'A._TK2-;LFMS-,?#,%FDJ+Q+,!<EU7\77\Q5O_A'
M]1/BW3$%LPTJ=+>]O&[+/;H553[DF _]L37?T4 >6^%=!U&TU31;*]37GETR
MXFDD:7R4LX\K(H=&$>Z3?O\ N[LC<2W3GU*BB@ HHHH S]>ADN/#VIP0H7ED
MM)411U8E" *X2[\,ZK::IX7O+"V9K>>2T_M2'O%)$F%E_P"^<HWT3TKTNB@#
MR;3=/UZ]U+1S=6>I(T,=W'/ UK%!:6CO$X5(MH!92?XR2.G()Q2VNE:K+9VE
MZ=(O0+.RTCS+:2/;)(;>:;S54$X)&0P'?Y?6O6** /+O$&A:AXQO;>XM-*ET
MN,/<RHTL87[2P2'9]H3&0K,A7:>2J#/I7=Z5K?\ :$L=M+875I<_8XKJ1)E
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
9HH **** "BBB@ HHHH **** "BBB@#__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>15
<FILENAME>exhibit101-ptagreement004.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement004.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !113))HH0IED1 S!%W,!ECP /<T /HHHH **** "BBB@
MHHHH **9)-%"%,LB1AF"@LP&6)P!]2:?0 4444 %%%% !1110 4444 %%%%
M!113)9HH(C)-(D<:]6=@ /Q- #Z*** "BBB@ HHHH ***1F5%+,P50,DDX %
M "T4@(/0CUHR,9R,>M "T4Q)HI5W1R(ZYQE6!&:$FBD=T21&>,X=58$J>N#Z
M4 /HHID4T5PF^&5)$R5W(P(R#@CCT/% #Z*** "BD9E099@HSC).*:TL:DAI
M%!&,@GU.!^9H ?1110 44R.:*4N(Y$<HVQ]K [6]#Z'D4^@ HHHH **** "B
MBB@ HHJ"WO+6[,@MKF&8QMM<1N&VGT..AH GHI&944LQ 4#))/ %)'(DL:R1
MNKQN RLIR&!Z$&@!U%%% !13))HH0IED2,,P4%F R2< ?4FGT %%%% !1110
M 44V21(8VDE=411EF8X 'J32JP90RD%2,@CO0 M%%% !1110 4444 %%%% !
M13)IHK>%I9Y4BC499W8*!]2:?0 4444 %%%,,T0G$)D3S2I<)N&XJ, G'IR/
MSH ?13)IHK>)I9Y4BC7J[L% _$T^@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M^KV7^F6TJG"BZ$AE&TGH-Q*Y/8TYO ]]'XHTG48YHS'/"4US''GNL@F0@?\
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
MKBY@M('GN9HX84&6DE<*JCW)X%9VK:V-/OK#3H(1<:A?E_(B9]BA4&7=FP<
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
M8ZO>-+>:O:%)+K;@[-@2(X//W K$'^)F]:ZC6_#&C>(VM#J]A'=_9',D(=F
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
M176\W*KP-L>W*DX&23ZX&<8?<^$[EOB&NL6\JKIEU C:A#WDGA;]RW_CV?\
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
MWD/YJ$CRHRIW 'C)/&,^^*ZVBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
MUIQ:#J^E>++?Q%9VR3K<Z<EE?V?G!75D.5D1CPW<$$CCGVH 9)\12FA27_\
M98%S::FNF7]H]Q@PR,ZIE6VG>OS @\9%;,OB*Z'C*;PY'8PF3^S3?PSM<$!O
MW@38PV?+R<Y!/TKF]2\"ZC/X8UHP&W_MC4-4CU3RBY\L%'0K%NQ_=3KCJ3VK
M1L=*\0S_ !$A\17ME96]JVDFS>%;DN\;&7?UVX;I[#GJ<4 3?#;6-5U[P;:Z
MEJJPF2X:5U>.0L3^]?@J5&T#  Y/ [55OXT7XTZ/(J*'?1KG<P'+8DCQFKOP
M^T;5?#OAB+1M3BM@+1I%BEAE+^:ID9MQ! V\,!CGO2WND:E+\2--UN.",V%O
M8RVKL9</N=E;(7'0;?7O0!F1>,?L7A[Q;J\'AZ"&72+Z5)X8Y@OV@HB$R%@O
M4@^A/ YJQ)XSU:#6-'LYM C\O68G-DR7@+B14WD2 KA5QDY!8\=,\5FOX5UV
M3PUXWT_[+ )M<NYIK4^>,*LB*@W\<$;<\9ZUI7>AZO/K/@R\6TB$>CB3[4#,
M,Y>$Q?)QS@\\XXH =!XNNKK2O$\6H:+!]NT4%;BT2XWQ3H8_,&'*#@J3P5K-
MO/$NJ?9O 1T>RL[6SU;RV:W\TH%'D%Q$"$("#CG'. , 5:7P]K(O?',WV6';
MK<:+:#SQD$0^5\_''//&>*AD\,:['H7@@06]K)?: \8GADN"J2 0F(E7"GUS
MTH N>(?'%YX?LM4U"?2%6RTV2.-C/.8WN=P4L8<KA@N[UY(/3%.GUK6C\5;;
M1X8[5M._LE[K:9F4MF6-2Y^4\CD!?<\\XK!U[PAXJU:R\664D.G7,FI<VE])
M<,&BBPO[A4V_* 5/.0#NR<FM]M&UY?'.EZ^MO9,ITMK"[C^T-^Y)D5]R_+\_
M3&/ER?2@"*S\8V%A9^+-1O-*CL%TJ\\NX\@AGNGV)M8D 98[E49]N:OS^*+S
M2M9TJRUK3H;>+56,,$\%P9 D^,B-\J.HS@C/(Z#K6!<>!=1UG2O&FG7OEVJZ
MU>"ZM)DDWE"H3;N';YHP3C/!K6GT?6/$D_A\ZU9PV@TJZ6]F,<P<3S(C*NS
MX7+%CNP> ,=P 9TWQ#U9-'UW5(O#D30:)>RV]V&OL%DC"[F3Y.3\Q.#@8QR3
MT[Z"9+BWBGCSLD0.N?0C(KSP^%==;PCXTTLVL N-;O;F>V/GC:JRJJC><<$;
M><9ZUO07^N:?K&@Z5)IUL;">U,<\HGS+%*B$Y"XP4^51GU<=.A -?6]2N=,L
MHI+33Y;Z>:>.!(X\@+O8#>Y .U%ZDX-<Z/$:^(+#Q=I%S;6_G:7"4D:&7S8I
M0\192,@8(P01V(ZU?\;:;J^J:1:Q:1Y4C17D4US:RRF-;J!2=T18 X!X]CC!
MZXK%L?#NOVVK>++EK'3T@U>TA2".&X/[MDB,>SE0,<YW<=.!Z &#-&C?#/X9
M2%%+KJ6E!6(Y&<9KTKQ%JC:)X9U3550.UG:2SJIZ,54D#]*XV7PMKA\$^#])
M6V@-UH]Y:3W&9\*RP==IQR3VR!7?7=I#J.GSV=U'N@N(FBE0]U88(_(T <G\
M-M.C;P58ZK=@7.I:K"+N\NI0&>5GY )_N@$ #H *Q_B)X>L-$^&'B!+.!$AF
MO(;I(PH B9I800OH,@G\<5J^&-/\2>$--30391:MI]L2MG=I<".01YR%D1AU
M'3*DY&.*F\::)K7B#P/?:7"+=[Z[DC94,FV*%5D1L;L9;A>N.2>@'  +NN>(
M;[3;NYAMM-1H;:R-W)=W4IAA8Y($2MM(W<$GTR.N:R[OQ?;7FE^#]3.BQW$&
MLWD"Q&=P6M)'5F# ;3D@!AD8_6C5-&\0WGBN6]6VL[FPGL!! MS.1]@E^;>P
M4*0Q8$<C!XQD"LN#PIXB3PEX+TV6TM//T2_@N)]EQD&.-67 )7ECNSCI[T ;
M;^*]8N/$&NZ+IVA02W&EQPR*\U[L242!B.B$@_+P,'ODCO0@^(MW/HVA:[_8
M:IH^I3Q6\CM=?OHGD;9D(%PR!N,[@3Z5I:?I.JV7C?Q)K#VD;6NH06\=N%F&
M[,2L#N'8'=QR>E<]%X.U^+X::#X>^S6YOM/O89Y3]H_=E8Y?,X.,Y(XZ4 =+
M+XMFEUG5=,TVUMKBYTUXUEMI+DI-(K*K%T7:<J WXD$<<9V4NM1.OR6K:<JZ
M8+<2)>^>"6EW8,?E]1@<YZ5QOBOPE?>)IKAFTR&WU*.9&TO6(9PDELN%)WXP
MQP=^ -P.1TZUV4<NJ_V])"]M;_V2+962X$A\UIMW*E<8VXYS_D &A1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4TQH9!(47> 5#8Y ],_A3J* "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "FB-!(9 B^80%+8Y('09_$TZB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHK-\0:W;^'-#N]6NH9Y8+5#)(L"AFVCJ<$@?K0
M!I45%:W"W=I#<H"%EC60 ]0",T^21(E#2.J*6"@L<<DX _$D#\: '452;4&7
M6H].^Q795X&F^UA!Y*X8#86S]XYSC'05=H **** "BF^8GF^5O7S-N[;GG'K
MBG4 %%%% !1110 4444 %%%% !1110 450UO5H="T6[U2YBFE@M8FED6%0S;
M5&20"1V'K4^GWD>HZ;:WT2LL=S"DRJW4!@",^_- %BBBB@ HHHH **** "BF
MO(D>W>ZKN;:N3C)]!5;4]0CTK2[F_ECEDBMXVE=8EW,0!DX'TH MT52T?4X=
M:T6QU2W1TAO($GC60 ,%90P!QD9YJ[0 4444 %%%% !16/IWB*UU+Q!JNC10
M7$=QI@B,S2J K"0,5V\Y/"^@ZUK/(D;(KNJEVVH"<;C@G ]> 3^% #J*** "
MBBB@ HJE'J#2:S/I_P!BNT6*%)1=,@$+[B1M5L\L,<C'<5=H ***:9$618RZ
MAV!*J3R0,9P/Q'YT .HJE9:@UY=WUN;*[MQ:RB,2S(%2?*@[HSGD<XSQR*NT
M %%%% !116?J>L0:9):P,DD]W>.T=M;Q;=\A52S8W$  *"221^9% &A16=HN
MKKK6G"[6SN[-M[1O!=Q;)$93@@C)!''4$@UHT %%%% !116.WB*U7Q;'X<,%
MP+N2U:[60J/+**RJ1G.<Y8=J -BBBB@ HHHH **** "BBFK(CLZHZLT;;7 .
M=IP#@^G!!_&@!U%%% !15)M09=:CT[[%=E7@:;[6$'DKA@-A;/WCG.,=!57Q
M#XCL_#FA7FKW"37$%G_K5M@&9?P) '4=3WH UZ*9%()84D4$!U##/O2R2)#$
M\LKJD: LS,<!0.I)H =16/<>([6V\467A]X+C[3>0R31R[1Y>$QN&<YSR.W>
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
M$^N:+JLFHSF;28Y(XE"(%D#J%;=QUPHZ8JYXET"W\3^'[K1[J66**X"_O(B
MR,K!E(R"."HH Y'Q!9W1^)7A*UBU*=)38WX-TR(TF/W?0;0N?0[2/8U4LO%N
MK6.@W]I/=O>7D/B3^Q8+IU02%&*D,> I<*Q )&,XR.U=6?"C/KVE:Q-J]W-=
M:=%)$N](\2"3&\MA1Z#&, 8JB_P[T^YTG6M.O+RZGAU6\-\[?*CPS';AHR!Q
MC:N,YZ>] %C0XO$EOXFNEO&DDT26W#1?:Y(VFCG#8(&P<H1SSR#[5A>+W>3X
MP>!+:Y_X\<7<J _=:=8_E_$<8^M=1X?\.3Z.3+?:W?:O<A/*CEN]H\M."0 H
M')P,DY)P*F\1>&K#Q-9107AEBEMY1/;7,#[)8)!T9&['ZY% &G<00W5O)!.B
MO$XPRMT(KD+'4+_Q7JWB2WMM3GTZ/3+D65OY"H3Y@0,9'W [AEL =,#U-;-M
MHM\46/4];GOX5QF/R(XA)C^_M'(]A@'N".*@?PH(->OM7TO49[";4$5;R-$5
MTD91A9 &'RN!QGD'N#0!QEIXOU_6M+\%7:7@L9M0OY;&^CCB5D=HQ("PR,CE
M,XSCZUH6"Z_>>(O%/AYO%%ZL&GK;SV]T(8?/S*C':3LV[05SPH//4=]R7P/9
M"+08;.YGM(-$E\ZWC0*V]R""7)!)SN;/3DDU9MO#'V77M8U>+49_/U6...5"
MB%8Q&"$*\9R QZYS0!Q5OXG\1:IH7@"ZAU06T^L2&"[(@1E<B-SOP1P<KG P
M,^W%6HM5\1Z)K7B7P]<Z[!<M#I@U&PU+445! "2A$I0 $!AD<=OPJGKFAP>&
M6\!Z%;:I*$LM09DGD";XT\M\%N,8W'&2!UQUYKKM0\#66L6.L1:G<S37.JQ)
M#-<( AC1#E%C'. &RW.<DG/L 9.CZOJ4GCP:*+^_>QN-%-VDMU$BOYJR*A=
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
MPBFO[6:.TFABBC:W90 8MZ@$.< %CG@YYZ=  ==I.K6.N:;%J.FW GM)L[)
MI&<$J>" >H-7:X#2?'EY>^#_  Y>26]LNK:Y=M:Q1J&\J/#OER,Y("ITR,DC
MIGB__P )+JMCXHN?#MZEG+<R6#7UA<QHT:.%.&1UW,00<'(/(]* .PHKS6P\
M<>(Y=$\*:[=6^F"QUB[AM)H(E?S%,I(#JQ;  ('RX/'?T[CQ!K5OX<\/W^L7
M09H;.%I65>K8Z*/<G _&@#2K,U;Q!I>AQL^H7)C"QF5]D3R%$!P78*"54?WC
MQ7/7_B;6- .A7FJI92V&IW$=K,MO&RO:R2#Y#N+$.N>#POK[52TR/4Y?B_X@
M26ZM'B73[4.AMF.8BTI"C]YP>3DX(.>@H [VWN(;NVBN+>5)894#QR(<JRD9
M!![@BI*Y?QGKM]X7TG3YM+M+6027L%H8Y25 5V"@+C@?R'H:SK?Q)XDL_&)\
M.ZU%I@:]M)+G3[JU20J"A^:-U9LD@'.01^O !W-4++6]-U+4+ZQL[M)KFQ*B
MY1,_NRV2H)Z=CTKC(?'6JS>!_"WB 06:R:K?6]M<1;&(59)-F4.[@C'?-58/
M^$@/Q&\<#P]_9RW&VP8M?!V4XA;"@+CKZYX]#G@ [W4=;TW29K.&^NTADO)E
MM[=#DF21C@  4Y=6L6UI]'%P#?I +EH=IR(RQ4-G&.HQUS7G&J>(F\5>%_!.
MJ2VWV:X;Q+;13P9SY<B/(C 'TR./8UU+^)[FU\=ZCI-Y';II]KI(U$2H&,F-
MY4@]NBDX []: .KHKDM/UCQ-J5IH>KVUG93:=J122:V&5EMH'7<K[RV'(&,J
M%[\=,U;\=:[>^&O!NHZS816\L]J@<+/G:1D#MR>OJ* .BHKAI/$_B+2/%NCV
M>M6NG'2M99HH'M2_F6\H7<%<DX8$#J /TYB?QGJ]SX*G\9:=#9R:9"9)5LW1
MO-EMXW*LWF;L*Q"E@-I';WH Z]];TU-;BT9KM/[1EC:5;<9+;!C)]!U'6G6.
MK6.I3WL-G<"62RF\BX4*1LDP#CD<\$=*X^>\AU'XH>$KZW),-SH]U-&2,$JW
ME$?H:6+QU=VFE^*;S4;6W+Z3J(LH(X"5$I81A-S'/5I!DXX':@#O**YT2>+8
M]5:V:/39K22T+I>+&R"&<'A&0R%G4CG(QC%9.D>+]4U3PE#<%+.+7VU#^SY;
M4Q,4BE#X=2-^3A 7SGH* .XHK/M_[8_MJY^T&R.E>2GD&/<)O,YW[L\;>F,<
MUH4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
M;7&M_P#";W=O)-:S:+]F#1K'&1)!*-G#MT.[+G'8*.F>=^BB@ HHHH ****
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBHYYXK6W
MDN)Y%BAB4N[N<!5 R23V&* )**Y/PW\2O"OBS5)=-TC4O-ND!8(\3)YBCJ5W
M 9_G764 %%%5[^_M=,L9KV]F6&WA7<\C= /ZGMCO0!8HK(M?$NGW6J?V8WGV
M]\8O/2"XA:-I(^[+GKCN.H[@5QUA=-XVUSQ!:37>M6#6=ZD5E+;"6'R%6-6.
M[(VY8ELAP<@@>E 'I%%4M1U6TTM(3<NWF3R>5#%&I9Y7P3A5'7@$GL "3@5Q
MGA76U;QEXYEN;R[2QL_LK;+UF MOW;E\!ONC.3QP>,<8H ] HK$@\5Z;-JAT
MUA=07A@-Q%#/;.C31CJ4!')']WK[5Q6GZS;Z\FN:OJVIZMIBZ3JTICN(_,BC
MC@A*KY;*1M);G*D%B6]A0!ZA16+:^*-.N;VXLB+J&[@MQ=-!+;N':(G =0 =
MPR,8'(/45FQ_$CPU+:V-XMU.+*]D\J.[:UD$*ON*@.Y&%)(Z'\<4 =916)IG
MBK2]5U6XTR!KB*[@B$YCN;9X2\1.-Z[P-RYXS45EXST:_NK"&&67;J!<64S0
ML([@IDMM;Z D9QD#C- '045R.D>-+?6)_$$4MK?6UOIL[0>9]FDW%512S< X
M.6.!UQ@XJUHNLZ-9>$-*N;>_N[JRG58K22XW23W!.<#&-S,<$]. ,\ 4 =)1
M6''XMTEX=2=Y)HI-,4->020/YL2D9#; "2I'.1D=?2JUEX\T'4+K3(()KC&I
MH&M)GMI%BD.W=L#D;=V.V>Q'7B@#I:*BNKF"RM9;JZE2&"%"\DCG"HH&22?2
MLJW\4Z9/J-M8,;BWN+N,R6JW$#1^>H&3LR.2!SM.#CG% &U17-6GCS0K[418
MVTMU)/\ ;&LFQ9R@1RJN2')7Y?0$XS@^AK:U'4[32K=)KN0J'D6*-54LTCMT
M55'))]O?TH MT5A+XMTUXM2VK<_:M.C\RXLS"1,%(R"%_B![$''O7%:WXJFU
MCP5X7U]);O3C-JMD9PK/$C1NX+*3P'7'?I0!ZE3$ABB9VCC1&D.YRJ@%CZGU
MK(TOQ5I>K7M[9PO/#<62J\T=U;O P1LX<!P,J<'GVJ./QAI$FH6EFSW$3WJ,
M]F\MNZI<A1D["1R<<XZD<C- &]17-:;X[T+5M0ALK&6ZEEEFE@#?9) JR1@E
ME8E<*>#P<'BE\4^*U\.76CVWV2XF?4;Q;??'$SJ@P2>G5B < ?7M0!TE%9%W
MXDL;25X=EU//'")Y8;>!G>)#G!8 <$X.!U.#@<56NO&WA^TTW3=1>_W6>I2+
M%:SQQ.Z.S'@$@87H>#@\'TH Z"BN*;XC6<NMZ/86ECJ+)?-<;WDLI59?*!!4
M*0"3N*YXX'6MV3Q+IZ7)B N'07*V9F2%FC$Q8+L+#IR0">@/&<\4 ;%%9]KK
M-I>:O?Z7"9?M-@(S/NB95^<97#$8;@=NE:% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !6?KVDQZ
M]H&H:3-(T<=Y;O SKU7<",CZ5H44 >*_#CX(ZAX1\91ZYJ6J6LR6H<6\=L&R
MY92N7R!CACP,\]Z]JHHH *Y#XDZ;J.H^$P=,A:XN+.[@O#;)UG6-PQ0>IXR!
MWQ77T4 <+>JOBGQIX4U/3H[@0:9]HGN9I('CV!XP@C^8#YB>H[!>>V7^!V<>
M(O%YDM[J);C4_.A::W>-9$\I%W*6 !&5-=O10!PGC-KO2_&GACQ"UK<7.E6@
MN(+K[/$TC0&55"R;5!)'&"0.!]:YO4;34-?O/B&NEV-X'OH;"2S::VDB6<Q+
MEE!8#!. ,''6O7Z* .#\-:AH^NZE9WT'AG4+6^M$<S37]O(AM,J0R*S?>8G
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
M*MBXO;P X7(Q"A4?]]9Q[UZEX=D\[PSI4F_?NLXCNSG/R"@!3K^C+8&_.KV
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
MW8!Q&5'KNH ]?MKZTO3*+6Z@G,+^7*(I VQO[K8Z'V-9D^L/<>)UT&R<+)#
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M?&FLZ?=>&?'%K;RPZ?-#J(\VQ7YI[EU:(&=]V2J$ 8V@#Y02><5V%SJ%C/\
M&+0I8KF!EET6XVL''S R(5QZ@@$CU'-=X8(F+DQ(2XPQ*CYAZ'UI3%&6W%%+
M>N.: /%)9=/;X0_$)EDMCOU6]P05Y_>Y3_$?I73ZE<6$?C_X=B":W53;WBKL
M90"IA7 &.Q(XKT/R(L8\I,>FT4ODQ9!\M,CI\HXH \MT2YN=(U;0TTW4+?6_
M#M]?2+;P2 ?:].D99"V"/O*N7!SR,XKH/BD+M?""3P1O+;VU];7%[&@R7MTD
M#.,=QP"?8&NP2V@CE:5(8UD88+J@!(],U+0!P6J/!K'Q(\(ZAHMS%.((+I[N
M:!PR_9V0! Q'8OC:#Z$CH:7X?WEM/KWC5(;B*1O[:9L*X)QY48S],@C\*[B&
MWAMU*PPQQJQR0B@ GUXI5BC0Y6-5/J!B@#A/&.HKI'Q!\)7VIR"+15%S&9WX
MCBN&4!"YZ#(W $^IK'M-3TN;Q!\3WAN[5XI;2!PRNNUP+8@D'H1GC/O7J<L4
M<T9CEC61&ZJXR#^% AB4,!$@#8R HYQP/Y"@#RJPC6]\'^ VTSQ!'I>MQ:83
M9R2!7AF CB$L3@GG^'IR,$]J@'B:6WG\&^(-;LH['3([F_M[N2#+6\=PQ*K,
M#_<8^9@]MYYQ7K4EK;RQ^7)!$Z?W60$?E3GBCDB,3QHT9&"A4$8],4 >5>/+
MGPW<?#W6;S2EMOLUYJ-K)+=*?DN9?.CWE2?O84<D<=?0UK_$,Z=:0^%'C^RP
MK)XCLI=R[5#8R"WOQCGTQ7?>3%L5/+38HPJ[1@?2@Q1L #&I Z CI0!P>ES6
M!^,7B=GDMMRZ;:@EF7(^_N_3&?PKB;::PA^ .CNDMLCKJD39#*"&%YU^H7]/
M:O<O)BR3Y:9/4[12>1%C'E)CTVB@#AOM=I_PO%O](AR?#?/SC_GXS_+GZ5PZ
MS:?'\!99$DMED_MC?N5E!W"^R#]=GZ>U>Y>3%G/EIGI]T4GD18QY28_W10!Y
M1XMUG3IKCQY812P6%S_9:[\?/-J/[ABI0'(\M0<$J">IRN*EAU:PBUWX;7\M
MW&MJVE7$(F+?*TGEPC:#W8D$8')(QUKU/R8MV[RTW;=N=HSCT^E+Y<>$&Q<)
M]T8^[]/2@#RB]^T7FM_%6TT:56U&2RM1$D3#>Q$# @8[]OJ14VJ7-GXB\(>"
MTT.2,ZA'?6;01QD;[<(,2[@.5"J&#9XZ#N*]1$:*Q944,>X'--2WACE>6.&-
M9'^^RJ 6^I[T >60R:<UY\569[4DKM))7[OV4 CZ;LCZUVW@.99_A]X==)!)
M_P 2VW!(.>1&H(^N:WO)BY_=)SU^4<TY55!A5"CT Q0!Y%IES;M\)O$^A:TR
M?VU$]ZES;R?ZV:>1V>)E7JVXLFTCK@8JWI\"1_$7PK8ZT]O-J$?AAHIUE*L6
MES&"#GJ2-_U&:]/:WA:=9VAC,JC"R%1N ]C3C'&7WE%+>N.: ,SQ#Y%OX5U,
M/Y<<*6<HYP%4;" /2O-2L4'P0\-ZG80"5+1+&6^-HH,AA1U>0<=2&^8@^AS7
MKS*K## $>A%"HJ#"J%'H!B@#SB.3PSKS:KK&A7]QJNH-HTUO)<*Y94C(W+&P
MP!N))(!&>#658>)-'B\'?#U&EL]ZK'"-1G<F&PE6WPP;! WD$J%)X)R>G/K,
M,$5NFR&)(USG:B@#/X4&"(H$,2% <A=HQGKF@#QB._M!X#^*-O\ ;A+(;NZD
M#285G5X8PK$  ?,<XX&<'%;^LWEF=3^&;_:(.9B5;>.0;=A^6<#ZUZ28HSNS
M&OS'+<=3[T>3%Q^[3CI\HXH \2\8:UIUUX7\9V]O+#I\D&K+YMBOS33NLL0:
M>3=DJA !&T <#DYQ78+J=C'\9UF>ZC6.]\/Q):L3Q.?M#G"?WN"#QVYZ5WA@
MB8N3$A+C#DJ/F'OZTXHI8,5!8< XY% 'BEP\MSX&\?#3,7/E^)I)YX8"&:2
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
MAIV],@;ER>@SUH 555<[5 R<G ZFEZT$@ DG '4FHA=6YMVN!/$8%!+2!QM
M'4D]* ),#CCITI:XS7O&<L7AS2M:T-K::VO+^"W8S*23')($W+@C!QR,_E78
M)+'(7"2*Q0[6"G.T^AH ?14:SPO,T2RHTJ<L@8$CZBE\Z+>$\U-Y.T+N&<XS
MCZXYH ?16-XKU^/PQX9O=7>,2FW0;(RV-[$A5&?3)&:2PEUFWOKMM6N=,ETS
M8C07$*M$P;D,K LPQTP<]^E &U2,BMC<H.#D9'0TF]/+\S<NS&=V>,>N:YG2
MO$5Y?>.]6T9S:/8VUI#<6\D()9M[,#N.2#]WL* .HP,YQS2%05*D @]1BF+/
M"\KQ)*C2)]Y P)7ZCM2B:(N$$J;R2 NX9..M #@ H    Z 4M1)<0S%UAFC=
MT.&"L#M/OCI7/^#M=O\ 7(];&H+;K)8:M/8IY"E040+@G)/)R: .EHIDLL<$
M9DED2-!U9V  _&E,B+'YA=0@&=Q/&/7- "LJNI5E# ]01FAE5E*LH(/!!%(L
MB.6".K%3M;!S@^AIK3PI*(GEC60C(0L 2/7% $@  P.!16?;ZU87>M7NDP3J
M]W9)$\Z@@[?,W;1]<(3CT(]:N)<0R2O$DT;2)]Y58$K]1VH DI-J[MVT;L8S
MCG%4-,UJPUB2]2QG67['<&VE92"-X52<?3=CZ@U<CGAF9UBE1RAPP5@=I]#Z
M4 /()!P<''!]*K6%A%IT#1Q%F+N9)';&78]2<<>@XZ  58DECAC,DKJB+U9C
M@#\:H:GKFGZ1!;S75PBK<W$=M" PR\CL% 'KUR?8$T :&!GH/2EJ*2Y@A"&2
M:- YPNY@-Q]O6JE[K5AI^I:?I]Q.JW5^[K#'D9(5"[,?8!<9]2* -"FJBH,*
MH7 QP,4GFQ[2?,7 ZG/2J-[K=AI]_IUC/.@N-0D9+=,C+;49R?H O7U(]: -
M&BHWGAB9%DE1&<X0,P!8^WK4E !16/IFKR:VU[-8^6+*"1[>*5P3YTJG#,,'
M[@8%?4D'H ,VM+DO!I-J=4FM'O2H$KVV1$S_ .SGG% %UE5QAE##K@C-+3(Y
M8Y0QCD5PI*G:<X([4@GCD:2.*6-I4^\H;)4^X[4 2$ C!&0:*YGP;X@O-;L=
M3DU+[,DMIJ=Q9+Y(*J5C;:#R2<FNDWKOV[AN],\T .HKEO'OB.Z\->%[K4-.
M:T:[@,9,4^3E6D5,@ @_Q9_"MISJ(UV$++9C33;MOC8-YYEW#!!SC;C.>,YQ
M0!>95=2K*&![$9I:C-Q"&53+&"S;0"PY;T^M$L\4"AII4C4G +L ,^G- $E%
M%(2%!)( '<T +2%58@E02.02.E-\Z( 'S$P>GS"F7+2FWF2U>(77EMY?F<J&
MQP6 YQG% $U->-)  Z*P!R PS61_;<>F6FCPZQ=6QU&_*0J+<X223;EB@)SM
M&"<_3UJAIOB*\F\;:_I%Z;1++3X+>:&105)$F_.XDX_A'3% '44$9&#TIK.J
MH79@$ R6)X IJSQ/$)5E1HST<,"#^- $E%-\Q-P&]<GD#/6J.GZU8:I=W]M9
MSK*]C-Y$Q4@@/M#$#Z;@#[Y% &A17,^*M=U#1-0\/1VJV[6^HZE'93^8I+@,
MK-E<$ ?=[YZUKQG4?[<G$DMF=.\A3%&H;SA)D[BQSC;C&* +]<O>:'X@C\0W
MFI:5JUB8+Q8UDM=0M&E$6P8'ELKJ<').#GDGUKI/M$)9%\Z/<^0HW#+8ZX]<
M4J2QR,ZI(C,APP4Y*GT/I0!1TC2AID4[.\<ES<R>=/)'$(U9MH7Y5R<#"CJ2
M?<UHU@OK4F@Z#<ZAXCN[+,4SJIM00""V(TPQY?H#[ULR7,$,8DEFC1"<!F<
M$_6@"0J&!! (/4$4 !0   !T JAJ>M6.DO9I=SJDEY.MO F1EV/I[ 9)I5;4
M/[<?=-9G3#; I& WG^;NY).<;,8[9S0!?HJ,3Q&8PB5/- R4W#=CUQ1)/%$&
M,DJ(%&YMS 8'J: '[5+!BHW#@''(I: 00"#D'H:@O+RWT^QGO;J58K>WC:66
M1NBJHR3^0H GI%547:JA1Z 8KF-$U;7O$FF1:Q:1V6GV-P/,M8;J)Y99(S]U
MF*NH3<.< -@$<]JSM8\5Z]IWAVVOI+&TMKLZLEC<0N6D4(TP0,C?+G*D-DCO
MTH [FBHY;B&$H)9HXRYPH=@-Q]O6JE\=1%]I_P!DEM$M3*PNEG#%W7:<"/!Q
MG/7/:@"\RJXPRAAZ$9I:C>XAB#&2:- N,[F QGI2F6,2B(R)YA&X)GDCUQ0
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
MG6[C[07 $*2>7NB@&.-@D/W>>1CM4]^K:1XQ\?RZ)$D5Z- BG185 /F@2?,
M._ /_P"NO1)_#^CW.C+H\VEVCZ:JA5M3"OEJ!TPO04W3_#6AZ5<BYL-)L[>X
M""/S8X5#[?3/7N?K0!Q&BZ9H.K#PQKEIK-N'C79#':PHKW =?GBEY);&"6ST
M()-9GAC1_#MIX.\0ZW?VK(VGWVIJES;\36\>74B(]CM)P.F3FO1K#PIX?TJ^
MGO=/T:RM;JX!$DL,*JS ]1D=,^U3VF@Z186UQ;6FF6D%O<Y,\4<0"RYX.X=#
MGOGK0!YUI2QV7Q \'>4MG:0S:-.BPPL"_E 1F/S'& Y/7@ 9S@GK70?#G[WB
M[_L9+O\ DE;MKX2\.V)M6M=$L(6M&9[<I;J#$S8!*G'!.!S["KFGZ/INE-.V
MGV-O:F=S)*84"^8QZLV.I]Z .3N9Q=?&*+3=2C5[1=&,UC'*,HTIDQ(0#P6"
MX'J!GU-</X@LO)^'_P 0[ 1AM*L=23^S@1D0DM&TBIZ!68C Z9(KV34=(T[5
MA#]OLXIS"V^)G7YHV]5/4'Z5'/H&D7.EC3)],M)+ '/V9X@8\YSG;TZ\_6@
MTK0M+T4W#:;9QV[7+B2=DZR-C&X^I]3W.3U->>>(C<Z)J>IZO<V=IK?AR;4(
MI;AT^6[T^5"BC&?OJ"JD 8//IR?4888[>%(845(T&U548 'I6>WA[1VO'NSI
MUOY\D@ED;9]]QT9AT9A@8)Y&!B@#B+"/2K#XB>/KVZBBA6WM;.82H@$B9BE+
MLAZAC[=:R=-%M;^(OAQ-;+;VUG/;7(B4N&G>$V^X-,XP&)(!(Q@-GDUZC)HF
MERZI_:<FG6KW_EF+[2T2F39_=W8SCD_G5.V\'^&K,0"WT'3HA!+Y\6VV4;)/
M[PXZT >9QF/1O!/Q!O-.@BANX=:N8P\" 2)!NBWA<8( 0L>.G6NMTC2M&D\3
M:1KNG:S;,\EJ\,<%A$B)<1%<_.%).%.,'C!('>NKAT32[>^N[V'3K6.ZNQBX
MF6)0TH]&..:ATCPQH6@2S2:1I-G9//\ ZQH(0A;VX[>W2@#*\:V.H7O]E'2+
MFS74;:X:XAM+Y28;K",K(<=" V0>V/Q'"ZC+I^J^&-$,FA1Z=/;>+(;>[M)
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
M %R%<^;QCYL_>X '/:@#R.[T+2[7]GQ]7ALXUU"?0X(Y;G^-URAP3WP<8]
M.@KKO"EW'>>(=5BUJSA7Q7:CY-P!5K7),30DC.SGYN^[.>P'4MX;T1M)&DMI
M5F=.!R+4PCRO^^>E./A_1S>V]Z=,M3=VR".&<QC?&OHK=0.3Q0!YAX=MM.\3
M^#](U&]UR*VU2TNUFG>*%5NUNPQ#(23N)8G&W'(('I6OX9\-Z-?>._%[W.GP
M2M9ZI;S6X(XA?R4;<H[$GD^M=FGA;0(];;6DT>R74V))NA"N_)ZG/K[]:LV>
MBZ9I]Y<7=G86\%S<',TL<85I#_M'O^- %ZBBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHJGJNI0:1I5UJ%P3Y5O&9"!U;'0#W)P![F@#GY/&L<7Q'@\+M!B":W?9<GH;
ME0KF(?2-@WXBNJ=TBC:21E1%&69C@ >I->5>*?#?B2'P4FH_Z =3TJX.LAX]
M^]I02\BYZ$8)7'H *O\ B7Q):ZI_P@E\9%'A[4[P27#.?DW^63$C]O\ 6=0>
MZ^U &YI/B.ZU#Q[JFDK<6<^G0V,5S;R0+DY=V4AFW$'&WMBMC2+F=-+M4U;4
M+&XOGW!I+;Y(Y#N(^4$D\<#ZUR6G6VG-\8_$5N(K=EN-)MC-%@$2-N<'<._&
MW]*Y+3ECC^$7P^E<*J0Z];,7;H@^T2#.>U 'M27$,DCQI+&SI]Y58$K]1VJ
M:KIS1S2"_M2D(+2L)E(0#J3SQBO/KR2PG^(_BV)KY+:-_#B)-/$PW1?-+N;C
MNHP?P%+HS:A::W_8/B/3+&>Z_LF46>IV2_N[F!"F5=#]U@=A].3B@#M](\0:
M=K6D0ZG:W,?V67[C,P'!.%SZ9[#WJX+^S(G(NX,6YQ,?,'[O_>YX_&O&!;:=
M-\$_"3+';FX2\L"S( '4F8*3D<@G!&?:NH.@:.OQE%HNFVBVTF@>;);B("-W
M6<!69.A(!."10!Z&D\,EN+A)8VA*[A(&!4CUSTQ4<-]:7%LUS!=02P+G,J2!
ME&.O(XKQFWO5TGP=:QO*;;18/%MQ;W#*H9((0\FP$$$! ^P\\=*UO$VBZ&OA
M[QK?VFJ#49[O2C+/$@B,*.BGRY,(,!SS@]3@T >I1WEK+.8([F%Y0H<QJX+!
M3T./3WJCI'B'3=<EO4T^YCF^R7#6[E6!RRA22/4 MC/J#7"'3;'3_%OPYFL[
M6&&6Y@N4GD10&F'V8-\YZMR,\YK2^&T=G#<>*D1($N!K]XJJH 8("G [XZ>U
M ';W-Y;647FW5Q#!'G&^5PHS]33C<0K&DAFC"2$!&+##$] #WS7(:]=63>/]
M.M!Y2ZE'IL\PENW_ '$4)90Q"9&]R1CJ,+DD]J\\T^*RO?AKX$23R9I(O$L<
M(92-RH;B8;01R 0!Q[#TH ]Q@NK>YW^1/%+Y;%'\MPVUO0XZ&N7\5>)Y]+U+
M0K?3KJQD%UJL-E=PD;Y$5PQR,-\OW<<@]:Y+55D\/>(_'0\.VR6LJ^'X9XXK
M9 H$@\T;PHXW ?RHU8Z))X=^&MY8&V*_VM:".4$;L%&WY/7.X#=GOUYH ]0U
M&2XBTZXEM6B69(V9#*A9<@9Y (/ZUYTGQ \06WPXM/'%U;:;/9/M>XM(4>.1
M$,FS*N68,<X."!]:]&U C^S+HYX\E^?^ FO#-*L);;X9>$-<OVGU3PU; G4M
M,8_)&OF-MF 4 N$/)5MPQ]* /=5NX#9+>-(L<#()-\AV@*1GG/2J&K>)-*T;
M0Y-8N;R$VBC".C@B1CP%4]R3Q7*^,]9MH]:\'SR:@D&AW4LQ-V K1"4Q@PDE
M@5P<O@GOSVKG?%VC:/IW@7Q5+8:@;Y9KVTN)N(S#!(9D#;-H 4D8+#W'K0!Z
MVU]:+&LC74 1E+!C(,$#J<^@[TV34;&$PB6]MT,P!B#2J/,STV\\_A7 :_I&
MBW_Q1\+PM96<UM-8WR2($4I)MV85@.&P2W!Z&L?Q2ND1:7X]LM+BMK5;+3XK
M>X^TMNY6$F*.%,C8 "/FR<MG /6@#U"\-\-5TT07=I%:%I!<0RJ3)-\ORB,Y
MXP02>#Q5B6_LX<^;=P1X<1G?(!ACT7Z^U>=S&WN/&/PRO5,<D\EO=*\PP6;%
MKT)[X.?UK'.A:3-H/Q2:33[5S;W%R8<Q@^41;JV4_NG=SD8Z#TH ]4OC?#4]
M-%O=VD-L7<7$4RDR3#:=HC.1@@\GKQ5B6_LX-WG7<$>U@C;Y ,,>@.>Y]*\Y
MF5)?$'PKO9%5KJ2"4-,1\[ VA/)ZGDY_&LW^PM)GM/BB9=/M7\F24Q!HP1$?
MLRME1_"<\Y'/ ]* /7)[B"UB,MQ-'#&.KR,% _$TZ.2.:-9(G5T895E.01[&
MO,?MCP2_#C4KBYCG7^S6+VLDR([,T"?OE+D*2N<')S\_&>:W_A_X>BT>WU>]
M$-HDFHZC-<H(-C-%$Q&R-F7@XY. 2!NP* (?&/C._P#!NLZ;)=6\-SH=SO\
MM,D43>=:JI4>8>2&7+KG@&MO6M4NX;33;G2I[-X;NYAB+R1F0,DA W*58=CG
MWJ+5H8;GQ;I-M<1I)%+97B/&XR'4F$$$=QBN#^R:CX(\0:7X69);GP[>ZE#+
MI5P3N-JP?<T#'TQDJ?Y\X /59[VVLQ&+NZ@A+G:OF.$W'VR:IZMX@T[19K&&
M]N4CFO9Q# A8 L>I/T ZGZ>M<KH'DZIXW\;6&M0QRS*\,<<4R@@V9C^4+G^$
MMN)QW/-<AIL3OX;^'K:GMFC76Y(8);@ E[<"819)Z@@#'MB@#UP27?\ ;Q)O
M;/\ LTVFY8-O[[S-W+[LXV;<#IU[US">(=9\13ZJ/#=[I<+Z=?\ V18;M2ZS
MJJH7<LIR.7.,#^'GKQ%:P6B_&NX:WCA"3^'$=C&HQ)^_(!XZ\ #Z8JEX2T[3
MY=.\>H]G;,HUF\CP8U.%\M/EZ=/:@#NM,FGCT2WFU.\M)IEB!GN8/EB8]R,G
M@?C5J.\MIK7[5%<PO;X)\U7!3 ZG/2O(=)U.+3_#WPM&I.L>C2QN)WD.(Q/Y
M7[G?VZEL9[@'M6YKZ^%--L;L6RM<#4-9M3(D5SM@-VS J';D*ORAG&#P1ZB@
M#NY-8TV+3)M2>_MOL4*EI)Q("B@=<D5GG59=8T+3M2T:^M+=+AX)'-R-W[ML
M$IP1AR" />O/BT;ZG\4K:>>SGD;3H7V0* AD%O+G"DGYAM&3UX[4[58-/;X;
M>!988[8RQWVE$NBKE6;9NY'0D8S0!ZK<WMK9*K75S# K':IED"@GT&:D>:*,
M*9)$0.P52S 9)Z >]</H[I??$_Q=8ZM$DCK;VHLXYE#!K4H=^T'L7)W>^ >@
MKB8K 2^%?"L5VGG6T7B_[-82N<L;3?(% ;KM./R ]J /;(+JWN@YMYXI0C%&
M,;AMK#J#CH:EK@_#EG:Z9\5?$UI86\5M;M86<IAA0(F[,@SM'&<8K?\ %=U.
MNDC3K&41ZAJ;_9+=B<;<@EW_ . H';Z@>M %#PGXUC\2ZSKFGF#R6L9E:V)_
MY;V[+\LH]02&/'8K737-W;6<7FW5Q%!'G&^5PHS]37F/B&&]\&^*?#OBF=;&
M'3XPNCW@M@P"V[_ZMFW=D8#\ZUY]4M(OBY<66M20I"^DH=.^T$"-LNWG;<\;
MC\N>^%H ZC4_$6F:3<:?!=742RZA+Y=NN\?-\I8M_N@#K[CUK4!! (((/0BO
M*]2TW0;&Y\ VVF*DFEQ:G-%%),WF!E\N4X#-U7<3CMP,<8KN/%MQ>0^!]8N-
M&R;M;&1K8Q<G.PX*X[]Q^% &M'>VDUS);174+SQ_?B60%E^HZBA[RUCD\M[F
M%7W!-K2 '<>@QZGL*\QU:*VF\!>"=2T (M^EU9"SDB^\V_ E4GJ01O+ _P!T
MD]*N>'/#VC7OQ$\:&YTVUE-M>V<T(:,$1/Y*MN4=B6Y)'6@#M]=UVP\.Z7)J
M&HS+'$I"J"0"[DX"CU)-8UYXBNX/'VEZ6L]HVE7=E<7#.%^8-&5'W]V,?-Z"
MJ/Q;CB;X?7+RHA\NYM2&8#Y1]HCS].*K:S9:=??%+PS;-!;S6@T^]_=  QDA
MH^"O0X.>#W'J* .^AN(;B!9X98Y(F&5D1@5(]B*9;7EK>HSVMS#.JG:QBD#
M'T.*\<-S_8_@OQ&D68-*M?%[17*Q("L-KYD9<!<8VY/*XQ@D=#7;Z%IVC?\
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
M[9I.KW?V%_MTG[H1NNWO\W''S9XZ8YKT/1/ 'A_P]>FZTZWGCVEFBA>YD>*
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
M"^%=$U>\E:*YOK^UFN@Q1KL6_$8+#'WB><?>*8[D'T&X\*Z9-J2ZC$+BTO!
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
M\,CJ1"V6.\*""-V>"*TH;272O&_B?1],U":TAGT-+I'N+AY5AG+2)YN7)(Z
MGUQ0!Z117EVCZLFG75Y8Z]9W'AS5K?29F>XBD\ZVGC7;NN$/=U(R01NYY)IN
ME>=9^,?!L<"3P6FHZ;<K,\LY,MX$2-EDE4<!\DG.XGYCG'2@#T1M1%U97[Z7
MY=U<VQ>)8R^U6F5<["W;D@$]N?2K%F]Q)8V[W<20W+1J9HT?<J/CY@#W .>:
M\K\/Z;;6OPW\;36OG6\L-WJ:QO#.Z% C,5P0>V!]>]7K+49;N^\ :%=N_P!A
MO-'-S*"QQ<RI$F%8]P 68COQGI0!Z;17D6MO>:=!\1-&M[J[73K+3DOK,I.Z
MM;2.C$HK YVDKG;T'IBM&&U_LKQCX#GMKF[,FIV\\=Z9+AW$P6W#KE2<###C
M % 'IE%<C\2-7N=&\+)+;2O +B]M[::X0X:&)Y '8'L<<9[9JAJMLV@_$'PU
M#I1EBM-66XM[VV21MK!(]ZR#GY6!ZL.3F@#O:Y_6O$-QI7B70-+6SCD@U662
M)IS*0T92-G^[CG..N?PKF/AMHT5W:?VQ=7>H3W=IJ-]#"9;R1E">8RX92<-Z
MY.3G'/ Q;\>6JWOBWP3;/)+&DE[<*S0N4;'V=\@,.1GID8/H10!WE%>.ZI=7
MO@6Y\8V.D7=TVFPV%M=QB65IC9/+*8WVEB3]T%\$]JZNS\-2P^(+'4H=8AAL
M;JW>"6UM6E O,J65PY<X<8)WCDC/- ';T5XAIL4L/PR\)>(OMU^^J+J<,?G/
M=.<HURR,I7.""#SD9/K74SQ7'B[Q-XKT>2ZABDL3%#;H^_? C1*PE3:PPQ8M
M\W7@#- '7Z[KBZ.VGP)&)+O4;H6MNC-A=Q4L68X/ 52?R'?-5]$U#Q+=:E<0
M:QHEK96L2LJ7,5WYGG,&X*KC(4J<\\@C&*XW7M)5[OX?QZA>_P!IW(OC;S7B
MED\\+%)S@'@Y'7O6M% $^+]S8>;<-9R>'58P-.[*"9BI*@GY> !QB@#L[*^M
MM1MS/:2K+$)'BW+TW(Q1A^#*1^%6*\B\):5='X1VW]A"%;^2^E/D33,B721W
M4A,.<_+N52..O?C-=;X$U2TOO[7A33[O2[Z"X3[9IUR<BW8H /+(X*,%R,8'
M4XYH ["BHYW:*WDD1"[*A8*.Y Z5Y?H5E?>)?"^A>*(M=M[2\61+FYNU5V>0
MYQ) XWX*Y.T+CC P* /1K>?4#J5^EU:PQ6$00VLZS9:7*Y?<N/EP>!R<UBZW
MXN^P66@7UA;Q7EGJU];VHF,I78LIX<#:=W&>X[5S@@%QKOQ-L9Y9YK9;6V*Q
MRS.X3,#L0,G@9YP.*QY+&&/X7?#Q82\37&I:6SNKDD,1U&<XH ]CHKRN\NKC
MPCKOC:/2))S'#H::A%%-,\P2?]X"XWDG^$$^N*U--T*::YT'7K37(8;9X]LW
ME&0G4$D7@,2_+ \ANHYH ] HKSCX;Z-%=V[ZO=7>H3W=GJ=]#"9;R1E">8RX
M92<-QSDY.<<\#&GXP=X/%_@MXI)(S+J$D4FQR Z^2YVL!P1D9YH [2BO+-0:
M47/Q4ACNKF-+6SAF@$5PZ>4_V9G)7!XRW) X/>BUMCIFJ_#J_@NKPW&HQ^3=
MF2X=UF0VQ8 J3M&" 1@"@#O?$^KS:!X9U'5X+5+EK*!YS$\OEAE4$GG![#TJ
MYIMV;_2K.\90C3P)*5!R!N4''ZUY7<-%XJ^%WC'6M0+O?H;Y%'F$&V6(,$C7
M!X&T#</XMQSG-:5K<2ZKK^E^'99+?[.OAZWN8H+@-MF9B5=L*PR5"KCKC)-
M'IE%>3ZGI%]I=OX1TNY\0W=ZZZ[]EDFAFDC/E&-W$;?,<D<#<>1V(->DZ5H]
MKHVDIIMJ9S;INV^=,TCX8DD;B<]^.: ,OQ'XJ72?"VKZSIT,5^VFEUEC,I0;
MEQN&0#R,]/J,UNVLQN+."<C:9(U<@=LC->-V^GVMI\'O'3P1;&%UJ$0PQP%$
MAP,9Q71):#1O'W@UK2XNLZI9W*7@DG=Q-LB1E.TG P<XP!C..E 'I%17#3);
MNUO&DDP&51WV GW.#C\J\MT^UU#QCX5DUM-:M].U*"]ED>\PYDM#'*<QD;P-
MFP ;<8(.3DG->K?P\^E ',>!?&MMXXT62^BM7LYX93%-;2-N9. RG.!D%2"#
MCUJ/4O&R6GCW3O"=M8_:+J[B>1YFEV)%M4M@_*<M@9Q[KZUPUA=1^ [KPOXF
MD#+I&M:/;V>H;%SMG2$&%\=R0"E:+6,]G\3O TMXH%_>1ZC=77.<2-&GRY[A
M5"H/9!0!ZI17D'BZY9=#\1ZOIES<7,]GJT0&HR2F,VS"2)#!"!G<HR0V=H)8
M_>K3\;RWFGZGJE]?Z?+J7A][=8GN+&;%SI3!26<)D9!#!B0<XZ\ 4 >F45Y?
MXPN[B*YO]6GLI=6\-7%FBFYL9<7.F?*6,BIQP0ZL2,''7@"IO$D]KK-QK\MC
M/+J#PZ.DH5I#%%8!D=UD0CDR,,$8' 4989% 'I5<_P"+/$5QX;M;">&SCN4N
M;Z&T<M*4,?F.%W 8.[KTR*Y/1M7EUG5?!VDZO.TEO=^'%OF5V(%W<XC!#?WL
M*7;'3)SV%1^+M)32?"-GIL.J75TJ>(K7:TKAGMPTJL(P3V4,,9SUH ]0HKSJ
M"RCTWXBZWH]O)<FQN="2\DBEN'D_?>:Z[P6)() '0]JQH+NY?X;_  YO&NIS
M<RZK8QR2^:VZ16<[E8Y^8''(/I0!Z]17E^OWEQHNO7=YKEE+=:)/?1/!K%E*
M2]CM*+Y4B=0FY3G'!W'()-2_9KOQK?\ BRQ:^AM[JSO#;6Y/F>;:*(U,<B;6
M&,L6;/?H3@   ]#>^MDU&*P:51=2Q/,D?<HI4,?S=?SHM;ZVO9+E+>59&M9O
M(EV_POM5B/R85YS9:7#-\5M(>[N!?7!\-^9)=H603NLL8#@ \ ]<=.:K>&]&
M?_A'?&\>C2QV=^VMW=M;RR2LJC+1X0D'C<?ER.>: /5ZYGQ/XJG\-ZCHT!TY
M)[;4[M;,7!N-@BD;[H8;3P<''/:LSP1J<,^MZG8W.D7.B:O'!"9[!GWPE07
MEA8<$$M@X Z#OFM+X@Z%)XB\$:E96^1>(GVBU9>HFC.Y,>Y(Q^- !+XJN+?Q
M[;>&)M-1%NK9KF"[-SPZJ<,H7;]X=<9QCO6E'JEU+XFGTI;./[/!;I,]R)SD
M%RP5=FWK\A/7ICUKR?5=8GU_1-+^)MN)!_8DMM^Z7.&C(Q=X'UD"Y_Z9&O0+
M2YB'A#6/$%Q>M91Z@DMV+M5RT,.S;$X'KY:HV/4F@#K:*\PT<SV'CKPK'!'-
M;6M]I4_F>;,6DNM@C*R2J,@/R3G+'DY/:J,MIK.J^';RW1;\^*%UIE6]@:14
M\H38.)EP!&(LJ5!R",8W4 >NT5YW+$^N^,=;\.23Q^3I]G;K;17+R,^UE):4
M$,"6S@;CDC Y&3GK/"UK=6/ANSL[W5/[4N;<-#)>;=ID*L1SR>1C!.>2#0!'
MXM\36OA#PY<ZQ=1O*D. L2?><D]!]!DGV!K8M[B*[MHKF!Q)#,@DC=>C*1D$
M?A7)ZP)]:\226R:8-0T_3X'AF1I@BF>5,$<]2L38_P"VIK)^&^I7FG>&M6\-
MWL;-J?AQFB6)FR9(2I>$Y'7(^7CT% 'HU5[>^MKJYNK>&57EM7$<RC^!BH8
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M7ENERUS(3&#,X! SC((!SUSFNVT7P+X;\.RS2Z3IBVLDRE&999"54\D(2QV
M_P"SCH*TM&T/3O#]B++2X#!;!BPB\QG"DG)QN)QDDGCN: /(O[:<Z9X9UQ[9
M1-X:D%MKR]E&_P @Y7HQ!!D']W@]ZW_&5LDGPK\3:W&9(I;\&ZC:*1D/E@A8
M^A'!4!B#QES7>/H&E26>I6C647V?4F=[Q.0)F90K$^Y '2GZGHNGZSI3Z7?V
MXEL7 5H0[(I Z [2./:@#C/%D>IPZC;ZC#I4.O:;#IZI=:;OVSP9)/G1 \$D
M CL?DX-4;34;7Q#K^BZ-!<P2:5)H$=S9Q:C 9!<-N*L2NY07557UQEB/6NYF
M\,Z7-.D[1W*S+;BV\R.\F1C$"2%8JPW#)/7/6H-7\%>'-<L;.RU#2H9(+( 6
MHC+1&$  85D((' X!["@#,T7PI;1:%;:3J>L2ZF-.U$3V\@=XC&RG<D1.XE@
MN[&"3V':NEU:XAM-&OKBXN6M88K>1Y)T&3$H4DL/<=:Q-:\$Z5J>B6&D0V44
M-O9SK+;LLC(;=AGYUQ]YN3]XXR<G/?H[BWANK:6WN(UEAE0I)&XR&4C!!'H1
M0!Y9I49L_%O@4VL36UM?V-RLDC2_O[U!"C+)/MXWD_-U8@D\CI6+=Z;%_P *
MZ\:ZF9[MKW3-9O#93-<R%H"DB[2O/7MDY.*]-MO /A>T-BT.E(&L6)MF:5V:
M/(Q@$L3MQT4\#L*F_P"$,T'^S+W339.;.^E,US$;F4B5R<DGYNYZ^O>@# AN
MH]?^)=[I&JHDMM9Z7#-;VLHRDC2$[Y"IX)'RJ#VYQU-/^%<"6OA_5K>/=LBU
MN]1=S%C@2D#)/)-;U_X/T/4IK*>ZM':XLEV6\Z7$B2HO]W>K!B/8DBK6C>']
M*\/Q3Q:591VJ3RM-($).YR<D\G].@H TJ*** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH ***R_$M]=Z9X8U2_L(//O+>UDEACQG<X4D#'?Z4
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
M6^G-AH7PQ\^1SA2IPNU2>0&PIK&EFN]>U;X7W]S?W4<U]:RRS>2X1=_V7<6
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
M4!)2FSS(_ER'P!C)(SSCIC1\.65YIWA^TM+^ZFN;B)2#+.X>0KN)4.PX9@N
M3W()J]]MMC!!-YZ>7.5$39X?=TQZYJ>@#G!X/MUU+7;]=3U 2ZU$D5P 8MJ!
M5*KL^3@@$CG/6JY\!V?]D:%IHU34A!HDT<]J08MQ9 0NX^7R "1VKJZ* .1F
M^']D=>N]3M-4U2P2_8/?6EK.$BN&Z%CQE2>Y4@FM)O#%L?%5OX@2[NHY[>U-
MHENGEB'RB02,;-W4#OVK<HH XF[^&>GW>GZIIK:MJB:;J%P;DVD<B!(I&<.Q
M4[<\D="2!G.,X(T+OP9#-KT6N6>JZA8:B(!;SS0&,_:8QTWJZ%21V( (KIJQ
MK3Q%'<^*+W0FT^^@EMXA*EQ-%B&X7Y<F-L\X+*#0!C?\*XT__A%IO#W]J:H+
M.:Z^ULPDC+[_ #/,P"4/&X ^OO6J_AB*3Q1!X@.HWWVN&T-H$'E;"A(8Y&S.
M20#U_2MVJVHW]MI6FW.H7DGEVUM$TLKXSA5&3_*@#@O$7AR+P]X:EM(9]=N+
M74-6%Y=W-L%>:T)?S&D58T!(W*!C# 9SCC!F\.I>3:E$^G>)M?U/3RKBZ_M"
MS$85=AVF-C&A+[MO R,9SCBNETO7;N_U+[+/HMU:PO;+<PW18/&RD@;&(^ZX
MSG;SQG!-;= &'X2TR^TC0UM+Z^O+QUE<QR7L@DF"$\!V'!/?VSCG%3ZOX=T_
M6[W2KN\C+2Z9<_:8"#_%M(P?;)!^JBM6B@#*T_P]I^FZYJFKVT96ZU,QF<]O
MD7:,>GOZU2M_!UE#<:_+)>7EPNN+MNXY63:/DV?+M4$?+QU-=%10!R0\ VW]
MFZ+9/K.K.FCW"7%LS/$6W(NU ?W>,!21@ 9ZG)YJW_PAMA)J^L7]S<75T-7@
M6VNK:;9Y1C4$ #"AA@,>_>NBHH YNP\'6]I'IL%QJ%[?6NF.'LX;DH1&P!52
M2J@L5!(&3[\D U6OO -I>76MNNJ:C;VVLH1=VD+H(V<ILW@E=P.,<9P<<@CB
MNMHH YB3P/9,N@E-1U&*718VAMYDD4.\;*%9'.WH0HY !&."#6[J5BNI:9<V
M+S2PI<1-$TD6-P!&#C<",X]JM44 <K)X$LY-#T32?[3U)8-&FBGMF!BWEHN$
MW'R\$#Z#/>KL'AB*W\1W^N1ZE?"ZO84@D4^4454SMVC9G(R>I/6MVB@#CA\.
MK!?"%OX9&J:F+&"<3HVZ'S-PD\P GR\8W<]*U4\,PKXL7Q&;^]>[%F+(QGR_
M+,>[=T"9SNYSG]*W** .,;X;Z:='ETQ-2U-(/MGVZUVRKFTEWF3,?R_WB?O;
MJN6W@BR@U74-1EU#4;J74+5;6Z6:5=LH 8!B%48.&(P,*/3-=/10!R'_  KZ
MT;P_IFC-K&K-!IL\4]NY>(L#%CRU/[O&U<#MD]R:T+CPK"=?DUNQO[JPOIX5
M@N7A"%;A5^Z65E(W#L1CTY%;]% ',7/@;3IK#2;*&ZO+6'3+L7L7DLA,DP+'
M>Y93DDLQ/3K3KCPG$NIZSJ\>IZHEUJ-H+9Q"T8**H;:8_D!##<2"3UZUTM%
M&5X;L;S3?#]I9W]U-=7$08&6=P\A7<2H=APS!< GN036-)\/K'^W;S4;35-4
ML8;]_,O;*VG"0W#]V/&Y2>Y4C-==10!@7'A2W.O'6M/O+C3KUX!;SFW"%)D7
M[NY64C*]B.>W(XJO=>!=.N-,TVPCNKVVBL+U;]&A9"TLX8MO<LIR2Q)/3K73
MT4 82>&(H_%$_B!=1OOM<UJ+1D_=>6$!+# V9R"2>M<1XI\-0>'=!\.:/97]
M_)&OB&"Z,C!&DA4N[._RH %#-G)! S7JE% &)#X;LY+J[O;Z5]1GO+;[([S!
M=H@Y)10H  )))[GUP !FZ!X"MO#\D:PZSJ]S9V^?LEG<SAXK?TVC;DXSQN)
M],\UUM% ''O\.["3POJ/AY]4U,V=_<-<3-NBW[F?>P!\O !;GI5^\\*_;!?Q
MOK%_Y%_"(;J$B(JXV["1\GRL1P2./;BNAHH Y.3P!IIU&XN;:]U"SANK..RN
M;6WE41RQHI5,DJ6! .,@C^>43P!8Q:?H-M'J>II)HA/V6Y$J>9M*;"ARNW;M
MP. #QG.>:ZVB@#G6\(PPZO?:CIVHWNGR:@JB[2 H5E91@.-ZG:^.,CKWYYID
MO@G3C-H+VMS=V4>AY^QPVY39RNT[MRL3D$CKWSUYKI:* .+\6O:>)Y)O!CZ;
M>RO*T,DL[0,L$<88,6$O3< " !W('3..R1%CC6-%"HH 50,  =J=10!S=WX.
M@E\32:_8ZE?:;>3QK%=_92A2Y5?N[E=6&X#@,,'%9UM\--/LM/TFVM-6U6"7
M2IY9K6Y62,NGFY\Q?F0J5.3U!/O7:T4 <7-\-=-GTK6M-.J:LMMJ]Q]HN%$R
M,0_RYP60]2BYSD\<8YK7N/"\5UXATS6I=2OC<Z=&\42_N@CAP-^X;,Y.T=".
MG&*W:* ..G^'.GW%IJ<#ZGJ9:_OEU$RAXPT-PN,.F$&/N@8.?ZU'J/A<Z*NL
M>(;.?5]4U2;3_(>W\]0;AE#;6&U1AOF/"X'H,XKM:* /*-$@F2*SM_#WBKQ1
M/<0"-%L[_3]L*@8!60O$NU0,_P 6?3)KJ;OX?V<WB&YU>RU;5M,:](-[;V5P
M$CN"!C)&"5.."5(/T/-==10!SUYX3BNEOH(]1N[>ROH!;S6D8C,80)L^7*DJ
M2O!.?3TJ.'0;BT\66=U97M]%IMO9"V>S:4&VP!A-J==_3+>@QSGCI:* "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
MVD,=N. #FI;J[U74?&?AFU&L7EM;:CI$L\\4&U1N CY7C@_,>3G';'6MF_\
M &EZA>:S.]WJ,4>L1;+RVAN-L3G9L#XQD-CWP<<@U/:^#+.TU+2KY+_4&FTR
MV:V@\R16!1L;MV5R<X'IC'&* .+M_%&JZ9X<N]/;4)I9SXI_L*WOIR'DBB9E
M.YB1AF"E@">^*USIRZ?\9M)$=S=2QOHUQA;B9I=I$D>2"Q)YXXSCCBM5_A[H
M\^DZKIMS->7$&IW9O92[J&CG./G0JHVG@>W'N:FL_!5O;:W9:Q<:MJM]?6D#
M0))<3+\R,0<,%50>@^O?- $WB^X>WTRU":D;$2WL,;^6A:6X4MS#'CD.P&,C
MH,GCJ.$U"[OKKP[\2],N9K^.#3K<2VL<UP6EB#6^\J7#$L,CIN/!QTKT/Q%X
M;M/$MK;0W,US;R6MREU;SVSA)(I%R 02".A(P0>M9\7@/2HYM:DDGOY_[9@$
M%XDUP6#@)LW?[V/P'8"@#DM5TM OPX47=]B2Y0'_ $I^,V['CG@\<>@SZFM[
M3;B;Q1XA\3:?)?7MK#I4D=I;+;SM&ZDQ[C*Q'WB2> V1A>G)K0E\#6$NDZ78
MO?ZF7TR99[:Z\\><I5=@&=N,;>,8_7FIY/"5JNLRZM8WM[I]W/"L-RUNZD3J
MHPI<.K98#@,,'WH X&'Q'X@U?0O!\LNJSVMU-K3Z;>/ JA9PGF OC'4[!_LY
MSP>E:\EAJECXZT;P\/$^L36<^G74DC2R(9"1(N/F"CG#8R<D <8/-='<>"=,
MFMM'MH)KJT@TB83VJ0,O^L&?F8LI+$[FSGKDDU;N?#EO<^)K77FN[I;JUA:"
M-%*;-C$%@05SR0._:@#@[+Q+JUCX>GT]KZ2XF'BE]%ANKF3$@BW9&Y\'YL97
M=@]16[%H'B8WFK6K:O\ 9+"[M,V86^DGGMK@'&X,Z@F,Y&02>?3-76^'VCS:
M/JNEW4EW<VVIW37LWFNH9)F()="JC:<@>W'UIUOIEOX(TBZU*2?7=<EB0+NF
M<W5QLR!M11@8[G R<9).!0!C>&]:N?$.EZ#IK7%S#J=K+(NK@3-O5H/E=6/^
MV[(0/[I..E=S);)&]S=0J@NI(]OF2$D# .![+GG ]2:P_"VF1+>ZOXA_L][*
MXUB9',<J[9!&B!5WCLQ.YL?[0SR#70SPK<6\L#Y"2(4;'7!&* //?"&NRR:_
M9Z5K;:KIWB".V?[1:W<C/!?,,9EA;)7 P3A<8#'CBM;XIP";X::\3)*GEVCN
M-CE=W'0XZCVK3LO"UO;7>GW-Q?7E])IT;1VANF0F+< I.54%CM&,L3^?-6O$
M&B0>(]%N=)NIIXK:Y79+Y!4,R]QD@XH Y2:ZNK?4O#WANTEE:.[LI;N0S7KQ
MO(4$8"+( 6 ^8M@8^Z.<9!J37GB;P]!9Z/J%_;SOJ6L>1:R_:F,D5LR.XC>0
MIG<2FT-@G!/.0".CUGP/I^N:=I]O=7=^ESIQW6E_!*([B(X .&"XY &>.:2Z
M\":3J'AQ]&OI;VZ#RB=KR:<FX\T?=D#]F   P,8XQ0!CSV'C33+77A:7,,\<
MT<<FG6CWS2S(P91*HD=0<,"=I).&(J;POJ=KXDCUNSM+[6-/N_)2&6RO6;[1
M8.0XWJ7)R#D$')^[^%:=MX+MX-*FLY-7U>YGE:-C?7%SOG7RW#H%., !AG&.
M<G.:DN/"\!@U6=KO49K^_MA;/=1.D<ZHN=HC*A54Y9CG'4\G@8 -JQMGL]/M
MK:2XEN7AB6-IYB"\A QN;'<]35BLW0+*YTW0;*SO+F2YN(8@KRR/O8^F6_B(
M&!GOC-:5 !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 45%=3BUM)K@QR2"*-G*1+N=L#.%'<GL*;970OK"WN
MUBFA$\:R".=-CID9PR]B.XH GHK#TO7Y=1\2ZUI)LU2/3/*!N%FW>8TBEMN-
MHP0N">3]X5N4 %%8?BG7Y?#NG07,-FMW+/=16L<)F\LL\C!1@[3ZY/L#6Y0
M45A^(]?ET(Z6L5FET]_?1V:J9MA4OGYONG( #$].E;E !1110 4444 %%%%
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
M[W210&4YS'D,?N;?;%<[=WVIV_PYUZ.'5[]9-+\1FQMIC<,9/)\^-0K,3E@
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
M-;I$N)"8E.<(2H/3KCGC- 'KM%<CX#U6SU&'58X;:_L;N&Z'VK3KTDM:L8U
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
M6GZC!J,Z+=>=)NL_*E("% 0NW8!D'@[B30!ZG13(6+01LS!B5!)48!X[4^@
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
M:27SWA6=Q 9<YWF+.W=GGIUYZUO:=)>2Z;;2:C!'!>-&#-%$^]4?'(![BK5
M',:A\/\ PYJ>N/K$]G(MW* )_*G>-+@#H)%4@/\ CU[YK1_X1O31KSZVJ3+J
M#6_V4R+.X'E9R%"YV@9YZ=:TY98X(7FE=4C12SNQP% Y))]*SY[^\N=/T^\T
M:WANH[F2)G,TACVP-R7'!RP!&!0!G'P)H#:!<Z&UO<'3;F4S2PF[E^9BVXG.
M[/+<XSUI=;\#Z'X@FM+B^AG^UVB[(KJ&YDCF"]U+J02/KZGUKHZ* ,23PEHS
MS:7*+>2-M*S]C$<[H(R1AC@'YB03DG.<FD7PCHP?5W:WED_MA-E\))Y&$PV[
M>A.!\O'&*W** ,&'PAI=JED+9[V&2RC>.&5;N0OM;;D,6)W#Y%X;.-HQC%4]
M0\%V$QT-+.*2W_LNZ^TQ2K.XVY<,^1GYV?D$M_>8^QZJB@"GJFF6NLZ9<:=>
MJ[VMPACE1)&0LI&",J0<$51O/"FDW_AI?#US%/)IBHL?E&YD!*KC:"V[<0,#
MOVK:HH \Z\5Z-]H\36\E]H>LW=A!9B&UO-*NV$RN6RXDPZL1PF.HZY]KVF>#
M+?4-'NK'5%U<Z5-)')#9W]^[RHRG.XNK$@$[2%W'&W/!.!V]% &3_P (YIW]
MO0ZV5G.H0P?9TE-PY'ED@E2N<') /(ZU2@\#:%:VC6UM#<PQ?:?M2".[E'E2
M9)^3YOD&6)P, YY!KHZ* *.GZ3:Z8]S+"':>Z<//-(Q9Y" %&3Z    <"J%]
MX/T74=9DU6YMY3<RPB";9<2(DR#.!(BD!\9/4&MVJUY?VU@L)N95C\Z9((P>
MKNQP /\ /0&@#&L_!6D:;!916'VRU^Q1-#"\=W)N"-C*G).X?*N,YQ@8Q6QI
MVG6FDV$5C90B*WB!VJ"3U))))Y)))))Y)-6J* .5N/AUX:NH[^.6TG\F^G^T
MRQ+=RJBR[@Q=%#81B0.1@]NE=#+86TVF2:=(A-K)"8&3<<E",$9Z]._6K-%
M&39>';"QNH+D&XGFMXC# ]S,TIB0XR%+'OM&2<DXZU2@\"^';?0[C15L6;3Y
MVW&&2>1@GS%AL);*8))&W&"<UT39VG: 6QP"<5@>$O$,_B.ROYKFTCM9+34)
M[(QQR&0'RVVYR0,Y.>PH NV&A6=A<-<@S7%TT0A,]S*TK^6#G:">@SR<=>^:
MS-(\ ^'M#U!KS3[26([VDCA^T.T,+-U9(R=JGD\@<9XQ7344 <U+X"\/3:;J
M&GRVLTEKJ%S]JN4:ZE.^7(.\'=E3E1TQTJVOA;3%U:UU3_2VO;6$V\4KW<K$
M1GJ#EL'.!R<GBM>8RK"YA1'E ^57;:"?<@''Y&N7T+Q+JOB/P'9Z[I^FV_VZ
MY;BUDG*HJB4JWSXY(4$].M %M/!.@+I>HZ:UF\MIJ,[7%S'+.[[I6.2X).5;
M(!R,<BKECH%G83FY5KB>Z,7D"XN)FDD6/.=H)/ SR<=2!G.*U*I7\NHQSV0L
M;6&:)Y]MTTDI0QQX/S*,'<<XXH RE\#^'UT*\T5K)I=/O)&FFBEG=\N3N+ D
MDJ<\Y!'-%CX*T>QU.UU)3?37MK$88I[B]ED8(2,@Y;D<#@\5T5% '+Z?\/O#
M>E:PVI65E)%(TAF$ G?R%D/\8BSM!]...V*T]*\.Z=HMU?7-BDRRWTOG7!>=
MY []-V&) . !QZ5JT4 4-8T:PU[3VL=2MQ- 6#CYBK(P.0RL,%6!Z$'-,L=#
ML[&:6X0SRW4L8B>YGE9Y"@SA03T R3@8Y.>M:5% &5HOAW3O#ZW*Z<DR+<S/
M<2B2X>3=(QRS?,3R:-7\.:9KEU8W-]#(T]BS-!)',\97<,,,J1E2  0>#53P
MMXAN->DUJ.YLX[9]-U%[+$<ID#A41MV2!UW>E=!0!A+X0TA&U9ECN =6&+T_
M:I/WO&W^]\O''&.*K7_@#P[J.CZ?ID]K+Y.F@"RD2X<2P   !9,[L8 &,]AZ
M5TU% %+2]*L]&L$LK&(I"A)^9R[,3U9F8DL3ZDU5UGPUI>NRV]Q>0NMW:DFW
MNH)6BFBSUVNI!P>XZ'TJKXN\0W/ANPL[J"SBN%GO8;63?*4*"1PNX  [NO3(
MKH: ,^PT>WL)/-$EQ<3[=OG7,S2L!Z#)PHX&<8S@9Z5GP^"]$@:18H)5M9)_
MM+68F;[.9<[MWEYQU ..F><9KH** ,G_ (1S3AKTVMA9QJ$L'V=Y1</CR\DA
M0N<#!)/3K5 ^ ] /AZ703;W!TR67SG@^UR\MNWDYW9^]SC/6NEHH X :-+<?
M%>YNVCU.&T&DQVL5XA=0TBR,S*6[\$<GC/0YKH+OP7H5YI]C9-:R11V,OGVS
MP3O')&YSN;>I#$G)R2><Y/-;]<]XT\0W'A;PW+JUO9QW7E21HZ/*4P'=4R,
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
MB@ HHHH **** "BBB@ HHHH **** "BBL;Q;=6UEX1U:XO+V>RMUM7WW-O\
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
M/""9HU/W6+L3NZC"CM1###:?$3PG#;WDMW$^D7,;7,K9:YV>6 S'@,<9Y]Z
M.[U+4;72--N-0O91%;0(7=SZ?U)Z =S3+Q]26^L5LX;9[1G87;2N0Z+M.TH
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
MYZUL4 @C(.: $10B*@R0HP-Q)/XD\FL>Y\*:+=WUQ>2V9\ZZ4+<^7,Z)< <
M2(K!7XX^8'CCI535/$%Y8>-O#^C)!;M::FMQOE+$R*8DW8 Z#J/6NDH S;C0
M-,NM4L]3EMV-Y9J5MY%E=?*!X( !Q@@ 'CG%5T\)Z*D6HQK:R!-2)-X/M,O[
MXD8.[YNXX^G'2MJDR,XSSZ4 8W_")Z+MTU?LKXTS_CR'VB3]QQCY?F]./IQT
MIP\+Z.+AYOLKGS+C[4\;3R&)I<[MYC+;<YP<XZ@'L*V** ,?_A%]'^T23&U<
M^9<?:7C,\AB:7.[>8]VTG(!Z=0/05-!H.FVVL7.K10,M]=*$FE,KG>HZ @G&
M!VXXK2SGI29&>M &-9>$]$TZ6-[6R\M8I#+%#YKF*)SG+)&3L0\GE0.I]:>O
MAC24NM0NEMY%GU%0MVXN) 90!@9^;L.!CH.*M:6=3-M)_:JV@G\Y]@M2Q7R]
MQV9W<[L8SVS5IV?RF,(1GP=H8X!/N1F@#&B\(:);Q6<=O;30K9(T=L8;J5#&
MC8W*"&!VG:..G%:EE96VG6<=I9PK#!&,*B]N<GZDDDD]R:Q?!'B"Y\3>%+;5
M;V&&&XEEF1HX2=HV2N@QGGHHK635+236)-*24->10B>1!_ I)"Y^N#^5 #YM
M/M)[^VOI;='NK576"4CF,/C=CZX%);:;9V?VLVT"PF[E,TY0D%W( +9[' '3
MTJSD9QD4M & ?!7A\Z/+I!L6.GS2^;);FXE*L^=V3\WKS]>:M_\ "/:9_;$6
MK&&0W\,7D).T\A(C_N_>P1W.>IYZUJ4F1ZB@#)MO"^C6EM?VT5D#!J#M)=Q2
MNTBS,WWF8,2,GN:C\/\ A#0/"PE_L;3H[4R\.P=G./0%B2![#BM6[>6.UE:!
M8VF"G8LC%5)]R :Q_!>NS^)?!VFZU=11Q37<1D9(\[5Y(XS]* +^H:-8ZG<6
MUQ<QR>?;;O)EBG>)DW8W8*$'G _*JE]X1T#4M#&C7FF0S6 <R")LY#DDE]V=
MVXDDELY.3SS6SD8SGCUI<YH P/\ A"?#O]@_V(--4:;O$C0"5P'8$$%CG+'@
M=2>@]*VQ!&+?R""\>W81(Q?(Z<DY)_&LVYUN)H]6BTYHI[W3HPTB.V$5BI8*
M2,G.!GIW%1^$M9F\0>$]*U:X2..>\MEF=(\[03Z9YQ0!=CTBQAT9-(A@\JP2
M$0+%&[+A ,8R#GI[UGCP=H0L["T%FXM]/D$EH@N)0(6'0K\W!&3CTR:T(#J?
M]KW8G6T_LT(GV8H6\XMSOW@\8Z8Q[U<!!Z$4 <UKGAI18ZU>Z+:1/K5_;&%F
MN9G*2C& K DK@ G&1@9],URND^"K0SVQL?"&I>'[J!T;[6^J[D0*02%5)6WY
M (PR@'/->H5S.@>,K77O$VN:+'&4?377RW;_ );IRK,OL'5ES["@#:U32['6
MM-GT[4K9+FSG7;)$_1AG(_4 Y]JRX_ _AN*<3KI47G?9FM3(S,S-&V<@DG)/
M)Y//O70$@#).!1GC- &98>']-TV>.:WAD\R*(PQ-+.\IC0XRJ;V.T' X&.@]
M!1K'A[2M?6W&IVBSFVD\V%MS(T;>H92"/SYK3R.>>E ((R#D4 <Z_@/PP]M>
MV_\ 9$*P7SA[F-&9%D(QC(!'' .!QD ]:O-X=TQ]4M=3>&5KVU0QPS-<2$HI
MZCEN<XYSU[UI@@]"#1D>HH K:CIMEJ^GS6&H6T=S:3+MDBD7*L*R+#P-X;TS
M2+K2[+3%AL[H!9U65]TBCHI<MNV]>,XY/K70@@]#29!) (R.M &9=^'=+O\
M4+&_N;=WN[ $6TWG.&CSUQ@]^^>O>J5[X%\,:CKHUJZT>"34,@F7+ .1T+*#
MM;&!U!Z5T&1ZBJ@U2T;6#I2RAKQ8/M#QC^%-VT$^F3G'T- &;K7@OP[XAOX;
M[5-+BN+J%=BR[F4E?[K;2-P]CD<U/JGAC1M9^Q?;K%7-D2;8QNT9BR,$ H0<
M$  CH<=*UZ* ,-/!OAV.PU"Q32;=;746+748!Q(3^/'08QC&!BGGPIHIDT]_
ML9#:<2;4B:0>43U/#<DY.2<D]ZV:* *MSIUG>7-I<W%NDDUG(9+=V',;%2I(
M_!B*I:_X7T7Q1;10:UI\=VD3;XR259#ZJRD$?@:UZ* *NFZ;9:1816.GVZ6]
MM$,)&@X'.2?<D\DGDU3O?#6DW^H'4)K9UNS'Y+S03R0LZ?W6*,-P]CFM:B@#
M)U#PSH^J:?;6%W9*UG;%3#!&[1HA7[N I X[>E:D<8BC5%+$*,#<Q8_F>33J
M* ,"3P3X=E@OX&TQ!%J$ADND61U$K$Y.<'@$\D#@GK5EO#6E-?V-\T$C7-@I
M2VD:XD)C!&"!ENX !SUQS6M10!SR>!?#$?B!M=31X%U%G\PR@M@O_?V9V[L\
MYQG/-=#110!@IX,T*&ZFN+:UFM6F8O*EI=S01R,>I:-'"DGOD<U=O]"TO4].
MCT^[LHGM8BK1(OR>4R_=*%<%2.Q&"*T:* ,M?#VF)97=IY#M'>#;<L\\C22C
M&,-(6W$8XZ].*KMX1T1[33[0VDGD:<ZO:(+B4"%E&%*_-Q@<#T%;E% ',ZYX
M<M5LM;O["QFFU:^LI+<E9VS)E2%4AFVX!/X5!X+\,6^G^&]#%]831:A8VR(8
MYYS(L4H0*[(NYD4GYN5QP3ZFNMHH YRY\!>%[Q[]KC1X7^WOYEP"S8=\@[@,
MX5L@9(P35R'PQI%OJ3:A!:M%=F 6_F)/(O[H=% #8 '4>AYZUKT4 <O-:W7A
M.RM;#PIX=%W#-*_F!K[RTMR>=YWY)!))(7GJ>2:T+'P_;6/A-="\F.:'[,T,
MJ?ZM92P._./N[B2>.F:V** ,KPWHD/AS0;?2H,"*$N54$D(&<MM!/.!NP,]A
M6K110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %<U\0M/N]4^'VNV5BK-<RVCA$7J^.2H]R 1^-=+10!SG@
M+4+74O 6ASV;JT:V441"G[C(H5E/H00161\2[B*X\+6S0N'5=9LT+#IN$Z@C
M/?!X^H([5O-X0T$WTUXE@(9IVW3&WE>)93ZNJ$!C]0:MW^@Z7J=E#97EE'):
MP,K10\JB%?ND 8'';TH X'QC'8ZC=^,UBC6ZNK+25%P]XP,=G^[=T$"XSO;A
MB<@ A>21BFS,;FY^%=[+(\EQ*!YCLY.XFT+$GWR<YKM[KPEH%[J#7]UI5O/=
M/#Y+RR+N+IC #9ZG'<\T)X2T&*/3TBTV*-=/YM A9?)/<K@\$]SU- '!)X?T
MS4M8^)$%[;"XBB:)XTE8L$8VP;<,GALDD'J.U4XK.&'PW\-=?4,=7N;ZRAFO
M&<M+)&\3!D+$Y*G XZ5Z:OAK2$DOY$M-KZ@,7;"1\S=OFYYXX^G'2F-X3T-K
M.RLS8+]FL7$EK%YC[86'0J,\$=L=.U '":P9M$UVXU+5=-M]6T*?58Y4U.W(
M^U6$BR*H1P1DH'4+\IZ$^M=OXTMX;GP1KL<\22I]@F;:ZAAD(2#@]P0#4X\,
MZ.+EY_L8W23"X=3(Y1Y0<ARF=I8$ Y(SP/2M26*.:)XI45XW4JRL,A@>H(H
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
M&#6B>8^(".A3G@CMCI0!YW?%_"FH_$2+P]%]E2'2;>ZBAA&%CE*R!I%7H#@
M^^*V],T#3KG4=!U^RU>RBBEB>)4L+8QF_1TSMD/F,6*X+9/(()-=C%H6F0ZI
M<:E':@7ERNR:4LQ,B]E.3@@=AVJEI/@KPWH5W<76E:/;6=Q.I5Y(05.#U"\_
M*/\ =QT% 'DPTJS@^#KZVD;?VG8ZN3:W)=B\/^G;<*2> 03GUSS7;V^G:?\
M\+NU&5[.V\P:/;S!S$N?,\YQNSC[W &>O KI/^$.T#^RFTK^S8_[/>3S6MM[
M>67SG.,XSGGZ\U:D\/Z3-JEMJ<MC%)?6T?E17#@LZKG.,GKSSSWH OQRQRAC
M'(KA6*G:<X(ZCZT^J6FZ1I^CQSQZ?:QVZ3SO<2A/XI&^\Q]S5V@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M<MI=XNEW=G#?(AV27/S1QGU< @XZU%/KUA9:K8:3<W47V^[1G5%('RJ.6Y/
MSP/_ *QH U:*Y3PWXCNKW4O$-MJTUG&NGZ@+6!T!C# HK#.YCEOFKJZ "BN3
MU?QA&WA;Q%J.@W-K-<:0LP/F#>C-&@=@ K XYVY]0:V]&U);_2[&266(W<UK
M'/)&I&1N4$G'4#)H T:*S[%K\7VHB\N;22 2*;9(5(>--HR),GDYR>W%6K>[
MMKM2UM<13 =3&X;'Y4 344$@#). *Y3P;XTC\63ZQ#Y!@DL;D"-3D&2W=0T4
MO_ AD_E0!U=%17%U;VJ![B>*%"<!I'"@GTYISRQQH'=U520 Q.!STH ?14!O
M+58'G-S"(4)#2%QM4@X()[5(LT30"994,17=O##;CUSZ4 /HJ&.[MIK<W$5Q
M$\ !)D5P5XZ\]*5;JW>5HEGB,BJ&9 XR >Y'I0!+14<,\-S$)8)4EC/1T8,#
M^(IL%W;7._[/<12[#M?RW#;3Z''2@":BH5N[9Y(XUN(6>0%D4."6 ZD#O5.U
MU[3KW6K[2;>X1[JR6,S*&'RE]Q"_4!<GZB@#2HJ.:>&VB,L\J11KU=V"@?B:
MYKQ9X@O=);0)-.>UDM[_ %:"QG+*6.QR<E2&P#\N.0>OM0!U-%1Q7$-QO\F:
M.38Q5MC [2.QQWID-W;W)D2VN897CX8(X;:?<#I0!/17!V?BO6I_!_BW4G^P
M_;=&N[R&+$+>6ZP+D97=G)Y[]ZZO0+V74O#FF7T^WSKFTBFDVC W,@)Q[9-
M&C1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 >9>+-*MD^+GACRV>)-<BN(-2C0X6Y2!!)&&'?D 'U7CH
M36Q\4;R:R\)PR L+)M0MDU!AVMC(/,S['@'V)KI;K0='OKV.]N]*LKB[C_U<
M\MNK.GT8C(J[-#%<0/#/$DL4BE71U#*P/4$'J* .&U>S6U^*/A672HXXQ=VU
MU'?I$ %DMT12A8#C =@ ?]K%<3*]I%\!9(9&A22+6&1$8@%6%]D@#L=OZ5[)
MIVBZ9I((T^PM[;*A28HPIVCH/H.PZ"JC^$O#LDUW,^AZ<TEXP:Y9K9"9B&##
M=QS\P!Y[B@"[JES!:Z/>W5P\BV\5N\DC1?>"A225QWQTKRO39+:W\1_#::W:
MUMK.2UN1#&) TWDFWR#*_ 8D@$C& P/)ZUZZ(HUA$(C01!=H0*-N.F,>E9=M
MX4\/68@%MH6FPB"7SXMEJ@V2?WAQP?>@#@/#4F@>(/!=POB*95U>WU222]Q)
MLN5N$F)C"_Q?=V*H';@51U^]N;#Q]XNGD@:?0@-/76$BSYHMS%(,C_9!^\!S
MMZ8YKU$^'-$;61K!TFR.ICI=F!?,],[L9SCC-+_PC^BF>ZG_ +(L/-NUV7+_
M &=-TR],.<?,/K0!Q7BW3]'O->\ M;6UJ]I+>.D9A4!6A,#D*,=4/''0USVM
M^?H-I\4X/#\7V98!92)#:KL$:O&OG,H'W3MW'(],UZDGA;P]&MNJ:%IJK;$M
M !:(!$?5>/E/TJQ!HVEVMW<7=OIMG#<W(Q/-' JO+_O$#)_&@#B?$=K:Q:IX
M$U#PY'%')+?) IMP )+)HV:0''50%!YZ&L;4M#BCU7Q-X#CM8A#X@*:A8,8\
MI"6XG;CIL*!@/5@.]>F:?H.D:5(9-/TVUM7P5!BB"X!.2!CH,\X'%7#;0-=)
M=-$AG1&C60K\RJQ!(!]"57\A0!Q'@.];Q/#9:G>V@CN-(MC8.K( 5NLXFQZ
M!$P1_?85R,5^=/\ AS%-)*8M/;Q3*E_+MW*D!N'R6'==VS([CCO7LD5I;P1R
M1Q01HDC,[JJ@!F8Y8GU)).:J6^@Z/:64]E;:58PVEQGSH([=%23/7<H&#^-
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
M7UG90Q75W8V_VB=1\\N$!!8]SR>:T#X9T$B<'1=/(N$6.8&V0AU4!54\<@
M =.*OVEG;6%K':V=O%;V\8PD4*!%4>@ X% 'G=W-::C\1/$>C:S?P6H>T@%I
M'<QHPEMV0^9L+_[>[./0>G%#^PM)A\3_  [LHY6U*U$%_ +BX +7$2H-H8@8
M9/3L1]:]&U7P[HNNM"VK:59WQA.8S<0JY7Z9'Z5+-HNE7%W;W<VFV<ES;#$$
MSP*7B'HI(ROX4 >86WA_1Y(?B5;/IMLT%K+(UO$T8*0%K96)1>B$GG(P>!Z"
MF_8K/5;GX3MJ$23FYL)$F:3K*/L@.UC_ ! GL>#D^IKTQ?#FAJ+H+HVG@7?%
MSBV3]]_O\?-^-<UKWA,7/B/PN;'1;8Z/I;SM-"@1%&^/:NQ/4'GMC''- '/Q
M:5%HFH?$JRTN)8-'&F++Y$8Q%%<-"Y8*.@RNTD#U'M3["Z87?POL[P#^RYM*
MRH;E&N1 FS=VR!NV^YXY%>CC1M,73Y=/_L^V-G*29(&B!20GJ6!ZD]\TR30=
M'ETQ-,?2[,V,9!2W\E1&A'0JN, CL10!Q%IX>M]1\8^-= :%3H-W;0/+$!\D
M5RZG<4'0,0%8X[X--\'2S:VVGZ#JELOG^%G9+PF/"O,H*0,OJ&0L_L=M=G?6
MUUI.AS)X:TZR-V&#1P2-Y4;DD;B2!UQGGN:=H6G7%G;W$]_Y)U"]E,]SY.2@
M. JJI/)"JJC/&<$X&<4 >5_V%I,O@7XFN^GVS-;:C?M;DQ@^25B1@4_N\@=,
M=!Z5L26%G9>(?AQ?VUO'%>71D%Q<*/WDX:U+'>W5N<'G-=ZOAG05@N8%T73A
M#=-NGC%JFV4^K#'S'ZTI\.Z(QM2VCV!-F,6Q-LG[G_<X^7\* /,+&'2_%'AS
M6+;7=<6QU&WU.9[L!(UN89$F)C*,1N^Z$5<=OE%;&G:#I.H?$[Q=#>Z?;W$;
M6-D[)-&""[+("Q7IN]^O)]:[:;PWH=QK":O-I%C)J4>-MTT"F0$=#NQG(['M
M4G]@Z/\ :[B[_LJR^TW*[9YOLZ[Y1Z,<9(^M 'D6F1P7?@CX62WB1RDZBL)>
M50V4"3 *2>W X]J]H\NWN+01[(I+9TP%P"C*1TQT(Q6>?#.@MIBZ8=%T[[ C
M^8MK]F3R@_\ >"XQGWK2:*-XC$\:M&5VE"."/3'I0!XA!9VTOP4\+;XD)CUR
M-8V'#(#>,#M(Y''I7::986>D?&:[M=.M8;2WFT".:2*! BNXG90Q XSCC-=/
M_P (KX>^Q)9?V%IGV6-_,2#[)'L5_P"\%Q@'WJRFBZ5'J(U%--LUO@GEBY6!
M1)M_N[L9Q[4 <_XPN++^W/#-G+&9+^:[D>S2239 &2)MS2<'=@-\H');'(Y-
M>=KJ@T[PMKH>YB?3E\8!;_[.-J"T+1F3"@G"$G!&3]XCO7LNIZ-IFM0QPZII
M]K>QQN'1+B)9 K>H!'6FQZ'I,*WBQZ99H+W_ (^@L"@3\8^?CYN/6@#A_%XT
MVRT?Q'K/AB<'6)=(^8V4N5$2GA\+P&VEMIZX4XZ&K\">&;M='UC0'A;4(["6
M/3H[:0#>ICSB11U ('7HQ]374:5H6DZ';/;:5IMK90N=SI!$$#'U..M,TOP[
MHNB333:7I-E923G,KV\"H7^I Z>U 'ELBPW_ , [?5;?/]MPE)DN5'[\7WG
M-SUW%B5QW!Q6Q'X=TK6/BOK-OJVFVLXDT>UEEB9 4,N]P6Q_>XQGK^==VGA_
M1X]0:_33+1;IG\UI1$H8OTW?[WOUJ1-&TN/4VU---M%U!QM:Z6!1*1Z%\9_6
M@#R^"6TUCX??$.35$A?5(IKY9UE WQ!%/D 9Y"@ ;??/?-:&FW&GW-]X;M4\
MEM0C\,I*\EX^ZWBMVV D)QN<E<'E0%')Z"NWO/"V@:A?27MYHUA/=21F-YI(
M%9V4C&"<<\<4]_#6A.]F[:-IY:R_X]2;9/W/?Y./E_"@#Q_38+2_^'?PU\X1
MS2KK:0%L_,(R9QMSU PHX]A6U>QR:#K'Q'B\.P):.FD6T\,5L@0+)LE!95'
M; [=P*]#'A7P\(8HAH6F^7#*9HU^RIA)#U8<<'WJU#HVEV^H2ZA!IUI%>RC$
MEPD*B1Q[L!DT <CHZ>%=0MO#&K:7)";V&V9+%()0&;='\ZR =<8R=W0CU-<S
MX<@TGQ+X0T:[O]>\C5+.[6658TC6Z6\#$,IR-Q+,2,=P17IVF^'-$T>ZGNM-
MTFRL[B?_ %LD$"HS]^2!ZTB>&]#BUEM832+%=2;.;L0*)"3U.[&<^] $VL:5
M:ZYH]WI=[&'M[J)HG!&< C&1[CJ*\<-[=#0]$U=[-#>^!YOL^IMY7+H&\E@A
M[_NQYA],KBO<:K-I]F\-U"UK"8KLDW"%!B7*A3N'?( 'T% 'G7C2PMKGX2>)
M=6FM8C-J*&]!:,;@O B]P0@7\2WK5G5[>Q_X69X0DNH;?:VFW99I57!VK$02
M3Z#/TKN[W3;'4[,V=_96]U;'&89XE=#CI\I&*BFT/2;A;-9M,LY!9-NM0\"G
MR#ZIQ\O0=/2@#R^YTC3M0L?BI/>6<-Q+#+,T32J&,1%JI!7/W3D#D<\#TKTC
MPO(]SX/T:69C(\MA SLW.XF-<DT\>&]"5+I!HVGA;O\ X^0+9,3?[_'S?C5Z
MTM+:PM8[6SMXK>WC&U(HD"*H] !P* /);."R@\!?$P1Q6\<XO-51=JJ&"!!P
M.^.G'3I5V+3;+3?$'PTNK.VB@N+F*5)Y47#S*;7.';JW(!YS7H$GAS0YI+R2
M71[!WO<?:F:V0F?'3?Q\WXTO_".Z(6M&.CV&;,8MC]F3]P/]CCY?PH \]L].
MMIG^).G1W2:9%/?11K,J#;&SQ)R1TP6//L36WX0O;]/%6HZ9KND6MKK:V<,C
M7=B<P7<*LZJV#RK EA@_R%=,/#FA@78&CZ>!>?\ 'R!;)^_YS\_'S?C5BRTN
MPTW?]BM(8"^ Q1<%@.@)]!V':@#*\733RZ9'H]DZK>ZJYMHRS$;4P6D;(Y&$
M# 'U*UQ^KB^\(_$#0_$=VEE!I]^JZ-=BV+;5SDPL00,8(QGL*]$GTC3;J_AO
M[C3[66\@&(KB2%6DC_W6(R/PINI:-I>LQ)'JFFV=]&AW(MU L@4^H# XH Y'
M69UL_BC#/<>5>6\FC/$+0RQJT),O+XD900X^7@Y^3TKD]1\(V^A?#'0+6ZM[
M3[6=;MG>6#&5#W'"B0<DA2%SGM75:]X6NKGQ \\GAC0]=TOR(X;6&X81/9A<
M[@,HP().>,'@#'%:>C>!](MM/E@O=$TP12S_ &A;%8Q-!;MM"_)O Y.,D@+]
M.,D Y_6+?2O#GCK1-,06NCZ3=P7,L6(4$+7A:,<@_*&V @'W('6LS48=.\+6
M^G6]MK+2:%/X@9KV5D1H+=WB9E0 #:(Q)M..@/TKU#4=%TO5[ 6.HZ?;7=J,
M$0S1!E!'3 /2C^Q=+_LC^R?[.M/[-V[/LGDKY6WKC;C'6@#S'Q9H6CVWA+QQ
M=6NHK?R75FEQ-"BQ^3#(H(5U"C"NP!SW.,U=U30M*3QMX#5+"!1>0W:76%P;
MA1 &Q(?XQN&?FSFNZA\,:#!I+:5%HU@NG,VYK7[.OEL?4KC!/N:D;P_HK2VL
MK:38F2T&+=S;IF$>B''R_A0!Y3J$AT'3/B+#IL?V>QM]3M&DBMTP(X76+SBJ
MCCE=V?QKI8=&\/WNL+JMOK$%Z]SILD!MK9(O*F@QD-(JCHIP 3T) KL[?1-)
MM)KF:VTRSAENABX>.!5,P_VR!\WXU!8>%] TN"Y@L-&L+:*Y_P!>D5NJB0>C
M #D>U 'DVFZ;8VOP[^'&J0VT27[:M8HUT%_>%6=E92W7;CC'2NQ\,V]C#\5/
M&A,-NDH:R,1VJ&!:!BVWZ\YQUYKJ3X7\/FT@M#H>F_9H'\R&'[*FR-O[RC&
M?<59&DZ:NIC4Q86HOQ'Y7VD1+YFS^[NQG'M0!@>,[+4+R?27T:\LX]4M99)X
M+6]4F&Y 0JRG'((#9!'3GWKBK^[M]5\+>&X3I3:6\?BZ.WN[,/E4F\QS($9<
M94EB01ZUZI?:5I^I^4;ZS@N#"2T32("8SZJ>H/N*AE\.Z+/;V\$VD6,L-N^^
M%)+=&$;9SN4$<'/.>M 'GMRND^'?%7CF/R&L]*_L.":>*P41MG]ZI9 , -CO
M1I;Q6GQ&\*!6L;>.31)8T@MWR5CS'Y:N_&\^AP.<XSUKT/\ L'1S=3W7]E6/
MVB=#'-+]G3?(A&"K'&2,=C45KX7T"R-L;71=/A-J6,!CMD4Q%OO%>."<#/TH
M X/32/\ A7_Q,_["&K?^@5W/A'_D2]"_[!UO_P"BUJ:/PYH<5M<VT>C:>EO=
M$M<1+;(%F)ZEAC#?C5VTL[:PM8[6SMXK>WC&$BA0(JCT ' H FHHHH ****
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
M5XZY- '9T444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 5%<VT%Y;O;W4$<\+C#QR
MH&5A[@\&I:* ,XZ!HQ2!#I%@4MSF%3;)B/\ W>./PIUSHFDWMXMY=:99SW2@
M!9I8%9P <@9(SUJ_10!6NM/LKYH6O+.WN&@?S(C-$',;?WER.#[BJ7B:PO\
M5/#E[8Z;<0P74R;5:924(R-RMCD!ERN1R,YK6HH X&P\&?:;RVFN_"7AO1WM
MYHYA=:>V^8LC!L+B)-H.,$DG@D8YS79VNEZ?97$L]I86L$TW^MDBA5&?ZD#)
M_&K=% $:01122R1Q(CRL&D95 +D  $GOP /PJI+H>D3ZI'J<VEV4FH1XV73P
M*95],-C(J_10!'/!#<P/#/$DL3C#)(H96'H0>M55T;2TT]M/33;-;)CEK<0*
M(S]5QBKU% &=)X?T:6.&.32;%D@!6%3;IB,'J%XX'TJ2[TC3+_3QI]WI]I<6
M2@ 6\L*M&,=,*1CBKM% $-K:V]E;1VUI!%!!&-J11(%51Z #@4Q]/LI+^._>
MSMVO(E*1W#1 R(IZ@-C('M5FB@"@NB:2NH-J"Z99B]9MQN! OF$XQG=C.<=Z
MO,H92K $$8(/>EHH S8/#NB6RPK;Z/I\2PR&6(1VR*$<C!9<#@D=Q0/#VB"W
MEMQH^GB&5M\D?V9-KMZD8P36E10!S%_I6L7NHKI20Z9;^& L981[A,VTY,>W
M&T*< 'V)]>.GHHH K7VGV6IVK6M_:07=NW)BGC#J?P/%,T_2--TF-H].L+6T
M1OO+!$J!OK@<U<HH SET#1D@N(%TFP6&Y_U\8MD"R_[PQ\WXTZ+0])@96BTN
MRC*0_9U*VZ#$6<[!Q]W)/'2K]% &9_PCNA_94MO[&T_[.C[UB^RIL5O4#& ?
M>IO[&TO[7]K_ +-L_M.W9YWD+OVXQC=C./:KM% &9_PCFA_9C;?V-I_D&02^
M7]E3;O (#8QC/)YZ\U*VC:6]BMDVG6C6BN)! 85*!@<AMN,9SSGUJ]10 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 444R66."-I)9%CC7DLYP!^- #Z*I?VS
MI?\ T$K/_O\ K_C5B"X@NH_,MYHY4SC=&P89^HH EHHHH **** "BH9KJWMY
M(HY[B*)YFV1*[A2[>B@]3]*FH **A@NK>Y:58+B*4Q.8Y!&X;8PZJ<=#[5-0
M 4444 %%1S3PVT1EGE2*,=6=@H'XFEBECGB62*1)(VZ,AR#^- #Z*JW6IV%C
M+'%=WUM;R2_ZM)I50O\ 0$\U95E<95@PR1D'/(ZT +1110 445"EU;R74ELE
MQ$UQ& SQ!P74'H2.HS0!-1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 52U;2K76],ET^]3S+:4KYB'HX#!MI]CC!]C5VB@#P_Q%86
M<7[2WABVCM($MS8<Q+& I^6?MT["NQ\8ZU!\*?#,^J:7I4,T%U?AI+82>4J,
MZ\E<*>Z9(]2:HZUX.U^^^,NE>+X+:V.GV$'D-&T^)'XD&X#&/^6G0GM6E\6/
M"FJ^,_",>DZ2L'G?:4F9IY-BA5#>@.3S0 77CC7=.TO6=6OO"5PMC;1Q/8B*
M8227.\X^95!V8R">N/>G:)X]GOO'UUX3O+2!9TLUNXIX';&"!E'5AE6&[].@
MK0\9:=XAU;P-/8Z!<I8:M(B+N,FW R-P#@<'&>?Y5R?AOP#X@T;XAV6ORV^D
MI:+I8M)8K65QY;#KC*_.21G)QU/IR 59?C#K']@Z]JL7AVT\G1+U;:X+7I^<
M%]GR#9USZXP/6NAUKXF6VG:AX=M$6WMQK-K]J2XOI"D2 @%4) ."2<9/ ]\U
MR(^&?B?_ (0SQAI!BLA<:W?I=0-]H.U%$F\AOEZX&./6NBUOP5>ZSX1TS1-1
MT:TO8K;3$@#+<!);>Y5=H>-B.5.!D'T'!Y% %/QKJT#:]\/7UWP[')=W5Z!%
MB[939R[XP>@Q(,E2,XSM]ZDL/$OB34/CEJNC!+(VFG60583.ZJ$=HF,G"G=)
M@@8. .F>YIWWPY\1_8_A];QRV]VWAR4374DDQ7?\Z-L3(YP%P"<=JW;7PCK6
MF_&'4_%-NMI-IVI6B0N'E*R1%1&#A<$-GR^.1U]N0#G_  CXOT/P_I7CK6?[
M%%A]AU BY$5RTOVF4L5&W<!M!8].V:Z33OB%.-<\/Z;K-C#;_P!OV8N;22"4
ML(VQN\M\@<X(^8=^,=ZYJP^%FKW7A_QII6J-;6_]MW?VRUECE+^6P<NH88'?
M .,\9K5L_ VKZEXF\):CJ\4-K!X=LEB*I+YAN)@,97 X3@'GGMCO0!3N/BSK
M(@\6O;^'[1AX;N!%.[WC 2#>R94;,Y^7..F,\]CT\_CIWTOPQ<V.ES2/K^S8
MS!C':@J&)D*@^N.W0G(Q7&CX=>)?L/Q"A,-F'\27 EM?](XC'F.Q#_+Z-VST
MK1O_  ;XOD\*^#M(LWL?)TW8FIV<T["*Y";=H)5<LG#94CN.#B@!D_C;_A,_
MAIXZAGM(H;G2X;BVD,4GF12X5L.I(S@[3^E=#\(_^25>'_\ K@W_ *&U<QI/
MP]\2:9I'CVPD33Y#KS2&U>*9E +[ARI7Y0 WJ3QCWKMOA_HM]X<\#Z;H^HK&
M+JT1D8Q/N5OF)!!P/6@#S36O%&H_#GXBZ[=>(]$?4=#UET\J\10Q2,+@1C/!
M R04)'KWYZJ+QCX<\)?#VPO=!9+RSO;QH;"'=Y:K)+(S;&)R45,G/'  ]:VH
M+;7H8]5LM3TJTU;3KFYF>V03+N$;,2$D5QC'.<@G .,<5Q%Y\';Y/AQ;Z5IU
MW;QZO;:D=3C4L3"K$8\L$C.  O)')';- '1-\2FBM?%4?V:UN+_P_$MP?)G/
MDW,3+NRK8)!'0CGG'/H:#XX\4>);&RU'3_"<8T^YLY)1/+>@#S5SA ,9P2,
MX]^@YLZAI7B77O FK6-YIFF6.H7EH;:.&WFW*6(P79]HP/11G'J<\:W@/1[W
MP_X)TS2-02-;FTB\MS&^Y6Y)R#@>M &%X6^(MUXJ\*C4K73;>+4#J"V)L7G;
M*G(R2=N>%W/TZ*:S='UG2+/XP>,6N-)CM;RRL%FN]16Y=Q)$%C;_ %9&%^4K
MG']VMCP[X!&@_$+7]=24?8;XI-;VX/"3,&\QB/7DX/HY%9D7@+5+KXB^+=4O
MTA32==T]K%3'+F1!L1-Q&,<[3W[B@"]HOC[5]8GT"[C\.R-H^M-,$FA9G>U"
M$A6EXV@-C/7CU.*H2?&"T$$FJI!;G1XM3&GDF?\ TAE[SA,?<!/3J1SD=*L_
M#G0O&?A33H_#FH1Z9+I=K*QAOEF8NT98MM$>.N2>21C/0XJAX,\%^)_!E[J.
MCP6VEW>B7-TT]O>S2'S;<' (*;3N. .,@9YSS0!J6_Q&DU#Q?J>A6-K:&:PN
MTMVMYIBD\R;@))4&W!"@D[<Y(&<CI7H%>5^*OAYJ'B7Q#:ZBME;6>HV^HK*F
MK03[6:V5L@.F.9 , 8]!DCI7JE !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%07KW45G*]E!'/<JN8XI)3&K'T+8./RH GHKE_!?BY_%FC7-Y/8QZ?<V
MT\EO/:-.7>%T/(<[1CU[\5?\-ZM?ZUIWVZ[T^&SAD8_9]EP93+'D@/RBX##!
M'7@CI0!LT444 %%%% !1110 4444 %%%58-1M;F_NK*&57GM0GG*/X"P) /O
M@9QZ$>M %JBBB@ HHHH **** "BJ6IR:E';QG2X+>:8S()%GD* 1Y^<@@'D#
MH*MR%Q&QB56D .U6;:">V3@X_(T .HK \%^()_%'A:WU:YMH[:6669&BC8L%
MV2NG4XS]VM^@ HHHH ***JZAJ-KIEL+B[E6.,R)$">[.P50/<D@4 6J*** "
MBJO]HVO]J?V:)0;OR?/,8ZJF=H)],G./H:M4 %%%% !169!JRWNLW-C:*'2R
M(6ZF)X61ER(U]6P03Z CKGBE9^))+GQM?>'7T]H1;6B72SM(#Y@9BHPHZ#Y3
MU.?84 =!17.W'B.YFUR_TG1[**[GTZ%);HRS&-0S@E(UPIRQ )R>!D=<\-B\
M8V<_A[3_ !%$"='N0OFRMP]N2VW+#T#?*WIUY&< '244C%MA* %L< G )^M<
M_P"#_$%QXDTJZNKJVBMI8+V>U,<;EQ^[?;G) ST]!0!T-%%% !1110 4444
M%%5[Z\AT[3[F^N"1!;1--(0,D*H)/Z"L31-7US4Y;"[ETZU&D7]FMRLL<I\R
MW9@"J.#][(/48P0>.F0#HZ*JQ:C:SZE<Z?%*K7-LD<DR#^ /NVY]SM/'T]:M
M4 %%%% !115(2:E_;;1F"W_LO[.&$WF'S?.W<KMQC;MP<YZT 7:*RGU274-"
MN;S0/L]W<*9(X!*Y6-Y$8H06&>,J>:TXRYB0RA5DVC<%.0#WP: '4444 %%%
M<[HOB&ZU+Q7XAT:XM885THV_EO'(7,@E5FR<@8Z#CZ\F@#HJ*** "BBB@ HJ
M.<RBWD,"HTP0^6KG"EL< GL,U%ISWKZ=;/J,4,5Z8U,\<+%D5\<A2>HH LT4
M44 %%%5;G4;6TN[.UFE"SWDC1P)W<JC.?P 4\_3UH M4444 %%8VHZ\D&FZS
M-IXBNKG2T8RQ-(44,$W[2P!P=I';O4WAS4Y-:\,Z7JLL:QR7EI%<,BGA2ZAB
M!^= &G112$@ DD #J30 M%<QI7B:]\2QRWFA6-N^EK(T<5W=3LGVDJ<$HJJ?
MDR"-Q/..E:6B:K=:G]O2\T\V4]I<_9RGF;PXV(V]3@9!W\?3G!R  :M%%% !
M1110 4444 %%%% !1574=1M=*L9+R\E$4"8!8]R2  /<D@#ZUCW'B&Z@\?67
MAXVD/V:YLI;D7 D)?*,HQMQ@?>]3^% '14444 %%%% !117.WOB&ZM/'6E:#
M]DA-M?6TTPG\PEP8]O&W&!]X<Y/X4 =%117->-O%%QX1T1=3AT^.]3SHX61K
M@Q$%V"@CY6SR: .EHID1D,2F9463'S*C;@#[$@9_*GT %%%% !12.2J,P4L0
M,A1C)]N:PO"OB-_$EOJ4DEB;-[+4)K$QF0.28\9.0,=2?\: -ZBBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@#S#Q+I*6GQ6T:"TF>"U\4Q30ZK @^680('!]BPRA/]TGN<
MUO?$C4Y](\,VOV>1K>"XU"VM;F:,[3# [@.01]WCY<]MU;=_X:TK4M6M=4N[
M>1[VTS]GE%Q(IBR,': P R.#Z]ZO7UA::G8S6-];QW%K,NR2*1<JP]Z .)U.
MR71/B/X;M]*A6*RU:*ZAU"T1<1.L:!ED*]-P)P3U(.*Y-Y6'P),[2O\ :(-5
M*Q2%SO3_ $[;@'K]WCZ5ZOIV@:=I4HEMHI3*L?E+)//),R)UVJ78D#@<#T'I
M69-\/O"UP+Q9=)5TO)?.FC,LFPON#;E7=A22!G:!GOF@#=U&>*UTR[N)YS;P
MQ0N[S <QJ%)+?@.:\OTD&S\4> )K.-X;:_M[E7GDDS/?)Y&\/.!QDG##EB,]
MNE>IM:P/:-:-$C6[(8S&1E2N,8(],5@6W@#PO:?8C#I,8-DY>V+2.YCR,8!+
M'Y>?N]/:@#B=1T[5=6T?Q59+#<S>(FU=AI]]#NVQQ[D* 3#B,*F0RY'\7!)Y
MT-5\/V=Y\3=-TBXEO'L9=#G$L7VR7#XD0=2V1USP><#.:HP>$%N+NY;6? UZ
M^JSW$DLE[8:H(;:0LQ(;Y959>,?P$\9Y-=UIOA2SMI-.O[PS7.K6=LMN+MKB
M0DC R.N""1SD<]3S0!QMMI7_  E5WXHT1[VW@FTZ9;2U$T3R3VD(B3RY8V\P
M$$G<V[J3U)&!4T;RZKXKM?#E_J5G?Q1Z'#- ]W;%TO6+,LDH4.!NPJ>N,DC&
M375:QX&\-:_JD>I:GI44]XB[/-#LA9?1@I <>S9J77?!^@>)8[9-6TV.?[*?
MW#*S1M'[*R$$#@<9Q0 WP?IDNC: NF3:NVJM:RO&)V0@J,Y"<LV=N<9SVQVK
MAH$CT35_B=JFFV<7VZQ"36Q"9*N;4,3CODY)]:]/L;&UTRRALK*!(+:%=L<:
M# 4543P[I,>N3ZTMD@U"=0DLV3\X V@E<XSCC.,XXZ4 >>:K&MAX$\,>)M%=
MCJS2V1:=6)>]\TJKI(?X\[B>>A'&*[?QPI/@37V626-X]/GD1XI&1@RQL0<J
M0>HJ6Q\):)ILD36EF42&0RPPF:1HH7.<LD98HAY/W0,9/K1XNM[B\\':S9VE
MN]Q<W-E-!%&A +,Z%1R2 .30!YU<:.-(TOP'XCTRXNQJMS<V-M<LUP[BYAE0
M;T*DXP ,C XQ5[0=%M[G6?%U[*+RZN-*U<S64;7<I"NL*,!][YLDXP<C'%=3
MX3\-VMCH>BR7-E/'?6=JB".XG:00/L"ML4L57N,KV..E:NFZ!IND7=W=6,#Q
MS7C^9<,9G?S&_O$,2,]LT >83N;CX*6_C"UN&_X2&.-;O[>I_>/-YF&C)[H>
M4V=,8&.*W=9GC\(^.]-\1W<9CL-5M7M;I1DB&Y \Q& ]7 9..I KJH?".AV]
MPTL5D4#3_:3 )G\GS<YW^5NV;L\YV]>>M:-_IMGJD,<5[;I/'',DZ*_\+HP9
M6_ @4 >>^+=,;2_!^BNV^"[DUJUFG6*1E7?),"RD X91G:,] !6C920>(_B/
MXGTS5HUFATR&VCM+:3E0LB%GD _O$D#=U  QC)KJM7T/3M>@BAU*!IHXI%E1
M1*Z8<<AOE(Y!Z>E5M0\):)JFI0:E=6;&]@C\I;B.>2-RG]UBK NOLV10!Y?X
M:O7L_!O@K26N(X;&]U.^AFDN 71RLDQCC?YAD,V.,\D#.1D5Z%X6T%_#^JZO
M"-4CF@N&CGCT^*$QQV>00=F7; 8J3C@ @XJ?_A!?#!\/OH)T> Z8[^88"6/S
M9SN#9R#R>0>]7]$T#2_#EB;/2K1;>$MN;YF=F/3+,Q))P .3VH YJ90GQHMH
MQQ'/H,S2)_"["9!DCH3CC/I7$W)=OA]J!BN[B+R?%K0Q-%,P"Q_:E4+C." .
M@((%>KZMX9TC7+NUNM0M/-N+7=Y,BRO&RANJDJ1E3CD'(]JY+QGX,MXO"SZ;
MX>T,N;O4H;NYCA8#<!*'<DLPQQG 'X8H 9'HZ^%_BQH\6CR7(M-6L[EK^"2=
MY1NCVE93N).XE@,_XFK7Q5L[:ZT/2&GA20IK-FJEAG :4!OS'%=7I^CV-E.U
MY##+]IEC"-+<3/+($'(7<[$@9.< XS3]7T?3]=TY[#4[9;BV<JQ0DKR#D$$$
M$$$=0: .0A%MJ/Q,O_#U];QMIUCI<4EG9NN8VW,0\FT\$C"J#VYQU-6?AU->
M+!KVFSS2SVNFZM-:V<DK%F\H!2$+'D[2Q&3Z8[5N7/A?1[I[.1[5HYK-2D$T
M$SQ2(IZC>C!B#W!/-:%C8VNFVBVMG"L4*DD*O<DY))ZDDDDD\DG- '"1Z?9K
M\:=5N!9Q/,NBP3KQR9/-<9^N !^ K*T#3Y?%'A/1?$PUVUL[^*9;BXO([9C,
M7#8>!SYG*DG;MQC&,#I7HMQX?TJZUN#69K-'U""/RDFW$';G< 0#@X/(R#@\
MBL^#P'X8M=??6X-(ACOWD\TN&;;O_O[,[=WOC- '"2Z+:WX^)0NI+J46<ADM
M@UU(?*<6P<,.>H/3.<=L9->C>$[F:]\&Z'=7$ADGFT^"21VZLQC4DG\335\)
MZ,HU("VE']IY^V?Z3+^^XQS\WIQQVXZ5HZ?I]MI6GP6-G&8[:! D2%V;:HX
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
M0I(8,=0A^;B@#URBO&[[Q#]D\-ZA;II,V@7/]M6<.M6Z.-D,4FP,\;K@!65
M,C'WCZYKI=3T]-&^)7AN+1H%MK;5(+J'4+>W&Q'2- R.0N &#$#=U^8#- '?
MT5X2-+M8/@_)KB"3^T['5V-K<M(Q:'_3MN%R>,@G/KGFNE\91V6H3>-C @N[
MJQTM?/DNV&RR(B=T$ QG><AB<@9V\G&* .NO?$%Y:>/-*T+[/!]DOK:>;SMQ
M,@,>WC'0#YO?\*L^+=8NM \*:EJ]G!#/+9P-,$E<JI"C)Z#]./K7"26L.O\
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
MW_3/! "]!E<#@4L3_8O&WB[0P99TU"UMI;:V:9OO.LD;X.<JORAB1TP<<XH
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
MZOHGP^EUJ*.]F76IK1;BX0.TT"B8+N)Z@[1]< U[9&J)$BQA5C4 *%Z =L4
M.HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH *K:A86NJ6$UC>Q":VF7;)&20&'H<=JLT4
M<QI_P[\(Z5J$-_8Z#:074#;HY5!RI]1DUJ7GA_2K^Z:YNK-))'"K)\Q"RA3E
M0Z@X< ]-P.*T5=6^ZP/ /![4(Z2#*,K#.,@YH Q-;\&^'?$=S'<:QI4-Y+&F
MQ&E).U<YP!GBK6B>'M(\-VDEKH]A#9P2/YCI$.&; &3^ %:/F(6*AUW#&1GD
M4Z@"JFFV::I)J2VZ"]EB6%YOXF122%^@)/YU%K&B:;K]D+/5+2.Z@#B15?/R
ML.C CD'W%+>'4AJ%A]C:S%F787@FW>85VG;Y>.,[NN>U7"Z@X+ '.,9H R+?
MPGX?M)[J:#2+5)+N$07!"?ZR/&-I_#KZ]ZN:7I-AHE@ECIMLEM;)]U$_Q/)[
M?E5O>F_9N7?C.W/.*=0!S]SX'\,7DU]+<:-:R/?'=<D@_.W][&>&XZC!JU#X
M9TBWU#[?!:>5="#[,)(Y'4B+L@P>%[X]>>M:U-+J'"%@&/09Y- '-W%I=^%K
M.WM/"?AZ*ZCGF8S*][Y20$\[\-DD$]0O/UK6T/2X]%T6UT^,J?*7YV5=H=R=
MSMCMEB3CWK0HH SM3T+3=8EMI+^W\Y[602P'S&7RW'1A@C!]^M0:]X5T/Q/#
M#%K.FPW@A;=$7R&0]\,"".@[]JM?VM9G6QHZRAKW[.;EHQ_ FX*"?3)/'T-7
M-ZAPFX;B,A<\XH Q[KPEH%[8V-E/I5N;>Q.ZU15V^2?]G&"/?U[TQ?!GAR-9
MUBTFWB$\RSN8LH?,7[K J1M([8QZUNTW>FX+N7)S@9ZXZT 9ZZ!I8LKJS:S2
M6"\_X^1.3*9N /G+$EN !R> !26'A_3--R;6!U<Q>2)'F=W6/^XK,257V! K
M19U7[S ?4T%U5E4L S= 3R: ,/\ X0SP_P#V0^D_V</[/>3S6MO-?87SNSC/
MKS]>:=<^#O#UY?27MUI4$]S+"()9),L9$ P-V3\Q XR>?>MRJFI_;QIES_99
MMA?>6?(-UN\K=VW;><?2@#//A#0?LEC;)IT<26 (M6A9HWASUVNI##/?GGO5
MB3P_I4VCR:2]FAL9<^;""0),G)+$'+$GKGKWJ^CLELCSM&&"@NRG"Y[XSVKG
MO">OWVMW.O0WT5NAT[4FM(_(SAD"(P))ZGYCZ4 6M3\'Z!K.E6^F:CID5S:6
MV/(21F)CQ_=;.X>G6M'3M.L])L(K'3[:.VM81A(HQ@#O_/G-6$=) 2C*P!P2
M#GFE9E12SL%4=23@"@#.DT#2I=9_MA[&+^T?*\K[0,A]O/<=^3@]1FJG_"&Z
M =(FTDZ<IT^:3S9;<R/L=\YR1GGGGZ\UN;EV[MPVXSG/% 96) 8$KU /2@#-
M?P]IDFHVNH/ [WEJI2"9IG+(IZ@<]#W]>]1P^%]%@AOX5L$:+4"6NTD9G6<G
MJ6#$Y/OUK7HH Y_3?!'AK2-.O-/L='MX;6\79<(,GS%Y^4DDG')XSCDUHV.B
MV&G3--;PMYQ01>9+*\K!!R%!<DA<]AQ5U71B0K*2#@@'I3J ,[4="TW5KFUN
M+ZW,LUHV^!O,9?+;^\N",'WZU7U[PGH/B=81K6F0W9@.8F?(9/7# @X]JUV=
M4QN8+N.!DXR:YR77[Z+XBV^@-%;"PFTV2[$G/F;E=5P>P'S&@"YJ/A+0-5TJ
MVTN\TJWDLK4@V\078(L=-I7!7\*P/#/AV6P\4^*UFT7[/H^H"W2W5C&R.B1;
M'!4,3R<]1SGFNW#!E#*00>01WI&=$(#,H)Z GK0!@6G@;PS8FT,&CVX-HQ>
MOERA(QQN)Z#H.W;%.F\$>&;C7QKLNC6K:F&#^>5/+#HQ'0D>I&:W7=(P"[*H
M)QDG'-*6"XR0,^M &5)X9TB:ZGN)+3<UQ(LLZ>:_ERNN,,Z9VL1@=1V%2MH.
ME/K:ZTUC"=26/RQ<8^;;S@?J>>O-: (8 @@@\@BJ6K'4A8DZ2UFMT)$YO-WE
M[-PW_=YSMSCWQ0!G6/@CPSINMOK-EHUK#J#DL9D4\$]2!T4G)Y '4TEYX'\-
M7]Y>75SI,+RWJ[;D@LJR\8RR@X)]\9]ZWG=(QEV"CIDG%*S*BEF8*HZDG %
M$-G9VVGVD5I9P1P6\2[8XXUPJCT K-C\*:'%=27$>GHIDE\]XU=A$TF<[S'G
M86SSNQG/-:Y=53>6 7&=Q/&*4$$9!!^E ',ZQ#J^N:H^B3:/"FA%HI9+][E6
M,P4AS&(L9!+ #).,9/7%=/36D1"H9U4L< $XR:J7&K6=MJMGIDDH^V7@=HHA
MUVH,LQ]N@^I% $5SX?TJ[U=-6FLHVU".+R5N.0X7KC(]"20>H[53_P"$,\/_
M -DMI7]GC^SVD\UK;S7V%\[LXW>O/UYK>IJ2)("4=6 ."5.>: ,/6?!7ASQ#
M+;2ZMI4-W+;+MCDD+;POH6SEA['/4UMQ11P1)%$BQQHH5$48"@<  =A2[T)
MWKDYP,]<=:=0!D:CX8T?5+]+^YL\7J+L%S!*\,NWTWH0Q'MFKEOIEE:V<EI%
M;)Y$F?,5_G\S(P=Q.2Q(XYS5NJ-IJUG?W]]96LHDFL65)\<A'89"_7&"?K0!
M7TWPUI&DO&]E:>685*0AI'<0J>HC#$A ?1<4Q?"NC)%?QK9D)J!)NQYS_OR>
M"6^;G(X^G%6]);4?[*A.L-9F_P"1,;/=Y6=QQMW<],=>^:N;T^;YE^7[W/3Z
MT 9#>%=%>&PB:S)33R#:+YS_ +@C@;?FXP.![<5S7ASPHTNL^*)M:TF>*+4+
M\S1;K@;)H=BJ%=4<AN0W# C!]S7>@AE# @@\@BD1TD7<C*R^H.10!EW_ (9T
M35+VUO+W38)KBU4I"[+]U3_#QP5]CD563P3X;BMX+>+2HHXH+C[5$D;,H27.
M=XP?O#)P>V>*W4='&496'J#FJ=UJUG::G8Z=+*!=WI<0Q#J0JEF;Z#&,^I%
M%&]TJ+3'O]<TG2OMFM/%M"-=&,SXZ(68D >F1@4>'K&[$MYJ^IVD5KJ-^4WP
M1N)/)C1<(A< ;CDL2?\ :QR!FJOA[Q#>ZCX@\2:=?QVT2:7<Q11-$3\P>,/\
MQ/?D#@"ND=TC7<[*JCNQP* ,73O#5I8>)]2UR&".&:]14D\MB?-(_C;/&>@
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
MU]SYMR%)WC(RN=JGI\OR].*N^)+0^%M-\1:_HFJPB]N-)S]ET^ 1Q !U'VC
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
MS?G26UC:V=C'96UO'%:QIL2)5PH7TQ0!Y[K]E9V'_"$:KX:BCBGFU&WMPT
M^T6LB$R!\?>&T;LG.",UDM#:0^"/BI \<"1QW]VT:$ !6,";2!V.>GO7IFG^
M'-'TJ59+'3X8&0,(PH.(@>H0'A >X7%0W7A'P]>W]S?7.D6LMU=1&*>5DYD4
MKMY]]I(SUQQ0!R,YSK_PM.<YAG_])*S(OL?B+P5\0;O5H8IM3@GOHF$H!>W2
M-#Y*KGE0 ,C'4DGKFO1O^$:T3?8NNF6R&P!%IL3;Y /78!]W/?'6H;WP?X=U
M&_FOKS1[6:YGC\N61DYD7&/F]3CH3R* #P@%?P-H((!4Z;;\=B/+6O,+N*TC
M^$_Q%B:.%4AUF^$2$ !#N7;M'8\\8KV*RL;33;..TL;:*VMHAM2*) JJ/8"L
MNX\'>'+N\N[NXT:TDGO%VW#M'S(,8Y]\<$]30!R-SI-AJ/Q4T>.[MTGBF\/2
M&6-^4EQ)& &'1A['CI7+WEI"OPMUJT4%(;#Q0T%HJL1Y,?VM!M7T&&/YUZ]'
MX<T:*]AO(M.@BN((O)BDC7:8X_[JXZ+[#BH&\'^'GM);1M)MFMII?/DB()1Y
M/[Y'0M[]: ./URPTSP[XMT'2;:.ST_2]3DNIY!<1F2&6[Q&$W L!G;NQD]>V
M>:ANM)TC0+/^RWU"6^6\UV%X+"WVPVZ3ME_);.X+$<;BO)Z8'(SZ!JF@Z5K6
MFC3M3L8;RT&"(YEW8(Z$$\@^_6J[>$O#SZ''HK:/9_V;$P=+?RQM5ASN'OUY
MZ\T >?6-G+<7'Q"T:*_M-/:2ZM%B,2GR$EDC3*[<]&;"MZY/ Z54U?7-2TKP
MWXOB.AIH_B6&QMWG?3V!AF@\QD\Z,@ J0K2=>1M'IQZ7_P (AX=_TG&BV(^U
M1I%-B$#>B8VJ?88'Y#TJY:Z/86:S"&V4F=0LK2$R-(H! 5BQ)( )P.@R: .(
M\0V-IINK^"M0\-0Q0R7-^EJXM@ )[1XV9]V/O !0P)Z'FN6GT'2YO _Q(N9+
M1'FLM4O7M7;),#+'&P*?W3GN.< #H*]:T[P[I&DNKV-A%"44I'C)$:GJJ _<
M!XX7 XJ,>%=#%K=VPTV'R+QS)<Q\[9F/4N,_,3W)ZT <K<-9:MXCTVVE1;O4
M1H7G2K>D&VAB=@#)LQEI"01P0-N<D<9Y/3%74_ OPP@NY&F5]2,;_O""5"3
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
M3>'M)TWPI=16=[]M0Z_:S?*%5+6225-Z1%?N\$$@'C/O0!ZZ+F B4B>/$/\
MK#O'R=^?2JFC:S9:]IJ:AI\HEMY&8(P/W@K%<_0XR/:N-M=)T[3_ (P7%C9V
M-O!:77A[S)X(XP$E87& S+T)P2,FI_@_%:Q_#72&ACA6=XF,I0 ,V)' +8Y/
M0CGWH [>:XAMD#SS1Q*3@,[!1GTYIS2(B[G=57@9)P.>E<-8.FH_%?Q+I^KP
MQRK%8VO]GQ3*&4P,&\XJ#QRY )]@.U<3<61?P"EM<@R6EEXN6VTR5B=RVPN
MH"MUQ]X @] /2@#VZ.6.52T;JX!*DJ<X(ZBF_:8-I;SH\#@G<*K:5HVFZ';R
M6^EV4-G#)*9FCA7:I<XR<?@*\SU31K>T\0^)/!J6<7V?Q1&MW9?NOEBD^Y.W
MU0 2 ?AWH ]7\Z+Y?WB?-]WYAS]*PYM;?P_H>I:GXAO+(Q6TTA0VP*_N\_(A
M#'F3H/<D5S?@.7_A([:P;4+.-9] @>PG5HQ@70.Q\<=D0'CC$WM7(W]I;)\&
M?&L:P1".WURY\H;1B,"X4<>G''TH ])U/Q!>V?CGP_I436K:=J45RTC;274Q
M(#PV<8^;T[5TL4L<\8DAD22-NC(P(/XBO/\ Q'I^FW/Q#\$V(M[=K+R]1!@1
M0(S\B$@J.",]0>O>K7PZABLKSQ?8VT:Q6MOK<@AA086,&.,D*.PR3P* .TGN
M8+90UQ/'$K' ,CA<GTYI[2(NW<ZC<<+D]3Z"N#\0OI]YXRU"V58FO8-%/VA[
MUMT$4#.Q^6/C<Q(Y.0  O7I7):?;VFI^'_A4URJ3R&7R)&)RQ3R'.PGKC@<>
ME 'LRW5N\7F)/$T8.W<'!&?3-.,T056,B;6Z'<,&O.-%\.Z5>^)OB#X;-G#'
MI4OV3%M$@5(V> [F51PIR <CN*;X.>76#IWAO4K9#/X6D9;PF/"O(@V6[+[,
MA,GU4>M 'I;,%4LQ 4#))[5$EY:R1B1+F%D/1E<$?G^%8WC.R?4?#,UI%?QV
M4\LT(AEE3<AD$JE48=U9@%(]#7G'B"ZEO/ WCNQU;0K>PUNUMH9;HVQ#P3@Y
MV2IQD'"D'/(P* /8FD7)C21!+C*@G/Z5S?@SQ'<ZWI,TVJ/:QW2W]Q:(L645
MQ&Y48!))/%8NIRVC_%'P.T;PF5K&\)*D;BIC3;GVZX_&N5B\/:)?_#'Q7J5Y
M:Q&_M[[4'MKO_EK%(LK&,(W5<MC@=2?>@#V>6Y@@9%FFCC+\*'8#=],]:)KF
M"WC$D\T<2$X#.P4'\37ENL0:Y!:2ZM):V6MI_8\$.N:5<G9-'A&9GB8\<[F)
M!ZE>.>D\6IV6L^-I;2^NH;:UNM&M9M-BOH5821.&,@ ;@-RH(')"CTH ].>1
M(XS([JJ 9+,< #ZU&MU;L@=;B(H0"&#C!!Z?R->7Z<EAI/B'PCX<FU)[[0DM
MKLVDMV05GN%D 5<]&V*6"_ACM6;JEK9'2_BY%:0P&!!&ZK&H*JPMP6(QP#NW
M'ZYH ]F\V/>$WKO(R%SR:8;F!;A8&FC$S#*QEAN(]0.M>>7TMH_CSX<,CPF5
MK6Z.01N*FW&/PZX_&L32H-.\4^$9VU?6TLM5M=0DENBD:"[@N$E)7:Q^;)&%
M  Z84=,4 >O27,$(<RSQH$ +;G VYZ9],U3U'7-/TN[L+6ZG1)[^4Q0)D98A
M2Q/T '7W'K7G]OX?TC4/'/Q"BN]/MIXQ!:.(Y$!4,T#Y8+T#?[77D^IK*L(K
M>]T?X3S7T44Y<F-WF4-N46[X4D]1[4 >S9R,BHH[F"65XHYHWDC^^BL"5^H[
M5B^,;F[M? >LW.DD_:8["1X&BZCY#@KCN!R*Y?2--\/:K=>&]:LM9@9EC:*"
M"UBC4SHZ?/'*!DD  D@]"#WH ]"-U;JRJ9X@68HH+CEAU ]_:E6>)Y7B25&D
M3&] P)7/3([5X7<:/IR?!/7[]+.$7=IJ-P;:<+\\&VZXV-U7\,5VUYI6GZ3\
M6/#8L+2&W^V6%ZET8U ,X'ED;SU8Y).3D\T =ZUS CJC3QAF;8H+C);T'O7/
M7VN:A:_$+2=$ MS87MI/,3L/F!H]O?.,?-Z5YM;^&-!O/AEXPN[BUA%S8WVH
MM:SC[]NT;ED"'^'D#@8SFNIA:\;QWX#;4=WVXZ)<&XW=?,VP[L_CF@#T%KB!
M)U@::-9G&5C+ ,1["G>=%YGE^8F_^[N&?RKR.P2WUKX/>([W554:U!)>RW4S
M<2P7,;,T>#U4J!& !VP*OZK'-H,7A7Q_J%NJWD%K%:ZXWE_-Y<JJ"Y[Y23'3
ML2* /3#/" Q,J )PQW#Y?K2"Y@)E GCS%_K/G'R?7TKRWQEI,!^&\FJ75HD=
M_?ZG;7LA*A7C+SQA5R.05CVJ?<'UJ_/X>T9/C!:VB:;;+;7&B2R3P",".9EF
M3:SKT<C)Y;/Z4 >BI+')$)8W5HR,AU.01ZYIL5S!/$989HY(QD%T<$#'N*\8
M2\71O"-W;AQ;:-!XSFM;CY,QP6N\D KTV;]N1TP<=ZVM?T'1X](\87T&I17D
MMWH<LDMM B"$%$/ERD+T?T/?!]* /3DN())!&DT;.5#A0P)VGOCT]ZI:9KFG
MZO<7\-E<)*UC<&VE*D$;PJL0/7&\ ^X(KSF'3+'3M4^&=[9VT4-U<HT<\RCY
MYE-H3AVZL,@8STQQ6M\/XM-L+_QE,T=I;M%KMP Y"H4C$41(SV7J?2@#T&BF
M0S17$*30R))%(H9'1@RL#T((ZBGT %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %0W5K;WUK):W<$<]O*NV2*50RN/0@\$5-10
M!2LM(T_3BYL[.*$NH1BJ\E1T7/H,G Z#-5],\,:%HMU/<Z9I%E9SS\2R00*A
M8=<9 Z>U:M% &+%X/\-0(J1:#IJ*LXN %M4 $@SANG49./3-7++1=+TVXGN+
M'3[6VFN#F:2&)5:0^K$=?QJ]10!E6WAG0[/5Y=6MM(LHM1ESON4@42'/7G'4
M]_6@>&="6*ZC&CV(CNSFY40+B8_[8Q\WXUJT4 0VMI;V-K':VD$<%O$-J11J
M%51Z #H*K6VAZ59W\M]:Z;:PW<W,L\<2J[_[S 9/XU?HH S(/#VC6MZUY!IE
MK'<%S*76(#YSP6'HQ[GJ:EAT72[?4I=2AT^UCOIAB2Y2)1(_U;J:O44 ,FAB
MN('AGC26*12KHZAE8'J"#U%9=AX5T#2[*YL['1K&WMKG_7Q1P*%E]F&.1[&M
M>B@#*;PQH+6MM;-HU@;>V;?!$;==L3>JC&%/N*@U70;(VVHW=EI5NVJ7%L\(
MF1$61\J0 7...?6MRB@#E/!/A>#1?#>D17FF00ZE9VZQ.XVM\X7#,I'3=W/!
M/>MZ'1],M]2EU&&PMH[Z88EN$B D<>[=35VB@#,M?#VC6-V;JUTRUAGW,X=(
M@,,WWF'H3W(ZUFQVFN:IX@#:O:64&F6%RTUGY4ID>X."J,X( 7 9CCGYL>G/
M2T4 4KS1]-U"Z@NKRPMKBXMSF&66(,T9_P!DGI^%1#P_HRS74RZ79B6[&VY<
M0KNF'HYQ\WXUI44 94OAC09]'&D2:/8MIP.X6OD+Y:GU"XP#]*#X9T)M,@TU
MM'L6L8#NBMS IC0]<A<8S[UJT4 4%T72TU)=173K47RIY8N1$/,"?W=W7'M3
M]/TC3=)65=.L+:T69S)(((@F]CW..IJY10!0O]%TS5)89;ZQ@GEASY<CI\R
M]0#U /<=Z2ZT'2+ZS@L[O2[.>U@P889(%9(\=-JD8&/:M"B@!$54144 *HP
M.PJ-K:![J.Y>%&GB5DCD*_,JMC< >V=J_D*EHH ABM+> 2B&%$$SF23:N-['
MJ3ZDU3A\.Z+;V5U90Z391VMV2;B%8%"2D]2PQ@Y]ZTJ* ,N/PWH<4MI)'I%B
MDEFNVV98%!A'HAQ\OX5/8Z/INF2SRV-A;6TEPVZ9X8@ID/JQ'4_6KM% &?=Z
M%I%_J,&H7>F6D][ -L4\L*LZ#K@$C-5X_"GAZ*.VCCT33T2U8O;JMN@$3'DE
M>.#[BMBB@##U#3/[,M[[4O#NC:>^M3!<F3$7G\C.]P,G SC-3:#I]S:0W-UJ
M A&HWTOG7 A)*(=H544D D*J@9P,G)P,UK44 5[ZPL]3M&M+^UAN;=R"T4R!
ME)!R.#Z$ _A44.CZ=!;3VT=E#Y-P")U9-WF@C'S9^]QQSVXJ[10!CVGA/P]8
M&V-IHEA";5F: K N8V;&2O'!.T<]>!4B^'-%6_:^72[1;EG$K2"( LXZ.?5O
M?K6I10!FW>@:1?73W-UIUM+.Z".21D&70=%;^\OL>*35O#FBZ]'#'JVE6=ZL
M)S&)X0VSZ9Z5IT4 9NH^']'U;3XK#4-+M+FTBP8X985*I@8&T=N..*P/#7A^
M>P\1>*'N=,BATO4FA^SQ@H5\M(A&59 > <<#ICTKL:* ,:T\(^';$6XM=#T^
M+[,[20[;=?W;-C+#C@\#GVJ1_#&A2:TNLOH]DVIKR+HP+YF?7..OOUK5HH S
M?^$?T<7%U<#2[,378VW,GDKNF'HYQ\WXTQ_#&@R:=#ISZ-8-90R"2*W-NIC1
MAW"XP#U_.M6B@ P,8QQZ5DZ?X6T#2;JXNM/T>QM9[@$2R0P*K,#U&0.GM6M1
M0!D?\(MX?%A)8?V)I_V.5_,>W^SIY;-ZE<8)]ZF?0])^U07O]EVKW5JN()/*
M7?&/16/3\Q6C10!P_@SPB+&#4&UG2(%N9M3FO(V)60,KN73.#]Y?<<=C75S:
M/IEQJ46HS6%M)?0C$=PT0,B#T#=15VB@#,D\/:--J#7\FF6K73E6>4Q#+E?N
MEO4CL3R*S=8M-<U?5&TI[2R7P_(L;37)E)E< Y:/9C&&P!G/0GOTZ6B@"GJ.
ME:?J\ @U*QM[R%6#".>,.H(Z'![U&="TDWZ7YTVU-Y&GEI<&)?,5?[H;KCVK
M0HH S8?#VBV]K=6L.DV4=O=DFXB6!0LQ/4L,88_6HK3PKH%CI<VF6NC6,5C.
M<RVZP+LD/^T,<_C6O10!F'PYHA^R9TFR/V,8MOW"_N/]SCY?PIS:!H[7%[<-
MI=F9[Z,Q74GDKNG0C!5SC)&.QK1HH BM;6"RM(;6UA2&WA01QQH,*B@8  ]*
MEHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M ***1F5%+,P4#J2<4 +147VF#_GO'_WV*D5E90RD$'H0: %HHHH **** "BB
MB@ HIDTT5O&9)I$CC'5G8 #\321SPS1H\4J.C_=96!#?2@"2BBB@ HHHH **
M** "BBB@ HIC2QI(D;R(KOG8I;!;'7 [T^@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110!B^(?">B^*5MEUBU>X6V?S(0)Y(PK_ -[Y6'-;"*$14!)"C +$D_B3
MUIU% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 445!>R7,-G+):6ZW$ZKE(6D\L.?3=@XH GHKFO!OBS_A+
MM%GO_L0LI89WMY+62;<\3H<%7^4;3T/?@U=\.:Q=ZYIYO9]/2T@=F$!$_F&5
M 2 X^485L9'<@@\4 ;%%%% !1110 4444 %%%% !115>*]MIKVXLXY5:>W"&
M5!_!NR5S[X&<?3UH L4444 %%%% !1110 4444 %%%% !15>TO;:_21[:594
MCE>%F7H'4X8?@01^%6* "BBB@ HHHH **** "BBB@ HKGYO$4\/CNU\.M9)Y
M-Q9272W(ER?D95*[<<?>ZY-2^+]=F\,^%K_68+1+MK2,R&)I?+R/K@_E0!MT
M5';RF:VBE(P70-CTR,U)0 4444 %%4HYM0.LS0/9Q+IRPJT=R)LNTA)W*4QP
M ,'.>]8GB3Q>NC^&1K>GP17]O]I6W8^<4 S*(B1P=V&^GUH ZBBBJ]Y?6UA"
MLMU*L:/*D2D]W=@JC\20* +%%<^GB*<^/G\-/9(L0TXWR7(ER6_>!-I7 QW/
M4]JZ"@ HHK%UWQ);Z+/8V2PR7>I7[F.TM(B TF!EF)/"JHY)_GTH VJ*Y^YU
MO5M-:T^WZ+$8KFYBM_,M+LRB(NP4%]R(0.>V><=.M=!0 4444 %%%% !1110
M 4444 %%%% !117/Z5XBGU#Q=KFAS6:0C3$@=)5EW^:)0QY&!MQMZ<T =!11
M7/\ C+Q%/X6\//JL-FET$ECC=&EV8#NJ C@YP6''% '045S]WXBGM?&^G>'S
M9H8;VVFG6Y\WD&/;E=N/]H<YKH* "BBN6N?$^I3W>I1:#I,>HC3+E+>Y1KCR
MG=BJLWEY&WY0PZD9Y';D ZFBJ6HS:A";3[!9Q7(>X5+CS)O+\J(YW..#N(X^
M7OFI4OK:2_FL4E4W,,:2R1CJJL6"D_78WY4 6**** "BHYYH[>"2>5ML<:EW
M8]@!DFN./CB]AT>+Q%<:.O\ PCTUB][]HCN 98@%W(KH0,EP0!M)P>#QS0!V
MM%<Q%JWBMM8MK=O#UHUA-LD>\2^XB0@[E*E02P..G!![5/8^(I[KQIJGA^6S
M2);*VBN$G67<9 Y8<C VXV^IH Z"BJ6E3:A<6(DU.SBM+G>X,4<WF#:&(4[L
M#J,'\:M3316\$D\TBQQ1J7=V. J@9))H ?14=O/'=6T5Q"VZ*5 Z'&,@C(J2
M@ HHK.OM52VU"UTV%!-?7(9UCS@)&N-SL>P!('N2!ZD &C15*WFU!]5O8I[.
M*.QC6,VTZS;FE)!W@KCY<''<YS5V@ HHKGY?$4\7CRV\.-9IY,]C)=K<B7)^
M5E7;MQQ][KDT =!112.6",4 +8X!. 3]: %HKE-'\3ZKKOA:YU*QTB W\5Y)
M;"T>ZPIV2[&._;Z GIVKJZ "BBB@ HJEJDVH06JOIMG%=SF5%:.2;RP$+ ,V
M<'D#)QWJ4WML-06P\U?M31&81]]@(&3Z<D?KZ4 6**** "BBB@ HK*\2ZM-H
M7AO4=6AM5N6LK=[@Q-)Y>Y54L><'G ]*M:7>'4=(LKUD"&X@28J#G;N4''ZT
M 6Z*Y_Q!XG32O#6L:M811WS:6'\Z(R[!N50S#=@\@$?RK8L+DWFG6UT5"F:)
M9"H.<9 ./UH L4452CFU!M8GADLXET]84:*Y$V6=R3N4IC@ 8YSWH NT444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
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
MKW'QC\5>?G-K86<5OGLC;W;'_ JZW3M*M-+6?[,C;[B3S9Y78L\KX RQ/7@
M>@  %9UWI#VWBJ'Q#9Q[W>V^QWD0."\>[<CKZLISQW#'N " <S:B5_&'Q#M3
M=WGE)9VCQ#[5)F(F.5CL.<KSS@8K L(I;/PQ\.-=2^OGU"[O;2VGDDNG99(I
M$;<A3.W' YQG(SG/->D_\(II O\ 4[X17 N=3C$=VXNY1YB@$ 8W87 ) QC&
M34'_  A&@_V;ING_ &:X%KIDJS6<8O)AY3K]T@[\G&3C.: .<TV!?&T7BI+S
M4+BUOK35);2"6&4JUDD>W8R#/&<%B>^2,X Q8FV3?%G0_P![YZ/H%Q^\/_+0
M&2/GCUK7O_ 7AS4M;;5[BQ;[7( L_ESNB3@=!(JD!_Q!SWS6C+X>TV;7X=<>
M*7^T((C#'(+B0*J$Y*[ VW!(';M0!Y==W5TOP7\37 O+H7%IJEPD$WGOOC"W
M(4 -G.,<8]*ZZ*Y77_B5K.C:@6-IIEE;M;VV\A9&DW%Y"!U(PJ@]N<<FKUU\
M//#5Y_:*SV<S0ZA(9KB#[5*(C(2"SA VU6..6 !Z^IJU?>#=%U"^M+Z2*XBO
M+6/R8[FWNI8I3'_<9U8%A]2: /, DEC\$M6>VNKJ*6VUN14D2X=68&]5#N(/
MS9!.<YZUU^I6(U#XOQV$]W?"RFT*266WCNY$1F$R+T!^7C&=N,XY[YV?^$ \
M-_V'/HWV*;^S[B?[1+"+N4!I-V[.0V?O8.!QP*OGPUIAUM-9*7']H);_ &59
MOM4O^JSG;C=CJ,],YYH \ZM+O5X_AG=16ES<RI8Z\]H_[TF=[1;G:8T;.XL5
M.T8.3T'.*Z71-,N&^(%]?VJW\&A):1B*&1Y88C<G<'*Q$@$;-N25QNZ<YJ#Q
M+X1MK'0$L=*T.YO]/GU$7>H6\=Z_G]V+Q%W&&W[2<,#C..>0[POH MM7@O=.
MM?$&FVJ!A/'JE\9%F!4@*(R[X(.#N..F!G)P 3_$YI8?#ME/#<7$,B:G:+F*
M9D#*TR@A@#AACL<U4CTVU;XY74I1]_\ 8<,^1(PR_GL,]>F ..E=;K>@:=XA
MM([74XI)88Y%E54G>/YU.5/R$9P>:9/X:TJYUNVUF6!S?V\0A243.-R [@&
M.' ;D;@>>: .%\/WUQIOB/2=/\1VD\=]++(;36+:8R6VIAD8@/S\K8.0".-O
M&!76>-IX8M&MHIKVYMOM%[!$D=J/WETQ<'R0<C&\ @G(P,YXJS8>%-*TXV?D
MQSO'8DFTCFN'E6 D%<J&)YP2!Z D#%6=<T#3O$=@MEJ<#2Q)*LR%)&C>.1?N
MLK*001Z@T ><[[R%/B98EYK**SL8KFV@MKM\6[M;NQ*,,$9*@D#C.>M/M('T
MV]^'.HPWEZUSJ*+!=F6Y=UF0VQ8 J3M&" 1@#\Z['_A _#OF7\GV.;?J$ M[
MIOM<N9D (^8[LEB"06ZD$\\FIV\'Z*RZ4I@N,:3C[%_IDW[K VC^+GCCG/'%
M ' 3NGBOX:>-=9OWE:]B-_&BB5E^S+$K!8P > 0 6_O;CG->C^&P&\)Z0IS@
MV,(X./\ EF*SKOP#X>O+K49WMIX_[21EO(H+J2..<D8+,BL%+8/7'OUK=T^P
MMM+L(+&T0I;P($C0NS;5'098DT >16>G6MK\+?B&\*,I6[U.%1O8@(#P,$X_
M'K6U;VIT?QCX%DM;J[)U.UGBO!)<.ZRA8 Z_*3M7!'&T"NJD\#^'Y8]4C:SE
M$6J,SW<:W4JJY;&_ #87=@9VXS@9J=O">D/=:7<M%<&;2E*V;&[E_= C:?XO
MFR..<\4 <'IUOJ?C#PH->BUF#3M1BNY)7NRTA:V\N0YB9=P79L&-O0@Y.2<G
M>L8WE^*WB&R>ZNS;OI=NX3[3)B-F=P2G/R=!]W%:?_"O_#7]OR:TNGE;J603
M2JDSB*20'(=HP=I.>>1UYZU?'AG2QK-UJZQW"W]U$(995NI1E!T  ; QDXP!
MC- ')?"C2UN/".B^(;J]O[C4);62)VFNG9&4R$_<)QD8Z]>37HE9NAZ%IWAS
M2X]-TN%X;.+.R)IGDVY.3@N20,D\5I4 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !117/>.]4O=%\"ZUJ6G
M@_:[>U9HR!G:>F[\.OX4 =#17FFN0)HUEX/UK07?[3<7]K;S.KD_;89A\WF?
MWS_$&.2,$U63Y?#OQ0B+L$M9[AH!N/[DBV5EV_W<-R,4 >ESZA:VUY:6DLJK
M<7;,L,?=MJEF/T '7W'K5FO*?L%K?>*OAK-=0K-)/I$_FNY)+[88B,GV))_$
MU)?7$^C>(VFUW3_M6F7.K*UIKEG)E[=O, 6"9>H0,-G''MF@#T6WDU%M5O([
MBW@2P58_LTJ2$O(2#OW+C P<8YYK+\4>(;G0)]$6&TBFBU'4H;&1VE*F/?GY
M@N.> >X[=:Y&YU*[T+Q#\3+ZT>666STZUN($ED:0(_ERG@$G SS@<55UC3;
M:)\/=5@)ENI]7L&DNRY+W!=2Q9S_ !'/(STZ# XH ]9HKR^.QN/'#^*8)-2M
M[6]L]1DMXI6B<SV2)CRWC(D7:"!NR!R2<YKNS=7%KX3-W',+ZYBL?,64)M$[
MB/(;;VW'G'O0!JT5Y[X9T_3M9\+^%_$IU.>._P#W4UQ=QN-UU*_RO#)ZKO.-
MO;  QBL[3@OBCP+XEUB^DDCUB"YO DZN5DLFB)\M4/50 %) ZY.<YH ]3HKS
M'0;^\U#QCX/O+X&.XU#P[)-=(/E61_W7)7IG!/TSBL'4VD_X5GXT:.ZN(S:^
M)9(X#'.PV)Y\2[>#@KAB,'CVH ]LHKSY;./1/BQ#!93SQ17VC3RW/F3-('D2
M1-LAW$_, Q_"LS0+RZT35]/T[6])*:N+:;['J=I)YD&J[4W$OW$A W?-GOC&
M<4 >J5S.E^(M0U+7?$FE"QMXY=)>%8OWQ(F\Q-_)VC;Q@=#@^M<CH&FS^(O#
M7AWQ1'K]K;7:213W-W' QEF8G$D$A\S!!8[=N.., 5O^%O\ DI/CO_KK8_\
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
M<745OIMZ_P!D5+AP8@8XVV@YSMR3QTYH ]FKGO#'B&YUVZUR"ZM(K9]-OVM
M(Y2X<!%;=D@?WO2N2U#1_P#A'O%?@_5=)N;PW.I7/V6_22X>07,9B9BS*3@;
M=N1@ #Z"H(KBWM=(^([W5_<V,3:P8S/:?ZT%HX5 3W)(7MUZCK0!ZK63/JEQ
M?>'WO_#J6U[,Q(@$TA2.3#[6.X \8!(/?BN,TVV,?Q'U/29;&&SL+K0$FDL(
MI-T9;S67<P  W$<'&?J:YE;2*V_9IBN[8R07!MXG:2&5D+'SPO.#R,$C!XH
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!39(TFB>*1%>-P596&0P/4$4ZB@#%T[PIHVE/;FTMG5;8DV\<D\DB09!!\M6
M8A."1P!@$CH:AO?!'A[4+^]O;FPWS7T?E7($TBI*-NW)0-MW <!L9'8UT%%
M&'+X/T">#38'TY#'IF1: .X\L$8(R#D@@ $'(/>GKX5T=9WE^SRD/<_:VB:X
MD:(S;MV_RRVW.[GIUP>HJX6U/^VPHCM?[*^SY,F]O.\[=TQC&W;WSG-7: ,N
M#P[I=OJM[J4=LWVN^4)<N\KL)5 P 5)*X ) XXS65%\.?"L,<,2::_DP7 N8
M86NI3'#(,\HI;"]3P !^5:O]J-J6D7L^A-;W%Q$9883*Q$33(2,$CG&X8./2
MM"W,QMHC<A%G*#S!&25#8YP3SC- '/ZEX"\,:OK"ZM>Z3')>A0K.'=!(!T#J
MI <<#[P-=(  , 8 [444 <[IO@7PUI&KOJEAI<<%TSF3AW*(QX+*A.U21QD
M5//X1T2XO+JY>T8->$&Z2.>1([@CC]Y&&"OQP<@Y'7-;=% &1J_AC2-<FLYK
M^U9IK,DP213/$R C!&4(." ,CH:IMX#\--I]Y8?V8JVMY/\ :;B))I%5Y,@Y
MX8="!@#@8''%='10!DR>&]+FU6+4Y(97O8H3 DK7,A(C/5<;L$'OGK2:?X8T
MG3)+9[:"7-HACMA+<22B%2,$('8A>...W'2M"\O+?3[*>\NY5BMX$,DDC' 5
M0,DFGV\Z7-M%/'G9*@=<]<$9% '/V?@+PQI^N/K-KI,<5Z\AE)5WV!S_ !"/
M.P-[@9J]#HECI5[J&JV-G*]_>;3/B=CYQ PN0S;1@<>PK6HH Q_#FB?V+9W!
ME99+V]N7N[N1>C2.>@_V5 "CV45-<Z!IMWK-MJ\\,C7UJK)#*)W78&Z@*&QS
MQGCG%:5<[I_B"\NO'.K:#/;01P6=K#<12(Y9GWEASD #[O3GZT 2?\(9H/\
M9U_I_P!CD-KJ$K37<9NI2)G;[Q/S=^_K6S;6T5G:Q6T(811*%0,Y8@#IR22?
MQK-\2ZZGA[2/MC1^;(\T5O#'G :21PBY/89.3[ T[29=;-U?0ZO!:>5&R_9;
MFV) F4CG*$DJ0>.ISF@"E:^!?#5EKCZQ;:7''>O(920[[/,_OB/.P-[@9JQ=
M>%-&N[^YO9+5UFND"7/DSR1K<*!@"158!^..0>..E7]2U*TTBPDO;V410I@$
MGN20 ![DD ?6K= &7<>'=+NM2L=0DMF^TV"E;5DE=!$",$!5(&"  >.@JG+X
M)\/SV^HV\MG(\.I.)+Q#=2XF8=V^;V'Y"N@HH R6\-:6^HV.H/#,UW8(4MI&
MN928U/!'WL'.!G.<XYJC%X"\,0:^^MQ:3&E^\GFLP=]AD_O^7G9NSSG&<\]:
MZ2N<F\07D7Q!M?#QMH!:3V$EV)@Y+EE95QC& /F]_P * %U+P+X:U?61JU]I
M:27NT*\@=U$H'0.H(#C_ '@:O7?AW2;[5[75;BS5[VU0I%*&9<+G.T@'##(!
MP0<'FECO+RS34[K639V]E Y>"6-S_J0H):3(X.<]*)[N_N;33KG2([9XYY8W
MG^TLRE;=AEBN ?GZ8!XZT 1VOAC1[-=12*SRFHLS7B2RO(LQ(P2P8D<CCZ4:
M=X8TG2GA:U@ES AC@\ZXDE\E#U";V.P8 '&. !6O10!@?\(9H/\ 9U_I_P!C
MD-IJ$K3741NI2)7;[Q/S=^_K6U;6\=I;16\(811*%0,Y8@#IR22?QJ'4]2M-
M(T^6^O91%!'C+'N2< #W)( ^M-N6U,:G8K:QVK6!\S[8TC,)%X^38 ,'GKGM
M0 ]=-LUU5]4%N@OGA6W:;^(QABP7Z98FF6>DV.GZ9_9UG!]GM!NQ'$Q7&YBS
M8(.1R2>*NT4 8(\%^'QX>CT$6'_$LBD$D4/G2?NV!W JV[<N#SP1WJ>+PQI$
M&J+J<5M)'>+;_91(MQ(,19SLQNQC//3KSUK7HH SM'T/3] M7MM-@:&%Y&E9
M#*[_ #,<D_,3C)Y-4Y='>S\5G7;)-_VJ!;:]B! +!23'(,\$KN8$=P>.1@PZ
MOX@O-.\9>'='2V@:UU0W >8N=Z&.(O@+C'/'.3WXKHZ ,F#1;'2+O4-4L+.5
M[Z]PT_\ I#'SF'"YW-@8'&>P_*F^'-$&AV$ZR.LEY>7$EW=RJ.'E<Y./8#"C
MV45L44 9=[X=TK4=6M=4NK0/>VRE(I0[*0I.<$ @,,@'!S@\U4_X0O0/[,OM
M.-G(;._E,UU$;J4B5SRQ/S9Y[^M:DFI6D>JP:8TH^V30O.D8Z[%*@D^V6 JW
M0!SVL>!_#NO1V:ZEIYF:R7;!+Y\BR(OIO#!B/8FMJSL[;3[.&TM(4AMX5"1Q
MH,!0*GKG/%OB"\\/C1VMK:":.]U."RE:1R"@D;&5 ')Z]Q^- "W7@7PU>ZZ=
M:GTN-KYBID<.ZK(1T+H#M<CW!J[?>'-+U#4DU&:&5+U(S$+BWGDA<H3G:2C
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
M-+'[CA\;3Z4 <IHXCM-(E\/W=Q>7-M;>*7L]+M_,!%RB#<(9&;.8E.[/7[N
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
M1J=YID$UX(O),C _,G7##HV.V0<4 ><6\?\ ;B?"=-0EEF^T6EQYS>:P9_\
M1><L#GGOSSD^M4M9DN_!$'CJR\/R7$6EP0V<J*KLWV-Y7VR[">1\GS>V0:]/
M7P9X>33K2PBTR.*"S<O;&)V1XF/!*N"&!QQUZ5?@T?3[:QFLX[6,V\^XSK)\
M_G%A@ERV2Q(X).: .+U^P@T3Q-X1NO#\,</VZ[-G=10#Y+FW:-F+.!]XKMR&
M///7FN:NA&GPF^("G"BUUB]$&3CRL.H4+Z8SQCUKU+3?#>DZ2\3V=LRF%#'#
MYDSR>2AZJFXG8.!PN!P/2J=SX&\-7ES?7%QI,3R7W_'SEF"R'&"=N<!B."0
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
M>\ET739M(&DR6436 "K]G(^7"D$?J :DU/2['6=.FT_4K6*ZM)AAXI5R#_\
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
M%S*L;C*37"@;0P/!VKN(![G/4"N:U2S-FGQ-TFW0KHT&F"[AA4X2WN&A=F"
M=,[0V.@)'K0!ZV&!Z$'Z&AF51EB /<US'@C0-,TS1++4;2V"7E[86WVF8NQ:
M7:@QG)QW/\NPK+M/(UOXH>)=+UNWBN(K2SM?L$%P@9#$X;S753QDMA2?8"@#
MK]2U6STF*"2\E$8GN([:(=WDD8*H [\G/T!/:L=/$%[_ ,+&E\/2PVZV2Z7]
MN2522Y/F[,'L!P3^7->:/:FX\+Z7;:A&MW;6/C1;&QEN%$A:U$VW;N/5>"ON
M% [5U=SH^F:A\7UL+BTAEL4\-@"VV_NB!<D %1P0/0\<#TH ]%R",YX]:0,K
M+N# KZ@\5XKIFI-8>#?#=C/<QP:2VO75E,]RIDB6-6F\J-QD93<%ZG'RC/'%
M7_%WANTTGPAXU>+4(I/M-HERUC;0^5#;N. ZJ&."V#GUQF@#UL$'."#CK2UB
M^'= TS1K=[FQMA'/>I&]S)O9C*RK@,<GKR>>];5 !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M((8HY0D>HRIP>] $=KHEAI=Q>7NGV2)>7(W2MO(,S#IN)SD]L]JSM!MM6O\
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
M2]E9KX?D$;3733$RR '+1^7C'S8 SGH3WZ=!<VMO>VLEM=01SP2J5DBD4,K
M]B#P10!P^H:>EC\5]"73((TM[^PNEU."- $>.,+Y;,O3.YMH/H<5Q47V5/@5
MH"R>2)(]718PV,J1>G('H<?I7LFG:-IVDAOL-G% 64*64<E1T&3S@9.!T%43
MX-\-,]T[:%I[-=2"2?,"GS&!W9/'/(!^M &GJ$$5UIMS#/&LD3Q,&1AD$8KQ
MJPL++1_@?IWB.VM0E^UK!#=WB M)]F:=?,'7D;01CL/2O:9+6"6U-J\*- 5V
M&/'R[?3'I5>ST?3=/TXZ?9V%M!9$$&WCC C(/4;>F#0!Y]J=A;V"7_B/P_K$
M$FIOHLZV]OIT*+',JJ660JI.2IP ?<#O6CX?MO"VH:=X3UFSF07D46VV,$@#
MS.\?[Q9,<L>"S9Z$$FNIT?PUHGAX3?V/I5I8^<<R&"(*6],X[>U-TWPOH.CW
M\]]IND65I=3Y\R6&%59L\D9'09H \RT&VL/%/@ZSOM1UN*TU6TO?.N'CA47<
M5TLARN2=Q)Z 8Y! %=)HVGV<WQ0\;6LEM$\%Q9V)FB905?(ESD>]=0/"V@#7
M/[;&CV0U/.?M7DKOSZY]??K5F'1]-MM2FU&&Q@CO9QB6X5 'D'N>IH \[\)V
MB!7^'MU;HZZ-?F9R\8(DM 1+ Q[;BS*#ZA&IIALO$VL^,]%UK4+2VN$N/+"7
M$*F2.U\I/+>-F(V@'<W'1CGO7IR6MO'=RW:0HMQ*BI)(%^9E7.T$^VYOSK.U
M/PMH&M7L-[J>CV5W<PX\N6:%68 <@9/4>QH ET@QVOANR)O);J**U3_291\\
MJA1\[>Y'->4VTEG'_P *_P!0T\QP6<VIR&"2:0/=RQNDA=Y7&!R>JX/;)SQ7
MM&.,=JPX_!GAF% D>@::JB<7  MEP)!G#=.HR?SH /%]F=1\*WMFM^EB]P$C
MCG==RARZA0P[JQPI'HQKSS4YY9_#7CG3=:T"UL=<BT<32R6F'M[E%60)*G&5
M(.X<\\#TKU>]L;34K.2TOK:*YMI,;XI5#*V#D9!]P*BMM'TZTCGCAM(@LZ[9
MMPW&1<8 8G)(P2,'CF@#@+I[5O%GPQ=6A,S03_,"-Q0VO'OC-8]OX<T+5O"W
MCZ]U2VB::WU?46BN6/SVY7# H?X3G'3KQG->DVG@[PW8B 6VAV$8MW,D6(%^
M1SU8>_ YJ=O#6B/?O?-I=K]ID</(_ECYV'1F'0L.Q/(H \VTW2(]6\;>%X_$
M5HLUU<>%MUY'./\ 72!XO]8/XCWP>X]JRI!+X=L-4TRV+KX7C\66]O)ECLBM
MF :9,]DWE5(]R.YKOM4\/7.I?$NQU6?33+IL&GR6WF^:H99&=6#*-VX  $9'
M//I74#2=.73&TT6-O]A92K6YC!1@>3E>AR>OK0!PVO6]QH_Q'TR7P] L<EWI
M5X;R&%0%<1JIA8J.,[V"@]<'%97ARRTGQ!X=\+:P==ABO;6>&0M!"HN'N#\L
MD4C9+-N).[(YZ]*],T_1M.TH-]ALXH"RA2RCDJ.@R><#)P.@JM;>%= L]9DU
M>VT>RAU&3.ZY2%0Y)ZG/J>Y[T >62Z!I,W@[XG326$#R6FH7CVQ9<^0RPQL"
MG]TY[C'0>E=.9[/4=?T2WD"3ZH- \^1KY@UM%"Y4-)LZNY*XZCY<Y/3/6CPQ
MH2P74 TFS$5VQ:Y3RAB8GJ7'\1^M$OA?09GLGET>R=K$;;4M"I\D>B\<#VH
MYGX6:E:Q?#/0$NKZ%9'WPQ"24 N?-<*JY// X'M7>5S=_P""-$NK*VLH-+L;
M>"&Z%T"D(!1\@DKCHQQC=V_+'24 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 445S?Q O+^P^'^N76
MF%Q>1VCF-D^\OJP]P,G\* *WB/Q//I^O:!9Z?=6,L5YJ(M+N/&^1,HS<$-\O
MW<<BNFEO;6&XCMY;F&.>3_5QM( S_0=37F>LC0\?#6[TW[*(?M\:P2(1GRS"
MV1G_ '@N??KS52W32/$FG^*-,\1:XMC>1:G.;E&$2RHJR9A=&8%L! @4CTH
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
M[N);>VOK::>+_61QRJS)VY .14?]J6,_[FWU&T,[H[1@2JWW203C/(!X/TH
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
MJ-M-;A8C#:1H!);\'<7.>=Q'' Z&ITU33Y;A[>.^M7F3.Z-9E++@X.1G(YH
M+72]/L;BYN+2QMK>:Z;?/)%$JM*WJQ Y/UI+_2M/U5(TU"RM[I8VWQ^=&&V-
MZC/0_2EEU33[>\2SFO[6.Z? 2%YE#MGIA2<FJ+>*-)7Q,/#YO(?M_D><R>8!
MM^8*JG_:.<@=<#W% %J?0](N=/2PN-+LIK*/E+>2W1HU^BD8%7(HHX8EBB18
MXT&%1!@ >@%4-*>Y:34?M.HVMXJW3"(0(%,"8&(WY.6'7/'4<58M-3L+]Y$L
M[ZVN6CX<0RJY7ZX/% %6;PUH5S<75Q/HVGR3W:;+B1[9"TJ^C''(X'7T%2+H
M.CI="Z32;%;@1^4)1;H'"8QMSC.,=NE/?5],C9%?4;16>4PH#.H+2#^ <\MR
M..M7: .=O]/U#1K>"'P?I&C0B68FY$@,*J"/O@(OS'/^?35TG3DTG2K>Q1R_
ME+\TA&#(Y.6<^Y8DGZU8N+B"T@:>YFCAB7[TDC!5'U)J!=7TQXXY%U&T9)&V
M(PG4AFXX!SR>1Q[T 27MC::E:/:WUK#<V[_>BF0.I^H--M--LK"W:"TM(8(G
M.62-  QZ9/J?K4B7EM)<O;)<0M.@R\2N"RCU(ZCK7/2^)(/#GAM]0UW6+.[/
MVAXXY+<! Y+D+&!D_,. ?3!)Z&@#1'A?P^MM#;C0],$$+F2*/[)'MC<]648X
M/N*LQ:1ID%_)?PZ=:1WD@P]PD"B1AZ%@,FK,,\5S"LT$J2Q-RKHP8'Z$43SP
MVT1EGECBC! +R,%'/N: *%CX<T32[BXN+#2+&UFN 1,\-NJ&0'J"0.14]AI.
MFZ4LBZ=I]I9K(VYQ;PK&&/J=H&33[?4+*[FFAMKRWFE@.V9(Y59HSZ, >/QI
M(=3T^XF2&&^MI)9 S(B2J68*<,0 >0""#Z&@!M]I.G:IY7]H:?:W?E-OC^T0
MK)L;U&0<&F#0M(%U-=#2K'[1.NV67[.F^1?1CC)'UJ6WU.PN[B2WMKZVFGB_
MUD<4JLR=N0#D43:G86UW':3WUM%<RX\N%Y55WSZ*3DT 57\-:%)I1TMM&T_^
MSRV_[*+9!'N]=N,9]ZQ- \/W.E>-==O%T^"WTJ\M[:"V2)E 01*X(*#@ [N,
M>G:NEO-3L-.,8O;ZVMC(<)Y\JIN/MD\TZ\O[/3X//O;N"VASCS)I BY^I- &
M?;>%/#UFJ+;:'IT2I+YRA+5 %DQC<..N.,U.?#^BE[ISI&GE[L8N6^S)F8>C
M\?-^-6WO+6.T^UO<PK;;0_G%P$V^N[IBN4T'Q'>:OXK\46 O[*6RL8;9[.:%
M,JOF+(26.X[L%1W'3M0!K:A;7^D:/%!X3TS3%=95'V>4^1$$/WB-BGGIV]:M
M:+IKZ9IHBF=);J5WGN)%& \KDLV/89P/8"FZ9=F+1[ ZAJ=I<W$JJGVF(A$G
M<_W!D]?05;M+^SOT=[.[@N41BC-#('"L.H..A]J */A_0+3P_:W$-I#! MQ.
M;AX[>(1QJQ55PJCIPH^IR>]8)\,2WGQ'OM7U#3+>;3IK&.UB:1E9E9&8DX[
MAL?S%=3%JFGSS/##?6LDJ?>1)E++SCD \<U;H H7.AZ1>P6\%UI5C/#;X\B.
M6W1EBQTV@CC\*DOM*T_4[=+>^LK>YA1@R)+&&",.A&>A'J*6UU.POI9([2^M
MKB2+_6+#*KE/J >*0:IIYG6 7UL9G=HUC$R[BX&2H&<Y ()'O0 Z+3[*"R-E
M%:0):$%3 L8"$'J"O3G)SZU#I>B:5H<+PZ5IMI8QNVYUMH5C#'U.!S5R::*W
MA>::1(XD&6=V "CU)/2JAUG2QILNI?VC:FQA!,EPLRE%QURP.* (]/\ #NBZ
M5=3W6GZ38VEQ/_K98(%1G[\D#UIUEH.D:;(LECIEI;.H*J8853:#U P.,]\=
M:Y75_&LL^C^&M5T*YMC;:EJ=K;3HZ;W$<IZ9!^5L=B#U[5V5K?V=]YOV2[@N
M/*;9)Y4@?8WH<=#[4 5K+0=(TV59+'3+.V=00IAA5-H/7&!QGOCK46@Z!::!
M%=K:000_:IS/)';Q".-6VA>%'LHR>YR>.@N0:GI]U=RVEO?6TMS%_K(8Y59T
M[<J#D4B:II\LZ01WUL\TA8)&LREF*_> &<G'?TH ;?Z/INJM$U_86URT))C:
M6,,4SUP3TS3;K0](O;:"VN]+LIX(,>3%+;HRQXZ;01@?A5J6Y@@:-9IHXVD;
M:@=@"Y]!GJ:J_P!N:2;.2\_M2R^RQOL>;[0FQ6]"V< ^U %Y55%"JH50,  8
M %9]QH.D75]]NN-,LY;O !F>%2QQTR<<X[>E6IKVTM[474]U#%;D B5Y J8/
M3D\<UF:QXJT?1?#LNMW%] ]FJ_NWCD#"5NRJ1P23Q0!=N-'TRZOHKZXTZTFN
MX?\ 57$D"M(G^ZQ&1^%1ZAH&CZM<07&HZ79W<T'^JDG@5V3Z$CBJ=UXPT.UU
M33]/;4K5I[[>T>V9<!5!RQ.<8R-H]3]#6G/J>GVMU%:W%];0W$O$<4DJJ[_0
M$Y- $ \/Z,-,DTP:59?8)#E[;R%\MCUR5Q@GWIB^&]"72ETL:-I_]GJ=PM3;
M(8\^NW&,^]6KG4]/LV<75];0%%#,)957:"< G)X!/%3RRQP1-++(D<:#+.[
M #U)H (88K>%(8(DBB085$4*JCT '2JL6CZ9!J$FH0Z=:1WLO^LN4@42/]6
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
M</:3W$A6"';'AV901O;#85<CJ>17G"ZK';>$[]#=Q3::/&A&HF(C9]D,@))
M)Q&S8]B"1SFO;;W3;'4DC2_LK:Z6-MZ">)7"MZC(X/O0-,T]4N4%C;!+HEKA
M1$N)B1@E^/F_&@#AKE]+F^-6GE7M)/M&@S1MAE(D!E3:#Z\9Q[5Q@T[3T^ (
MO$MH5N(]1S'.J@.F+_:-K=1P2./4U[):^'M$L@HM-'T^ *K(HBMD7"GJ!@=#
MW%'_  CVB_9?LO\ 8^G_ &?=O\K[,FS=ZXQC- ')26%EI_QBTJ&SM8+=)M$N
M$D2) H<"2/ ('7O7&:A:V@^#?CA!#"(X->NO* 48CQ<(!M]...*]E_L;2S<I
M<_V;9^>BA4E\A=R@#& <9 Q47_"/:*+=[?\ L?3_ "9&#O']F3:S#H2,8)]Z
M .2N;"QT[XN>'TL[:&W$^E7:2B- OF -&1NQUYR>:Q-&T^"Y\*>*+""_CTMO
M^$KF%K,$!2.59D:-2O0J6"C'O7IG]BZ5Y\4_]F6?G1 +')Y"[D'H#C(%,&@:
M,MO+;C2; 0S$-+&+9-KD="PQ@_C0!Y;XCOK^[\">/+'6]+M;?6;."%KBXLR6
MAN0P^1USRIVK@@\XQ6SXAM='U+QWX"(BL[B&0WB,5"LK@09"G'49[5W\.EZ?
M;VDEI#8VT5M+GS(4A54?(P<J!@Y'%1?V#H^8#_9-CFW&V#_1T_=#T7CC\* /
M.M=;1;.[\7:5IL5GIQM=%2&X\\_*Z%)&2.&/( 'S'+<\D#!/-5[.[LGNOA3=
M3SVYC73ITEE=Q@,+1.&)[_6O4IM*TZXO5O9K"UDNE0QB=X5+A3U7<1G')X]Z
M:='TPVUO;'3K,P6S!H(O(7;$PZ%1C"GZ4 <?H-M:GXJ^,XEAB\N:SLC(@48?
M(DSD=\]ZS_"4$MO=S> IXV-OHMZ;E79<J]IGS(!G^]O(_"(UZ'%IFGP7LE[%
M8VT=U)]^=(E#M]6QDU.(8EG>=8T$KJ%9PHW,!G )[@9./J: /*1-H^JW_C30
MO$^NG3I9+Q_,AE:%/,MBB^4R,Z$\ =CP>>]>F:5!''H=E &GEB6V1 ;H?O'7
M:!\_'WCWXZYI+O1M*O[R&\O-,L[BZ@_U4TT"N\??Y6(R/PJZRAE*L 01@@]Z
M /#K^UM/^%+>+E$,02#79_*PHQ'_ *4@&WTX..*[2:QLM-^,.B)96T-L)M(N
MED$2!=X#QD9QU[UUG_"/:*+=[?\ L?3_ "7;>T?V9-K-ZD8P3[U*-'TM;F*Y
M&FV8N(@%CE$"[D Z '&10!Y[IEH^E^(M7\ B _8+VX&HVY"_*MG(29XSVQO7
M9CTE]J==7EA)\0/%&D:_K']FI<6T M5F\E4FMC'APK2*>CE\@'O[5Z5Y,1G$
M_EIYP4H)-HW!<YQGTR!Q574-&TO53$=1TVSO#"=T9N(%DV'U&X'% 'GHTJ\L
M(]+D\&ZG'?2V.EF+[!JW(O+1I#M97&,'Y< XP1LS5>/4M,N]=^&>I"V2PL9-
M.O L4Y&(U$485=QZ@ <'N.:]*O-'TO4)%DO=-L[ET7:K30*Y ] 2.E23Z=8W
M(@%Q9V\HMV#PB2)6\MAT*Y'!^E '":5;PIX_^(L4$J67F6ED6F0 >6QBER_'
M<=:PM#LK'Q-I/@:QD?2B-((DE<W$4OVA1&5"HF2V7)5B&"D8]:])U/0HY;'4
M6TE+73]5NH71;Y;=2ZL1PQ(Y-<G;>!Y;R%+74?"GA6QVA0;^RR\PQWC!B4JW
MHQ<X//- '+^,]1L)_"?C1K&6"U$>KHLZ3R;[B>X1X@67)^1 %X !R 3Q76K<
M6'_"ZC*TUMLF\/Q^4Y9<2-]I8?*>YZ=*["70](FFN9I=+LI);I0EP[VZ$RKZ
M,<?,.!U]*F;3K%[B"X>RMVFMU*PR&)2T0/!"G&0/I0!XY=F:P\!?$(:;%MAC
M\1/YZ0#!$'[GS0 .VW=GVS77>(X8KCQAX(O-&\II)'E1VAQMDLC%ELXX* [,
M=LD8ZUV=KI6G6)E-I86MN9?]9Y4*IO\ K@<TRRT;2]-\S[!IMG:^8,/Y$"IN
M'O@<T >-76EZ:OPI\?7"V=N)8-7O!#($&8]LH*A3_"!V KV2#5[ WD.FM?0?
MV@]N)Q;F0>84Z;MO7&>]-'A_11!) -(L!#(P=X_LR;6;U(Q@FH3X=L/[;L]3
M6UM8WLXC'!Y4"JX!!&"PYV@,V%X&23SQ@ S_ !K9SWUIID=EJD6GZDE\LED\
MR;XY951SY;CT*[NG((!'-<)K>IS7G@J^;4M,@TZ^L/$=H-0,+[H&??$3*I/0
M%2N<\C//6O6KS3[+481#?6D%U$K;@D\8< ^N".O)IG]EZ?\ V>^G_8+7[$X(
M:W\E?+8'KE<8.: .*2[L+OXW/&L]O,K^'?*90P8,?M&2OOP>GI7(%((_@7<8
M6-8H=;..!A%%^/R&*]A@T72K79]GTRSAV1>0OEP*NV/).P8'"Y)XZ<FB/1=*
MBLY;./3+-+6;_6P+ H1_]Y<8/XT -CUG2/ML&G1:A:?:ID:2&!)5W.JDABH[
M@$'\CZ5R?Q?AMW\ RRSHG[J\M661N#'F= 2#U'!/(KI9O#MA-K&G:A]FMD;3
MU(MRD"AURK+MW=D 8_*._/:L[Q]H>H>(_##:9IT=NTLD\,C&XD**%217(X4Y
MSMQ0!@WWA[3['XK>&SH]C;P)-8W:ZE%!&%1X JB,N!P?G( )ZX]JYG2=*CA^
M ][JFCV,/]LQ1WJ17$<8\U$-PX<*W4?(#P*]>L])T^TMW2#3+2V$R@31Q1*
MW'0X R.34MEIUCIL;1V-E;VL;'++!$J GU( H X#Q"MK=VWP_O\ P]Y8F_M&
MW6V,.,_9"A,J\?P[!S]!5'1+WP[JOA_Q'H_BN>);\:M,;R"24I-(1)NA*8(8
M_*$5=OI@5Z19Z-I>G3O-9:;9VTLF=[P0*C-DY.2!SS2R:-I<VI)J4NFV;W\8
MPETT"F51[/C(_.@#SJ2[TZ[\7^+M&\1ZRVF&X2(11SF%5EM#"!A6D4]&\S.#
MP23ZU%;W5AHWB[2=-NM;NK32FT-(]+N[SROWN)&W@LZ$!BGE'H,@#/I7I-]H
MVEZI+#)J&FV=W)"<Q-<0+(8S_LD@X_"GZAI6G:M (-2L+6]A4[A'<PK(H/KA
M@>: /+%72O#NL>"K"UOY;CPP;Z\9;BX=3$;C;^Z ( 7:&+[>VX''0&M&Q73)
MO'?Q&MQ]E=)K.T9X_E(=A%)N)'<CC->A7.EZ?>6'V"ZL;:>SP%^SRPJT>!T&
MTC'%1Q:%I$$<D<.E6,:2((W5+= &4=%( Y ]* /)DM+2Z\ _"LSPQ2%M0M8B
M6 )*&*3*_0D#(Z&MR*TM[?Q=\1+.UFCTR%]*MF,L2[5A8Q2@R8'H,'CTKNSX
M?T8Q11'2+#RX3NC3[,F$/J!CBJFM>'DNM,U'^R([.PU6ZA9%O?LXW9/7)&#R
M.,YXZT <%H=G9>)O^$%$G]E@:-;GS5^T0R^=F((%1 2<$@,=P!&!WZ=3\4I;
MZ'X;ZS)IXD,HC7S/+^]Y6]?,Q_P#=^&:S[3P6]V\*7_A3PMIIB='^V6'SS94
M@_)^Z0IG'7<<>AKT @$$$9![4 >?^)8H+G7_  )?:%Y1E>Z**T(&'L3$3(#C
M^  )CL"1WJ'X=Z'I$EWXDN3I]HT]KXCNQ YB4F' 7 7^[U/3UKN++1M+TUG:
MPTVSM6D&',$"H6[\X'-/L]+T_3VD:RL;6V:0Y<PPJA;ZX'- ')>.[I[7Q%X-
M:YXT=M2871;[HE,9$&[VWG//<"L_4[-T^(OB,V:#[%-X<WWR*,J;G<PC)']_
M8&_ "O0[FUM[VV>VNX(IX)!AXI4#*P]"#P:99Z?9:= 8+&TM[6$G/EP1A%SZ
MX H \CD:RNOA9\/H$>&0'4=+2948=3P0V._6KVKP2Z;XM\;0Z!"MO</X:CEC
MCME"DR@R@$ ?Q8QC\*]$/A_13 D!T?3_ "8W+I']F3:K'J0,8!/K4\>E:=#>
MF\BL+5+HC!G6%0Y'INQF@#S[1$\*^(3X7U&VU^6YN;9-EK91& ,JLF)(Y$5
MVT '(/''N,S_  OT723IMW?"PM3=VVL7RPS>6"\0\QEVJ>JC:>@XY]Z[:VT/
M2;*XN+BUTNR@GN 1/+%;HK2YZ[B!D_C4MEIEAIJNMC8VUJ'.7$$2IN/O@<T
M<9\0K.TN-?\ !9G@B=FU<1DLH)9#%)E3Z@G''2JVCZ+I,OQ.\96\FGVK0"VL
MF$31*4!9) QV] 2 .:[N[TO3[^2.2\L;:X>+F-IH5<I]"1Q3/[%TKSYI_P"S
M+/SI@1+)Y"[I >H8XY_&@#RKPQJ-G'X)^',%QM:^D>8V<UQ*5@A**X+. ?F(
M4X5>,GN*S+R>WE^&'Q"C%U;W#IKKR@QXQM,D!+J,G"DD_P"->RMX?T5K-;-M
M(L#:H_F+";9-BO\ W@N,9]ZF_LO3]MTOV"UVW?\ Q\#R5Q-QCY^/FXXYH XC
MQ#<:8OQ)\&7/FV@M3!J(,NY=F0L?&>G'/ZUAPOHNMP>+=$\4:^]A<?VG,;BW
M=H49HMP,+H70L?D" 8)Z#U%>I-I6G/%;1-I]JT=J0UNAA4B$CH4&/E_"FW&B
MZ5=W\5_<Z99S7L/^JN)(%:1/]UB,C\* . MM!TB_^*]W:WUA%=1MX>MW=+R-
M69V\UP7<8P7QC)QFNE^(L$,OPV\0K+%&ZIITS(&4$*P0X(]"#TK=72M.6_-^
MMA:B\/6X$*^8?^!8S4MU:6U] T%W;PW$+=8YD#J?P/% 'F&OVVG:!X'\.ZG;
MV\=I:S7-@=5N[>%2[0A20[D@[@'*'G-:B6>AFX\1:OIFN2:E=W>E,+HQR1-"
M%53L9O+4#?C.,]@:[E+"SCLOL26D"VFTIY"Q@1[3U&WIBH+;0])L[!["UTNR
M@LY"2]O%;HL;'W4#!H \XTB_L8-"^&ENXC747L"]I<7$A6"'; H<LH(WMAL!
M<CJ3D=^?EN+5_A;XF07-O,(/$Q;<A&%0W<9W ?PJ>3Z5[,^@Z.]M%;/I-BT$
M+^9%$;="J-_>48P#[BI#I.G&&YA.GVIBNF+7">2NV8GJ7&/F/UH XS719/\
M$_P)<VH@8N-03S(L?,!#TR.N#G]:YG^Q]+?PO\4W:QM2T-U=^43&/W>+=&&W
M^[\W/'<>U>L-HVEM+!*VFV9DMU"PN8%S$!T"G' ^E,&@Z,$F0:38!)CF51;)
MB3_>XY_&@#@9]02PUKP-JES>PR Z3(K6TTZ1M\R1YE4N0I.<*1D'#<9P:WOA
MYH=OI.F:C<1&R9]0U">Z/V5E<1(S$I$77KM!^@)..*BU[PQ?2ZM;S6.D:#J6
MDQ6WDIIM\OE+"Q;+.A"..1M!!7^'CJ:U/#/AR+1'N[I=/T[3Y;L('M=.3;"F
MS=@YPNYCN.6VC@ 8XR0#$O'M;?XVVCW+0QA] D"M(0-S_:(\ 9ZFN>TUH-2^
M#?BF/6 O]JPRWK7V_P"^MR&9HSZY \L+] !7JLUC9W-S!<SVL$L\!)AE>,,T
M9/7:3R/PJ&31M+FOQ?RZ;9O>C&+AH%,@QT^;&>* (?#HO3X7TH:KDWYLXA=;
M^IDV#=G\<UY,\MJOP,\60*\(N$N;W?&"-X'VDXR.O<?G7MM4)-#TB59UDTNR
M=;AQ),&MT/F/_>;CD^YH XN\LK33?B=X/^P6\,#SZ?>I(8U"F0!8V&XCKR2>
M?>N>\.G1/$7@[3K?6?$-S#J]E>B2:R1H4N5O5D/W04WDLQ]><]>#7JPT72A/
M#.-,LQ-  (I! NZ,#IM../PH&C:4NJ'4QIEF-0(P;L0+YN.F-^,_K0!)J9 T
MJ\). ('R3_NFO#M)TZ2U^&OA#Q'="?5-!LU+:CICL6C1=[ 3J@^\4/)4Y&,]
M,9KW:XMH+N!H+F&.:%N&CD0,I^H-16VF6%E;O;VMC;00/D-'%$JJV>N0!@T
M</XRURUCUKP=?OJ?D:#<23$WT>QHUE,8\EB6!4 CS!DCC/:L?Q-I^CV/P[\=
MSZ1JDM^MV@FN'WQM"LQQD)L4 ,1M+#W6O2QH6D"PDL!I5B+.0Y>W^SIY;_5<
M8-*-%TH:<NG#3+/["GW;;R%\I?HN,4 <+JFJ06?Q'T^#5-4;3;.XT8"RG;R_
M+:7>?-7=(I )7R_3.!5.WC\/:#/X9TS2KM[K??7DNGWEY,/LT1V'S" FT.!O
M(51CG=R,5Z+=:)I-]91V5WI=E<6D9!2"6W1XUQZ*1@4^XTC3;NVAM[G3K2:"
M @Q120JRQD="H(P,>U 'E&@)'J?A_6;&TUZVM;]?%<TME,%#1-(&#H"F?N,0
M<>^,9-+JVO7\6A7ZZOIZ:=/9:]:'7)K']Y#+&R)^]4,#Q@194@^_7%>J2:)I
M,R3)+IEDZ3R>;*K6Z$2/C&YN.3[FI8=.L;>T>TAL[>.V?.Z%(E"-GKE0,'-
M'F/B.#3_ .S?$NN>'=<N-4U6?2=L_P!EDB9/*5A\Q\M1A]I<*3S@'TK1LE\*
MZOJ>D:Y9>))[JXALYDABM6A4K 8_F$B(@("X&,XPV/6N[T_2M.TF!H--L+6R
MA9MQCMH5C4GUPH S4=GHFDZ<T[6.EV5JUQ_KC!;HAD_WL#G\: ."\+R:CHFN
M^'M&U)+/5;"6TD31]8M1M<1*BL5E7IRH7YAP2!W->F52L]'TS3I#)8Z=9VKD
M;2T$"H2,YQD#UJ[0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !4<]Q#:P//<31PPH,M)(P55'N3TJ2
MD.,'.,=\T >?Z#XKGU^RL_$,?B+3K2R%Q*+RPG,>U( [I&=W#*YV@\G!R<"N
MT76=+>&YF74K-HK5_+G<3KB)_P"ZQS\IY'!KQMQ;3?LR&1_+8+(VUSCY3]M/
M0]CBNN\46]GH7B[P;/%:6UKHLE]+]K>*-40SF'9 SXZ\Y )Z<>U '<0:KIUU
M9O>6]_:RVL9(>9)E9%(ZY8' Q446O://=16L6JV,EQ-$)HXEN$+O&1D,!G)7
M'.?2N UFR4^,_&<L"HVF/X=!OA@%#=#?L)[;A& ?H1[5F36.GGP7\+6-M;YE
MO;)7.T9<-;MO!]0<#([T >KV&JZ=JL<DFG7]K>)&VQVMYED"MZ'!.#3[R_L]
M/B$M[=06T;':&FD" GT!/>N-T%(;?XN>*88%CC5K"R=D0  M^\&<#OC%3>+-
M3L+3QAX<@F-O;W[)<O;WMW(5B@7:H<;<@.Y!  )&!D^Q .G_ +7TS[%%>_VC
M:?9)B%CG\Y=CDG  ;.#SQQ38M<TF?[5Y.J64GV,XN=EPI\G_ '^?EZ'K7BID
ML+CX9WL+303O!XJP"=N55KL<X'W01D]N]=Y#;6EM\:C;00PQ1R>&_GB10H;%
MP ,@>Q(^E '8+K&F-8&_74;0V8.#<"=?+!_WLXJT9$\DR>8H3;NWYXQZY]*\
MST2SN+#6I_AZT#G3K>Z&I02$?+]A+%Q%GU$P"8[KGTKTR:..6%TF17C((97&
M01[T 9.D:A';:'8MJ6O65]+*_E+>ILB2X<N0 H!(ST7 )Y%68==TBXAN9H-5
ML98K4[;ATN$*Q'T8@_+^->.V<-I/\'? 'G)$Z_VW;)E@#P;APP_+K7;6%M:0
M_&/5[2*&%(9="MS)$B@*Q$KKR/I@?2@#K_[7TS["M]_:-I]D9MHG\]?+)Z8W
M9QFDN]9TO3YHX;S4K.VEEQY:33JC-G@8!/.:X+PC;W%M?S>!IXW-KH=Z;I)&
M&5>U)\RW7/J')_[\UGK=Z->7WC+0/%>O/ILDU](SV\K0H)[9E41,C.A8D* ,
M Y!'% 'IU[J^FZ:P6^U"TM6*[@)YE3(]>3TJA)XNT:+Q3'X>:]@%\\!F*F4#
M;\RJJ^[-N) ZX'N*X;6K>\TR+4-0T.[BO8+?2H8M6T;5N))8%C)5@XY5RK,#
MD8)S6C!J5J?BWIMW.1:+>>&5\J.<A6W-.I"<]6YZ=: .OTF:22?4S)K%M?QK
M<D(D*JOV5=H_=L03D]\G!YJ:#7-)NI1%;ZI92R'&$2=6)STX![UYI;V]J_AG
MXI6RW:6$/V^XW2HO$8\A,\+SC@@@>]7M(.G>)O%'AC4#=Z.LNE6,D;6\-Y%.
M\TC*N H4GY4VE@3@Y[=Z .^_MG2_MXL/[2L_MA8J+?SU\S(&<;<YSCG%4;+Q
M;H]_XDOM"M[V![NS6/>HD&6=MY**.Y4)DXZ9^M>5WNLZ7<Z'H=S9W-K8V:^*
M8Y?L;R;IT/VAM\DK,<KG).,  ,.37217C)XV^(,5A<1KJ5S86C:>FX!I7^SR
M;2H[\XZ4 =^FL:7)?_8$U&T:\R1]G6=3)D=?ESGBFW&N:1:2O%<ZI90R(R(Z
M27"J59\[003P3@X'?!KRV]:'5/@7H0TH@:Q"]G':!?\ 6I>K(JR>^[_6$^V2
M:W=)TK2KWXL^,([JQM)R+:Q<))$K#.').#WR%.?I0!Z)5.^U;3M+"G4+^UM
MP)7SYE3('4C)[4W3M9TW5S<C3KV"Z-M*8)_*<-Y;CJI]ZXWQ!J>G+XZO;,R6
M]E?#1@);NZ?/F0L[8CB0D*3G)+<]A@]@#H]8\7:-HEQID%W?0+)J,@6#,H V
MX)+D]-N!U]2!19^+]%OO$EUH=O?V[W5M'&S8E7YF;=\B^I 7)QTR*\QT?4+0
M>%/A9<274(AM[ORII&D&V-O(DPK'L>G!KI[&]CC^)WBU()X4N[K3K(V2NP!E
M;;+@J#U&<9H [?\ MC2Q?BP.HVGVPG M_/7S"<9QMSG.*;=ZYI-@\B7FJ65N
MT04R+-<*A0$X&<GC)Z5Y3NBU+]GU(4W?VQ RH$SB=-0$WYB0N2?7#5NVNDZ?
M??%W4[?4[.SNI&T*V:6.2)65G\Q]S;2,$].: .VG\1:):J[7&L:?"$E$+&2Y
M1=LF,[3D_>QVZU9O=0LM.@\^^O(+:'./,FD"+GZFO*DT[36TKXK$VML3').%
M.Q?D_P!&4\>GS#/U%/M]:CT_6_"4FK:O+IMA=>'(DMKP^7Y?G_*9%+.K!25V
M<\=* /3&US2$2W=]5L52Y&8&-P@$H_V>?F_"K!O;47@LS<PBZ*[Q!Y@WE?7;
MUQ[UYY+X3T^Z\!7"^%+F6YGL[]M2TVYD964W"D,1&5 &QCN7CC)-;7A?6;?5
M]/NO&MXOV.UFMU6/S_E\F",$N3GI^\,G/<*IH ["J5WK&F6$Z07FHVEO,^-L
M<TRHQR<# )[FI;&_M-3L8;VQN([BUF7?'+&V58>QKSSP_-:W&F>/]/\ $)C6
MY%_<O=+-C)MF0>4W/\.P8'TH ] N]4T^P=4O+ZVMW96<+-*J$JHRQY/0 $D]
MJFM[B"[MH[BVFCF@E4-')&P97!Z$$<$5Y!IFGN^H_"N#7X(Y+U[&\$JW"@LP
M$2E X/4@8X/<5ZG>+9:1X=N0MJ$L;6U<_9[9=N$522J 8QP.,4 /MM:TN\NF
MM;74K.>X4$F**=68 '!. <\'BHY/$6B0[?-UC3TW3& ;KE!F08RG7[W(XZ\B
MO*]/U33FUWX:S17MA%9"&X6*TBDW_9HVMB%21R<LY.!SC)'2HI;#3C\.?B=*
M+:VWIJM\JML&5VA"H'I@\CWH ]@.J:>-0_L\WUM]MQG[/YR^9C&?NYSTJ2&]
MM;F::&"YAEE@.V5$D#-&?1@.A^M<'XI#:3:>'_'4"F1]-B2._P!@RTMG( '/
MN5.''T-=7X:M98M+-W=1E+R_D-W<*>JLV-J'_=0(G_ : +M]JFGZ8BO?WUM:
MJV=IGE5 <=<9-9^N^+-(\/V=E<WEY"$O9XH+?]X/WF]@-P/3: =Q/3 K TVZ
M:+XP>(+;4B 9]/MCIOF=&A7=YH7_ (&<D?2N+\IK#P;;/(X328O&R/8,QPB6
M@G&"#V3.X@],&@#NV\426_Q#>SN=3LUT'^Q?MZR':JJWG!-QD)Y&/H.:ZN/4
M+*6P%_'=P/9E-XN%D!C*^N[ICWKAR+'4OC7;N1!<Q_\ ".&2(G##_CXP&'X$
M\^]<A:WW]E_#_3;CS9(=)L_%,XNW@4-Y$/FR[6P01M5RAZ'M0![!#KFDW%G-
M>0ZI926L)(EF2=2D9'4,V<#\:DM-4T^_EEBL[ZVN)(0IE2&57*;AE=P!XR.1
MFO,_$-IX<NO#OC35M-U9M7N;C2&^TS+)$\*E4/EYV*!YG7'?'7&1GN_"FG:=
M::!87%E:6T4D]G!YDL48#2@(,;F'+=3U]30 UO%FDOXFE\.Q7UN-02#S&#./
ME8G"IC(RW4X'.,>M9/@OQ:+[1D_M[5;)=1FO[FVA5F2(R[)2@"+G)Z#U-01W
M5O:_&N^2XFCB>?1;=8E=@#(?.D&%]>M<//!9CX):]?+'#]H769'6? W B]&"
M&ZC@_K[T >OR2R?\)-%&-8MEA%JY;32B^:[;A^]W9R% XQC'-2PZYI-Q<Q6T
M.J64D\I81Q)<*6<K]X  Y.._I7)W4=O_ ,+NL?DCW2Z#.'X&7_?)C/KQFN;T
M+3XU^&WBJ_TBR@?5[>]U/[)-'&#+$=S >6>JG:> /7WH ZKQ5XL-GJF@6NDZ
MM8NUSJ\-G=VZE9)-C;MW?Y<%<'COU%=E--%;PO--(D<2#+.[ !1ZDFO(]4U?
MP_<>%OAQ-97=F(X=5L@!YBAH@$8.#W&#@'/>O0O&D<4_@77A(B2+_9UPP# $
M9$;$&@"]!KFD7-ZEE;ZI92W3QB58([A6=D(R&"@YP1SFEDUG2X;Y;&74K-+M
MF""!IU#EB,@;<YR?2O+9]'T^7P?\.;K2((%U8W5B\4T 'F,NS,^XCDK@$MGT
MJAXFU?3;CPQKK64]M8I'XA1I+9Y-UQ),MQ&'E;<?D7C@ < #GG% 'L%WKFD6
M#R)>:I96[1!3(LUPJ% QP,Y/&3TK,L/&_A[4+O4H(]4LU%A*(I)'G50QP"2,
MGH"P&>F<US5MI^C:M\7]76:ULKR&71;>0*Z+(CYD?YL'@\;>??WJ;PE]@N/$
M/CG2;LPNUQJ9#6SD;GC:",'Y>NTC/- ':MJVFK9QWC:A:"UE(6.8S+L<GH V
M<&KE>:>$8KTWT7@R^CD>'PU<&7SV'$\.,V@^O)/'0PCUKO;'6=-U*ZO+6RO8
M)[BRD\NYCC<%HF]&';H?R/I0 ^35-/AODL9;ZV2[DY2!IE$C?1<Y-/6_LWN)
MH%NX&F@&Z6,2 M&/5AU'XUR?Q"LY;6UL?%EC$7OM!E-PRJ.9;8C$R?\ ?.6'
MNM87BQKI_AQ>Z\L,A34;V"\O$"G<+$.H"D=<>6JEA_M/[T >AVNLZ7?>;]DU
M*SN/)&Z7RIU;8/4X/ H.MZ2+-;PZG9"U9MBS?:$V%O0-G&?:N2UQ%O/B)X,O
MM(D1Y#'<&XDA((:T*#&['5=Y7;[GBN%O]0LH/@MXET^6YA6\35YPUN6&]<7@
M;E>HXYS0![K5&WUG2[N\-G;ZE9S7(R3#'.K.,'!X!SP>M/NKRW729[S)FMUA
M:3,)W%U )^4CKD=*\@L-5TTW_P -KFWO+&WLD>816D<N\VL;0, LDA.2Q. >
MG((P<9H ]=N-8TRTN/L]SJ-I#-P/+DF56YZ<$]Z;/K>DVH!N-3LH@8S+F2=5
M^0=6Y/0>M>4W[6-U9>-_"\FL:5YFI:J[K<7=XD9A)$>0R,=QV;<+@$'';&:W
M=1TK26^*/A>U:VM)H6TFZ&TQJ5E \O!(Z'C)H [BYUW2+*"&>ZU2R@AG4-%)
M+<*JR*<8*DGD<CD>M37FI6&G6XN+V]M[: ]))I513QGJ3Z5YJ]WI-EXT\3Z#
MKFK#1;6>"!;.-A#'#+:"$*40NA "MO\ E!'4X'6H8KO3O#GBO1+.?6+W3M$?
M1?)TR\NC'AF$I+*S2(0N4\LCIP #SQ0!ZM;W$-U;I/;S1S0R#<DD;!E8>H(X
M(K'L/%NCZEXBOM$MKV![JS"!P)!EG(8E5'<J%!..F?8U!X)T_2=-T%X-#N9K
MG3S<221S2,K*Y8Y8QE0!LW9Q@8SG'%<I]IFA\7_$JVL)D35Y[6W-C'N =Y!:
MM@J.IP10!Z#'K&ES7QL8]1M'O!G,"SJ9..ORYSQWJU++'!$TLTBQQH,L[G
M]237DE^T&J?!CPR='*C5H9;)+,+_ *Q+I759!ZY \PM[9)KT7Q=%'-X-UM)8
MU=?L$YPPR,A#0!9@UW2+F\CLX-5LI;J2,2I"EPC.R$9#!0<D$<Y]*5]<TB.X
M%N^J62S&40",W"!C(>B8S][VZUY7+H^GS> /AY<Z3! NL&XL&AFA \QCM!FR
M1R0%#%L^E;?AC2M.N?&'CDI8V4MS;W\+V_F1*WE.(5*L,_=.[G([CVH [MM8
MTM;\6#:C:"\8[1;F=?,)QG&W.<XI+K6=+L7E2[U*S@:%/,E$LZJ43.-S9/ R
M0,FO*(GBU']GZ>WDW?VS S(Z'_7K?B8D>_F%R#Z_-706%E"_QB9;V&WDNQX<
MA>;Y <R^<P9OK[^AH [0Z_HRFT!U:P!O?^/4&X3]_P#[G/S?A4EWK&F6#2+>
M:C:6[11^;()IE0HF0-QR>!D@9]Z\7DM;&'X"ZW/%# LD6I2^7(JC*;;SY<'M
M@'CZ^]=E<V.F7/QR5+JVM9#)X?WJLB*0["<C.#U.W/X4 =+K/C#1=%TBWU.>
M_MWM[J1(K=DE4B4LP'RGH0,Y)[ &L^]\07:>/O#UE:WMO)I&H6MS*VQ0<F,+
M@[\G(^;MCIWKSR6S32_!6JF';'HR>+XI+,YQ&D(FC#%3T";@P';@UVVKW5O<
M_%7P;)!-')&]G?E&1@0PQ'T]>AH ZZWU?3+R":>VU&TGAA_ULD4ZLL?^\0>/
MQJQ!<P75NEQ;S1S0N-RR1L&5AZ@C@UYO?6]WX?\ %^H^'K&)UL?%?[^WDC'%
MO-PMR?;,?SC_ &ABO28[>&*V2VCB18$01K&!\H4#&,>F* *)\0Z('@0ZQ8;I
MY#%"OVE,R.#@JO/)!XP*GOM4T_3$5[^^MK56SM,\JH#CKC)KQ6XM+"/X)>)[
MJ."W66/5IBDJJ-R[;L;<'M@'CZ^]=WIMT8_B_K]OJ1 ^T:?;-IA?HT*[O-"_
M\#8$CV'I0!OZ[XLTCP_96=U>7D(2]GCAM_W@_>;V W ]-H!W$],"I#=_:->L
M6MM<M/LLEL[_ &)0K/<<C;(K9SM'/08.:\H\IK#P; SN$TB+QJCV#,<(EH)^
M"#V3.[!Z8KL;R2TE^,/AVXMVA;SM)NCYB8_>#='@Y[CKB@".Z\7OK.KZY8Z1
MXDTW37TSR1;R2M&\=RQ3>Y?/.P#"_*00022>E=FNKZ=_9RWS:C9FU. ;@3+Y
M9/3ALXZ^]<GX4$%QX]\?Q,(Y%-S:JZ'!!!MU!!'YBLOPY:W-KJS_  _FAD:Q
MTNZ%_%,P^5[/=OA3/=A+Q[B,T >B:AJ5GI>G3:A?7,<%I"F^25SA0/\ /YUQ
MFJ^-);K3?">J:)>6XM=3U.UMKJ+"R.JR*6*DYPK #!&,\]JZCQ.I;PIK"@9)
ML9@ ._R&O-+JXL-0^'?PV@6:"XC&I:9%,@8, ?*.5;W]0: /5;#5=.U19&T^
M_M;M8GV2&WF60(WH<'@TVUUG2[V[DM+34;2>YC&7ABG5G49QD@'(YKS/7(KB
M#Q'\0[?1$\NZDT&!TC@&&+@2#( _BV\#OTK2T*X\*>(]0\-ZG9:]/>7]HC"U
MM(FA5X%9,.LB(BD*  .>,XQU&0#T>BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ ILD4<T;1RHKQL,,K#((]Q3J* *7]C:6(C%_9MGY9.2GD+C/KC%
M3/9VLEH;1[:%K8KM,+1@H1Z;>F*GHH JQZ;8167V..RMDM?^>"Q*$_[YQBF'
M1],9$0Z=:%4^XI@7"_3CBKM% %>/3[**Y:YCM+=)VSF58P&.??&:6XL[6[,?
MVFVAF\IM\?F(&V-ZC/0^]3T4 5'TK3I599+"U<,YD8-"IRYZL>.I]:BN=-B2
M*:?3[.Q345B(MY981A7VX7)'.WIT[5H44 8GA_3M4A,VH:[-:2ZK<(D;_8U8
M0QHF<*NXY/+,23ZX["MF2-)HVCE171AAE89!'N*=10!2_L?2S&L9TVS\M26"
M^0N 3U.,>PJ1-.LHKG[3'9VZ3_\ /58E#>G7&:LT4 -$:"5I0BB1@%9@.2!G
M )]LG\S5>?3;"ZN8KFXLK::XA_U4LD2LR?[I(R/PJU10!4GTK3KJX6XN+"UF
MF7!622%688]"1FII+:WEGBGD@B>:+/ER,@+)GK@]JEHH P==\/&[T*\M-%^R
M:?=SA09?LXVN P+(X&"58 J>^":R++PG<W5W;3:IHOANQ-O,DZS:=&6E9D8,
M,,478,@9^]D9'?-=K10!4_LK3CYN;"U_?.))/W*_.X.0QXY(/>IOLUO]J^U>
M1%]HV[/-V#?MZXSUQ[5+10!5CTS3XKU[V.QMDNW^].L2AV^K8R:6/3[**Y:Y
MCL[=)VSF58P&.>O.,U9HH S=-T:VTVYO;F)(EFO) \IBC$:\9QP._)))R22?
M8"W)9VLUS%<RVT+SQ9$<K1@LF>N#U%3T4 5?[-L?LJ6OV*V^SHVY(O*78ISG
M(&, YJ4VUN;H71@B-PJ[!*4&\+Z9ZX]JEHH JC3-/6_-\+&V%X>#<")?,/;[
MV,TJZ?9+=&Z6SMQ<'DS"(;_SQFK-% %,:1I@$@&G6F)/OCR%^;OSQS1+I6G3
MV0LYM/M9+4'(@>%2@/KM(Q5RB@##UNV\0%;.W\.RZ9:6_P R7+7,3LT:8 4Q
M!2!D<\'CI5^'3(+;14TN!$,$< @59EWJ5 Q\PXW>_K5VB@"EI6F6^CZ;%8VP
MQ%&6/0#+,Q9C@<#)).!P*?<:9I]W<QW-S8VTUQ%_JY9(E9D^A(R*M44 5IM/
MLKB=9YK.WDF7&V1X@6&.F"1FK-%% %2/2M.A5%BL+6-8W,B!85 5CP6''!]Z
M:-'TP1M&-.LPCD%E\A<,?<8J[10!S6H:1K%[J2V"/ID'AC:ADBCB87#D-DIU
MV!&P >,XR.^:Z6BB@"M>:=8ZBB)?65O=*AW*)XE<*?49'%/EM;>XMC;36\4D
M! !B= 5P.@P>*FHH JG3+!IS,;&V,I&/,,2[L8QC./3BEBTZQ@ADABL[>.*4
M8D1(E"O]1CFK-% %./2=-AL_L<6GVB6N=WD+"H3/KMQBK$,$-M$L4$211KT2
M-0H'X"I** (9;.VFF6:6VADE52BNR L%/4 ^AJ#^QM+$1B_LVS\LG<4\A<$^
MN,5=HH J?V7I_FB7[!:^8J[0WDKD#&,9QTQQ3[:QM++=]EM8(-WWO*C"Y^N*
ML44 48]&TN*5I8]-LTD:02EU@4$N,X;..O)YZ\FH?$=C=:GX:U/3[,1>?=VL
MD"&9RJ@NI7)(!/&?2M2B@#"\+:#'HFB6$,UE91ZA!:QV\TULH/F;5 SNV@G.
M,\UI/I>GR-.SV%JS7&/.+0J3)CINXYQ[U;HH K+I]DEU]J2SMUN/^>HB4/\
MGC-5]3M;I;2\N-&AL4U>2/;'+<QG8Q'0.5^8BM&B@#)T+3KRSAGN=3E@FU.[
M<27#0*5C7"A51 23M '?J23QG%266C6UEJE]J*)$+B\VAS'&$!52Q&<=6^8Y
M8]>.F*TJ* .>UW3]>U2^6Q@N-/AT&>'9>%D<W)R?F5"#M 9>,GD9)]*Z#8H3
M9M&W&-N.,>E+10!5L]-L-.#BQLK:U#G+B")4W'WP.::VDZ:\L\K:?:-)/CSG
M,*DR8((W''."!C/I5RB@ Q@8'2JD>E:="J+%86J!)/-4+"HVO_>''!]^M6Z*
M .!A\*:VL\\5]I_AC5DEF>3[?>0MYY#,2 R;2&P"% # 8 '%=1I?AW3=,LK2
M!+2W=[9 J2F%0PQZ?W1Z =!Q6M10!5N]-L;]HFO+*VN6B.Z,S1*Y0^HR.*=>
M6%GJ,'D7UI!<PYSY<\8=<^N#5BB@!J(D4:QQJJ(HPJJ, #T IGV:W^U?:O(B
M^T;=GF[!OV]<9ZX]JEHH JQ:9I\%Z]Y%8VT=U)]^=(E#M]6QDU!K]I<ZAX>U
M&QM!$9[FVDA3S7*J"RD9) )[^E:-% &!X2\/IH6@Z=;W%E8QZA;VD=M+/;KD
MR;%"YW%03G&<&M:#3[*UF::WL[>*5N&>.(*3]2!5FB@"K_9FG_;_ +?]AMOM
MF,?:/*7S/3[V,T-IMBUPUPUE;&9@0TAB7<01@Y.,]*M44 4O['TL1&+^S;/R
MR=Q3R%P3ZXQ7-S>$YKGX@C5[BQTR72%TP6*P.2S B3>&"%-OMC-=C10!"]I;
M26GV1[>)K;:%\ED!3 [;>F*8VG6+S1S-96[2Q@!',2EEQTP<<8JS10!SNBZ;
MKKZB=1\23Z?)/"KQ6L=@CA%1F!+-O))8A5''3!ZYKH6574JP!4C!!'!%+10!
M2&CZ6(C$--L_+)W%/(7!/KC%.N-*TZ\@B@N;"UGBB_U<<L*LJ?0$<5;HH AE
MM;>>V-M-;Q20$ &)T!7 Z#!XIAT^R:X6X:SMS.F-LAB7<N.F#C-6:* ,VYTQ
M;>UN9='L]/AU(QMY,DD.%WXXW;><9ZXJ#0-.U&W6>^UJ:UEU6Z"+*;56$4:(
M#M1-QR1DLV3W8^U;-% !5(Z/IAB2(Z=:&.,DHGD+A2>3@8XJ[10!6CT^RBN3
M<QVENDYZRK& Q_'&:2VTVPLYYIK6RMH)9CF5XHE5G/\ M$#G\:M44 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !112,RJ,L0!ZFDVHJ[V 6BH_/B_YZI_WT
M*//B_P">J?\ ?0K'ZU0_G7WH?*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?S
MK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\
MOH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T
M'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y
M\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!R
MOL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\
M/5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL2
M45'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/
M^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?G
MQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_O
MH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\
M]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?
M6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5
M/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?S
MK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\
MOH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T
M'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y
M\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!R
MOL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\
M/5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL2
M45'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/
M^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?G
MQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_O
MH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\
M]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?
M6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5
M/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?S
MK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\
MOH4>?%_SU3_OH4?6J'\Z^]!ROL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T
M'*^Q)14?GQ?\]4_[Z%'GQ?\ /5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y
M\7_/5/\ OH4?6J'\Z^]!ROL245'Y\7_/5/\ OH4>?%_SU3_OH4?6J'\Z^]!R
MOL245'Y\7_/5/^^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\
M/5/^^A1]:H?SK[T'*^Q)14?GQ?\ /5/^^A1Y\7_/5/\ OH4?6J'\Z^]!ROL2
M45'Y\7_/5/\ OH4Y98W.%=2?0&G'$T9.T9IOU068ZBBBMA!1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !3)(UE0HW0
MT^BIG"-2+A-73W!.Q6^PP>A_.C[#!Z'\ZLT5P?V1@/\ GS'[D7[27<K?88/0
M_G1]A@]#^=6:*/[(P'_/F/W(/:2[E;[#!Z'\Z/L,'H?SJS11_9& _P"?,?N0
M>TEW*WV&#T/YT?88/0_G5FBC^R,!_P ^8_<@]I+N5OL,'H?SH^PP>A_.K-%'
M]D8#_GS'[D'M)=RM]A@]#^='V&#T/YU!KFK0Z%HMWJ<Z.Z6Z;O+3[SMT51[D
MD ?6LK3]2\31:G;0ZWI=FMK=(Q$ME*[_ &5@-VV7< "",C<.,C&.11_9& _Y
M\Q^Y![27<W/L,'H?SH^PP>A_.L^S\6>']0ANYK75[62.T3S)W\S 1.?GR>J\
M'YAQQUJ*+QKX:FM);I-9M?)A*B5F;;L+9VA@>A.TXSZ4?V1@/^?,?N0>TEW-
M7[#!Z'\Z/L,'H?SK._X2W0/[(75/[4@^QO(85DR<F0=4V]=W!XQFIQXBT9H1
M,-2MC$;4W@?>-IA'5\^@[^E']D8#_GS'[D'M)=RU]A@]#^='V&#T/YU0UW75
MTG1DO8(#=37$D<-I &V>;)(0$!)'RCG).. #573M4URWOIK;Q%9V44 MS<+?
M6DC&%0I 9'+@;2 <@]" >F*/[(P'_/F/W(/:2[FS]A@]#^='V&#T/YUF1>,?
M#L^G3Z@FL6OV2W95FE+;0A;A<YZ YX/0TV/QKX;FG@@36+8RS[/+7<1G> 4S
MZ;MPQG&<XH_LC ?\^8_<@]I+N:OV&#T/YT?88/0_G50>)-&;6CHXU*W.H [?
M(W<[L;MOINQSCKCFJ8\<>&6MY;A=9MGBCD6)BA+?.P)"@ 9)P"<#/0^E']D8
M#_GS'[D'M)=S7^PP>A_.C[#!Z'\ZYR^\=Z9'=V]K975K*;O3;B_@N'D(B_=X
MP&(!X/SDGJ-AXS6I)XGT:WO[?3KG4K6.^F5-L6_NWW1GMGL#@GM1_9& _P"?
M,?N0>TEW+_V&#T/YT?88/0_G5"'Q5H5QJPTJ'5+9[XN\?DAN=Z$AE_WA@\=<
M#/2MBC^R,!_SYC]R#VDNY6^PP>A_.C[#!Z'\ZLT4?V1@/^?,?N0>TEW*WV&#
MT/YT?88/0_G5AF5%+,0% R2>PKAO^$PUW^QQXH.E6?\ PCFWSMGFM]K^S?\
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
MA@]#^=<M_P )9J@;^R38VG]O_;A9A/.;R,>5YWFYQNV[ 1C&=W'O21>+M5U
M6MAIVG6G]L'[3]JCGG811>0XC;#!<G<S+MX'!R>F*/[(P'_/F/W(/:2[G5?8
M8/0_G1]A@]#^=0Z)JD>MZ'9:G%&T:W,2R>6QR4)'*GW!R/PJ_1_9& _Y\Q^Y
M![27<K?88/0_G1]A@]#^=6:*/[(P'_/F/W(/:2[E;[#!Z'\Z/L,'H?SI]U=V
M]E");F58HS(D89C@;G8*H_%B!^-4;GQ'HUI;W5Q/J,"16DWD3L6_U<FT-M/O
M@@T?V1@/^?,?N0>TEW+?V&#T/YT?88/0_G4$NN:7 ]RLM]"K6L*3S M]R-L[
M6/L<&B'7=+N#;"*_@8W4#7$(#??C7&YA[#</SH_LC ?\^8_<@]I+N3_88/0_
MG1]A@]#^=0SZUIMKI"ZM/>11V#(LBSL<*P;&W'KG(P.IS5*;QCX=M].M[^75
M[9;:X9EB?=G<5^]QU^7OQQWQ1_9& _Y\Q^Y![27<T_L,'H?SH^PP>A_.J&H>
M*]!TK[.;[5K6$7$?FQ%GR&3^]D?P\CGIS39/%WA^+4(["35K9;J1T18BW.YP
M&0'TW!EQGKGBC^R,!_SYC]R#VDNYH_88/0_G1]A@]#^=5$\1Z,^LMI"ZC =0
M4D& -SD#)7TW8YQUQS4MKK>F7S6RVM[%,UU&\L(0Y+HI 8_0$@'WXH_LC ?\
M^8_<@]I+N3?88/0_G1]A@]#^=5+SQ'HUAJD.FW>HP0WDVW9$S<_,<+GTR>!G
MJ>E-A\3Z)/JDVFQ:G;O>0[M\0;D;?O =B1W Y'>C^R,!_P ^8_<@]I+N7?L,
M'H?SH^PP>A_.L0_$#PF(WD_MZSVI@DA\\'/(]1P<D<#!SC%=$CK(BNC!D895
M@<@CUH_LC ?\^8_<@]I+N0?88/0_G1]A@]#^=6:*/[(P'_/F/W(/:2[E;[#!
MZ'\Z/L,'H?SJS11_9& _Y\Q^Y![27<K?88/0_G1]A@]#^=6:*/[(P'_/F/W(
M/:2[E;[#!Z'\Z/L,'H?SJS11_9& _P"?,?N0>TEW*WV&#T/YT^*VCB?<@.<8
MZU-15T\LP5.2G"E%-=;(3G)[L****[B0HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@#%\6Z7<:SX7OK*TV_:BJR0!SA6D1@Z@GL"5 _&L'4-4USQ58SZ3I^
MBWNFK-9SI=SZC%LV,T3*B1D-\QWD$L,C"GN17<44 >5:Q9W^O6UM-!HMQIZZ
M9IPAFCNPL(G?S[=Q A)PPQ"PW?=^<<\FI#Y_B#QE?3QZ/=6X2[TF1X[B,!RJ
M-,2[ $XQQUYP ?2O2;VRMM2LIK*\A2:VF4I)&XX8&J^DZ'IVAPRQZ?;F,2OO
MD9I&D=SC&69B6/  Y/% 'G^JZ)JD7B";5%358+6+5YY"VG1H\VV2VA42*K*V
MY=R.IP,_,?>JE[X9U.]T72;>UTBZ+6,L^JR#4'4O.&E+?9B4"J#)]XKC"X4'
M->MT4 <WXIM;O4M#LKZPM9);JRNH+]+5\(\@4_,G/ ;:6 SWQ6/K5WK?B_2M
M3LK#1;FUL?L39&H1>3)<3;E(C0$\+M# L>"6&.AKO** /-=4L[WQ+J_]I0:+
M>V]JKZ= \=U#Y;R[+M9'.W^ZBYYZ<G&:BUGS[W5?&FB6FE7,USJ,MM%'=1Q@
MQQGR(^7;/R[/O#/7MDUZ?5>&RMK>YN;F*(+-=,KS,"?G(4*#^0 _"@#@8[#4
M/W.@'2;K[1'X@.HM?E!Y)A^TF??OS]XH?+V]?PYJ..RU;2_"OA6WCM+RU$0D
M%U-9V:37-NQ!P%#*VW<206P?PSFO2J* /((M'UF#P_!#+I.H---IFMVA5E#N
MDDLPDCWE>/F"GD<$D>M:5YIVI)8:YH0TB[EN=7N89K>[2,&)%\N)27?/RF,Q
ML<'DX&,YKTVB@#@K?1KV.UL?]"D5U\47%V_R\B-I)L.?8JR\^A%=[110 444
M4 1W$*W%M+ Y(61"AQZ$8KSLOK1\$?\ "$?V'>_VC]D_LS[9Y8^R>7M\OS_,
MSTV?-MQNSQCO7I%% 'G\F@7<6FZO##92%G\165Q$=O+Q1M:Y?Z (_/L:S=(T
M'48-:M+"[37I&MM7FO"?W*6:J7D<2B3RRS$AP"F[.6.< 5ZE10!R_C>WU)+*
MTU?1K5KK4].F+10KUD61#&R_0%E;_@%8VK>%Y;6VTK3X=/FU&UM=!O;258Y/
M+,KL;? W]G;8Y!]17H-% 'F%A8:Y>7$&Y-2GLX]3MGANM0M5ANMHCE#[]H&Y
M5)0!B,\GKUJL^EZI>>&M)T5-$O+>ZT73;F&XE>,!)7-L\(6-OX][,'X].<&O
M6** .6TS3;BV\464WV9H[>/1$MRVW 5PX.WZ@9K,CU/4M!\0>)TB\.:K?27E
MXDUH\$2B%_\ 1H4Y=F 4;D()[5WE% 'FMAX3O]*TC6[)K<S3'PS!9I*B\2S
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
MG"CHW56" $'\:TJ* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
AHHH **** "BBB@ HHHH **** "BBB@ HHHH **** /_9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>16
<FILENAME>exhibit101-ptagreement005.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement005.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !113$FBE9UCD1VC.U
MPK E3C.#Z'!% #Z*** "BF2RQPQ/+*ZQQH"S.YP% ZDGM3E8,H92"I&01T-
M"T444 %%%(2%!)( '))[4 +138Y(YHDEB=7C<!E=3D,#T(-)'-%*7$<B.8VV
M.%8':W7!]#R/SH ?1110 4444 %%,$T1F,(D0RA0Q3<-P'KCTI] !113#-$)
MEA,B"5E+!-PW$#J<>G(_.@!]%%% !1110 4444 %%%% !13%FB>1XTD1GCQO
M4,"5STR.U#S11R1QO*BO(2$5F +$#)P._% #Z*** "BBB@ HI&944LS!5 R2
M3@ 4D<B31)+$ZO&X#*ZG(8'H0>] #J*9YT1G,'FIYP7>8]PW;<XSCTSWI] !
M1110 4444 %%%% !1110 445!;WEK>!S;7,,^QMK^4X;:?0XZ&@">BBB@ HI
MGG1"<0F1/-*EQ'N&XJ#@G'IDC\Z?0 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%,\Z+SQ#YB>:5W[-PW;>F<>E/H **** "BBB@ HHHH **** "BF&
M:)9EA:1!*P)5"PR0.I J.>\M;5XTN+F&)Y3MC61PI<^@SU- $]%%% !1110
M45&L\+R21I*C/%@2*&!*9&1D=N.:6*6.>)989$DC;E60Y!^A% #Z*9+-%!$9
M9I$CC7JSL !^)I] !13(YHIM_E2(^QBK;6!VL.Q]Z?0 4444 %%%% !1110
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
M^!O#^H^&=$GBU%C=W$)-M:["-QM8F;R5Y.,X8GJ.H':@"GI_CJ;Q!X;?5/\
MA%+M]'ELIY7=IHCNV$J8]I(SD \].".>IK7'B>\MM+\"KH.EV]O8:L8@(3-M
M\M/*+B(87IP,M[8QSQ9\+Z+J^E_"8Z%=Z<ZZE';3PB)98R'+ERI#;L8^89SC
MO5-O#NNP^&? @BTWS+S0I8?M5L9T4E5A,996SM/)SUSB@#=AU6U;X@7=B="*
MZM%I2S&[#(6EB,A C4YZ;@>I'3I67;?$MKC0]-UQO#]U%I=U=?999VG3,+&4
MQ [>K#(&>F,\9Q5Z+3]53XFSZW)IK_8FT=+3>DL9S*LC.0 6!QS@$@<^E<TG
MA?Q OPFLO#YTE_[1AOQ.R">+;L%T9L[MW]TX^OMS0!VEWXF9=8U#2]-L?MEU
MIULES<AI?+ W[MB+P<L0I/8=.>:L^&/$$?BC0+?6(+6>VM[@;HEF*%F7U^4G
M'.1@\\5QFLC5IO&VI7>BZ)/=+]CBM+J2ROX87W'+%)!(""RJRX*G(#=3D8W=
M$U"[M]#TZRTCPP]JEK=I8W5G-<HILX@H)D# D28!4\')SZYH ZZN/^(?@J'Q
M?H1\B*%=8M")K*=T!^=3D(V>J-T(/'.>U=A2,2JDA2Q S@=30!YUIVI67Q.T
MFPTZ?3DCAM65]6MY(_\ 42QM@0#/0EER?]@8.-PKJ9]86VU8:!I%E%-=PVPN
M'C,GDQ0QD[5!(5L$D'  Z YQQG(\"Z5JNE:CXF?4=/>WCU'59;V!S+&V48
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
MML&)"JSJ&RQ(. !T&3CC/-Z?X.U+0+OP';6UJUW;:(ER+R=)$4;ID(.T,P)
M8D_3U/%:\NDZGHWQ"N_$%E9O?V&IVD<-S#%(BRPR1YV, [*"I!(/.0: ([GX
MC01>%GUV+397CM;O[%J$$DH1[.0,$.[@@J"1DCL0?7'1S:I,FKQV,5F)P;9K
MB1TE&4P<*N" "6.<'(^ZW3'.)HGA!5T/Q!;:K&N[7[NXN;B%3GRED&T+GH2%
M )([YQZU-X)TC5-&\/ :TXN=4"B%FC(^:.(;(P"3W W<GJYH H:#XKTBW\$6
MFHV.D&QCNKV2UMM/BVAGG,S)CC@9(+$] ,]<5G6TSV_QKN;G4+&"Q9/#C22R
MQ2;TD43K\Q;:IR "#D=O2J$'@[Q'%X&T=(;)(]8T;6'U*.VEF39<*9)&V;@2
M 2LF,GN/QK4FT;6_$'C.:_O-'?3]/N] ETR0RW,;21L[Y)PA(/'OZ=.E %V/
MXCV)U#1XY(H?LFKRB&VEBNUDE1V&4$L8'R;O8G!X.*[:N&\)MXUM+2RT+5=(
MM8H[$)$VJI=*ZSQ)@#;'C<&8  YP!DGVKN: "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***P_&>MR
M>'/!NK:O"H::UMF>,$<;^BY]LD4 :LMY:V\J137,,<C_ '$>0 M] >M3!@W0
M@X..*Y/P7X?LD\(6-Q>P17M]J%LEQ>W-P@D>=W4,=Q/4#. .@ %2*UGX)M;3
M2+&(S2ZC?2+8VI?: 6S(^6YPBC<<X/&!@T =317+)XU@M-1U73M<MUT^ZTZT
M^WL4E\V.6WY!=&VJ>""""!STS4<OC.:P&CW6J:4+73M5E2&*=;C>\+R#,8E3
M: N>F0S '\Z .MHKA9_'NJO+KD6F^%)[R31YMDZM>(FY=@?*\'+8/"C/3J.
M;<?Q TV]L=*GL'MO,U*U:ZC6]N1;I&BD*=S8;YMQQ@ YP>PH Z^L76/"FD:Y
M>0WMW#,E["GEQW5K<202JN<[=\; D9['BN:'Q.5]&M+Z/19Y))-6729XHYU(
MCE+8W(V/WBD'(( !]JUH_$>N&:"TG\-_9;N19I6,UWFWCCC( )E5#RVX$+C@
M YZ<@&YINDV>DPM':(^7.7DEE:61S_M.Y+-^)JP;JW6Z6U,\0N&0NL1<;RH.
M"0.N,D<^]>?:CX[U'4?"WAC5]%M(8DU75H;299YR&0B4JR JI!4E&!;T/0YX
MW?[6B_X6#9:7=:+"FH/ICSK?AU?:H9 T:G:&*Y/4XZ=* .IHKC;CQXT?AZ3Q
M+!I?VC0(I&#3I/\ OC&KE&E6/;@KD$_>!(YQVJ6X\97+>)_[#TS1C>22:<-0
M@G-TL<<B%PHR<$@=><$]..X .MJ*>ZM[55:XGBA#'"F1PN3Z#-97A3Q"OB?0
M(M2^RM:R&22&:W9PQCD1RK#<.HR.M<7XIU"3PIXZN-<U[1GU/P[=6L4"7<<0
ME.GE2=X*'HK$@D^P'.,4 =K/X9T6]\11:]-;"748$$:.96*J 21\F=N1G(.,
M\ULUQFE:IX;\.>$I-3T>Y@FTJ[N]UJL3A4#RE5"9/"@-G.<;1VXIB?$$"^U2
MQ>PAGN+*Q-_&UC>":*:,'#+O*KM<'L1TYH [:BN!?Q_K*^%7\2#PDYTT6$5Z
M&-\N]@PRX"A2?E!SDXR.>#Q73_VS))=:9#:V\5PM[ UPSI/PB +ROR_,"74#
MIU^M &E!=6]T'-O/%,(W,;F-PVUQU4XZ$>E2,-RE<D9&,CK7%:/XMTZWT+5;
M]-&6P>/6)+$VL)4M<W1=4SD #<S'D\\#.:T7\4W&FW.I)KFE/9VUE9?;?ML#
MM- ZC(*;BBXD&/NXY% &CHOA^P\/QW*:>LRK<SM<2B29I,R,<LWS$XR:U*XZ
MV\>1OXAT[2[BVMMFH(YAFL[P7!C91NV2J%&PD=""P)!'O5OP_P"*I?$,.GWM
MI90/IMZ&(GBNM[PD#(61-HVMV(R<'CTR =-16;K>J2Z38QS06,U[-+/'!'%$
M#@%V"[F(!VH,Y)P<"N:N_&U[_9?BY;:QM5U3P_#YC@W)>%P8RX(8(#D '*D#
MD8SWH [>BL;PG=7U[X6TRYU%8Q/+:Q.624R;P44[CE5P22<CGZFL:7QIJ4FH
M^(;"P\.F>?1O+9_-O%C6170OP0IP<8P.?<CN =E17#P_$&6:W\/ZC_8DB:/K
M,T5O'<O<+YD<D@^7,8'*Y&,[@>^*TH/%4T]]XELAIZ"XT01L?](^68/&7'.W
M*\>QYH Z:BO/;OQGJ]^_@BXTNSMH[;6V,DD<URRMQ"SA"0AP.ASR20!@=:W;
M3Q1<7.J>(M-.G1K<Z,D+_P#'P2DPD0N.=F5P%]#0!TM17-S;V<#3W4\4$*<M
M)*X55^I/%<S8>,)]5TG0+RQTB1WUB)IOWDA$5LJKN/F2!3@G@#CD_2N6\:Z[
M;^+/@QK=^UHD<MO/Y#(6$@22.=5)1\#(/8X'!H ]/>YMX[B.W>>)9I<^7&S@
M,^.3@=3BI:X;Q##&OQ:\&3+&@E>#4 S@8+ 1I@$^V3^=7],\8/=Q>(A?6$=C
M/H;LLT37&_<H3>),[!A&'0X)X/% '5456T^>XNM.M[B[MA:SR1AW@W[_ "R>
M=I.!DCOQ7.)XQNKFSL]4L-$EO=(NKH6ZS02%IMA8KYWEA<>7D9SNS@@X[4 =
M917,S>*;F?\ M=]&TQ;^+2I##<%KCRVDD50SI&-IW$ @<E1GCWJDWQ!BN)O#
M?]E:9-?0:]'*T$HE5-A1"Q4@]\C!].>N,$ [.BN+B\<7SZ)K]RV@_P#$QT.4
MI=6276X.H0/N1]G.5.<$"M>W\0O>VVA36EM#,-402G$YQ%%LW%_N_,!E5[<L
M/P &7G@K1+S5)=2\N[MKN?'GR65[-;>=@8&\1LH;CN>:V;2SM["U2VM8EBB3
M.%'J>22>I)/))Y)KB[WXFV=K!%?Q0VUQICW/D,T5X#<JN[9YGD[>5R,_>SC!
MQVJ:X\;ZE_:'B&QL?#C7$VBB-Y/,O%C6160OP<'!QT'/?)'< [":ZM[=HEGG
MBB:9_+C#N%WMUVC/4\'CVJ6N+OO%6GWEKX/OWT47<&KW4)MI9BN;61T+!L$$
M[@ PXQ]:=K?CZ'3?[4:TAL[K^S&VW$4E\(978*&98DVG>0".I&3D"@#LJ*XT
M>.9KO7;72]+T26Y-YI0U*WEEG6)2I90 PP2OWN3R<]CVRM7\=ZI=>!K?5=,L
M8K6Z;4TT^[BFG),+B81L%8+AL],\8!S@GB@#T>F3316T$D\\J111J6>1V"JH
M'4DGH*9&UR;0-)#$MSMR8UE+)N]-VT''OM_"O/=+\4ZE=_#S7M9UW2;6^MX9
M+L26\<^0Z1NRLA#(!M"KC/)/H,T >C(Z21K)&RLC %64Y!![@TZN0F\7-87/
MAC3K30V==8MV: 1S*BP[(M^S&.F,#/&!Z]*J)XZU>6VUI(_#(.H:-(1=P_;P
M(]FP."C[,L2IX&T=.2* .ZHKEG\<6+V6CRVQMUFU6T^V0K>7 @1(\*26;!YR
MX  !SSV!-4+/XD6EUIL,KVT=O=R:FVF%9KG$ E"LVX2[?F0A?E(')(&!UH [
MB@D 9)P!5'3+N[NX)3>V0M)HY6CV+)YBL!C#*V!D'/I69=:Y)>ZKJ&C:;IT%
M^]E$AO!<3>6@+@E8Q\K;F*C)R  ".>: -RWN8+N$36TT<T3$@/&P93@X/(]"
M"/PJ6O*_A_XA;0OAWX-A-B'AU*]DL@1+M:%FEE8';C!&%/<5U<OC"2'4O$ED
M=,+R:+;1W/[N<?OU<.1U VD!#GK0!TL]Q#:P23W$T<,,:[GDD8*JCU)/ %8V
MJ>%-&UR]BU*>.9+Q8PBW=G=202%.NTM&P)'/>N:N_&EU>^![O6M0\'^;HTFF
M)=A9;J-A,&&61E(R !SG!R,<#I6K>^+9M/U;0](M-#:9M3M9)8"DRHB;$4[>
MG &X<\<= >E '0Z=IEII5N8;2-E#'<[R2-([GIEG8EF/N2:N5QD/Q AB\+ZW
MJ^J:>]I/H]TUI<VT<HEW294+L; R&WKR0,9JX/%-[%XNM?#MWI"K/<VQNDFA
MN@Z! 0K9W*IR"1P <@_A0!T]%9NMZI-I5I#);V$U[-/<1VZ1QY 4NV-SL =J
M#J3@XKGF\>-%8>)Y)-,#W7AX!IXK>Y#I(IC\P%7('8$$8R".] '9TR::*VA>
M:>5(HD&6=V"JH]23TKDK/QK=2ZQH5K>:(UK:ZW"SVMQ]I#L'6/S"K(!P",X.
M<\<@5C>.M<?7OAYXGDL=,ANM-MXYX/M$LV&+H"K/&FT@A6SR6!.TX[9 /1T=
M9$5T8,C#*LIR"/44ZJ&A_P#(OZ;_ ->L7_H KG+CQXT?AZ3Q+!I?VC0(I&#3
MI/\ OC&KE&E6/;@KD$_>!(YQVH [*BN>MO%'VKQ9)H<5K&P.FKJ,%RLV5D1G
MV@$;>.><\\5S.J^.M5O/".FZII=E!;O<ZRFGS++<$E<3^6=I"<AMI&>P/0F@
M#T>HGNK>.YCMGGB6>4%HXBX#.!U('4@9&?K7.W7BJYBU6XTBWL;6;5+:S6[D
MMFO"ADW;OEBRF7QLY)"@97UX;<ZQ;CQUH=A<:*AN[FTFE@OG*[H0H4NB\9YR
MH/2@#I9YX;6!Y[B6.*)!EI)&"JH]23TK*E\,Z+>^((/$,ML)K^.-4BE,K% !
MD@A<[<C)P<9KBO'VN/X@^&OB.XLM,AN=+A66%;B2;#LR':TB)M(*JV1G<"<$
MCMGH9?%<.GK;:7;FQ:]CL8KAQ>7@MD"L"% ;:Q+$JW&. .3R,@'6T5C>%O$4
M'BKP];:M!!+;B7<KPR_>C9201GOR.#W&*SY_%MQ)#J]SI.EK?VNE2O#<,;CR
MWD= #(L:[2&*YQR5R01[T =/)+'#$TLKJD:#+.QP /4FHK.^M-0MQ/974%S"
M20)(9 ZY'49'%>?^+_$$^K:9X-OM&6";3M2U>U8&6=HS(<.X1E"' RH).205
MZ'K7:66G0:7!=W-KIL,5Y=M]HN8[=^))MH!^8@>G7 SUQ0!IT5P>E?$6>^T"
M/Q#=:!)::(UO)(URUTC,)%DV+&$X)W'HW S[8)OZ?XW2Y\40:'<06NZY@::"
MXLKP7,>5^\C_ "KL;'(Z@^M '6T5PTGQ$;^P]-UV#2#-IFI7@M+=A<A9<LY1
M&92N "5_O$C(]\:]CXDN+WQ#K&B_V<D=SI\$,ZDW&5D$@; )"_*1MYZT ;L]
MS;VJHUQ/'$'<1J9'"[F)P ,]23VJ6O+O$6LP>*_!G@WQ +,0-/KMDR(Y#M'^
M^VD!L=\5TVO^+[K1EUF:/2#):Z3 DTTT\QA$VX%BL7R$.0!SR.2!0!U=(S*B
MEG8*H&22< "N1U+QM<6^JZ5I^G:'+?2:I9275LQN%B#;55MISG'WAR?UK9O
M^H>%)CJ-BL,DUF6FM799!&Q7)4D<-@]_:@#2@GAN8$GMY4EB<922-@RL/4$=
M:DKR?PGXRO/#G@/PJ]]H,HT.2""W?41<*3&S<!C'C.S)QG.?;IGLH/%4T]]X
MELAIR"XT01L?](^68/'Y@YVY7CV/- '35%-=6]L8A//%$97$<?F.%WN>BC/4
M\'BN6MO',5[:^'3#;0Q76N6K7,$5U<^6@"A24W!3N;YQ@ = 3VY9K.O+%%X;
M?5?#JO+>:I';HLKJPM)LL%<$C)("L00!UZ\T =C17'S^,M2;7-<TC3_#K7-S
MI<<4NZ2[6-95<,>N#@_+P,'/?&*?%X]L+G1=$O81#'-K$)FABN[@0HBJ!OW/
M@]"0. 221QC) !UM%<-;?$FTETZ62>VBM[J+45TY@USFW+L"5<3;>4(!YVYS
MQBM._P#%<ND:>9]4LH;61K]+*$M<_N7WJ&$AD*C"\D?=ZC% '35BZ7H^D:1K
M-^]I,PO[[]_<QO<L[/C"[]I/&.!D#%6]+O+R[6Y%[9+:O#-Y:;)?,25=JL'5
MMJ\?,1TZ@UQ-\T]E\:)I-,TU+F[E\.@E/,$2L?M!^9WP>P Z$]./0 ]%HKD+
M'Q[!>^&]-U'["\=]?W;6,5B9 2)U9E8%\?=&QF+8Z#IGBIU\63Q:S>Z)>:='
M!JD-I]MMT6Y+17,0."0^P$$'@@KZ=10!U%%<<OCO?X?\,ZPNF_N-<NH+;89_
MF@,I.#]W# 8/I0/&6J7'B35-&L/#4EQ)ILUNLTC7:(/+E&=XR.H'.W///3C(
M!V-%<QHOBN77FMI[&RAET^:XE@>5+K,MN4#X,D>WY<E ,;N-PK5US5)-(TPW
M4-C/>S&1(HX(0<EG8*"2 <*,Y)P< &@#2HKD!X[CMSXFCU"S6.;0(4GF%M-Y
MRR(RLPP2JD'Y2""./6M?2-6N]1G_ 'EI;"U>!9H;NUNO/CDR2"H.Q>1P?QH
MV**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M:5XLT/7[;7M)T^TO_M-A%9ZAIYN_+*O'G9(DA7!X8@@C_P"MZ%10!4TS[?\
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
MQG"NV> 2!Q]*ZC39?%=]9W$FLZ?96;B!HX[6VN?-\YS_ !EB!M QP.>IST%
M%?X6_P#),/#W_7FO\S775QOAG3O$7ASP5X?TF.RLY;JVDC@O-\YVB')W.A Y
M/3 ..]=E0!0N=%TZ]U!+Z[LX;B=(O*0RH&V*3DXR.,\9^@KS_P"%6A:7J/P^
MM'N;&W>6+4)I4E\M=ZLEP64@XSV'X<5Z9*SI$S1QF1P.$! S^)KD_AQH>I^&
MO"HTO5(8EGCGEE#0R[U8.Y;T!R,XZ4 <GH^NWWA;2_&NH6.CPW5E9:_=2W&Z
MX\HA,1Y$:A3D@<\[1Z$]NUU+Q?!#?+863V7VDVJW9-[<^2@1R0@R 22=K=N
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
MZAA\RY@?*GZ$$?A6IJ_CF>W359-*M(;L:9*8G@9G$EPR@%UCVJ0",X&>I!&
M,$@':UFZ9H&FZ-/=S6,+QR7<AEG+3._F.?XB&)YX'-3VUVU]I,-[;1,CSP++
M''< H5++D!AU'7GTK@_#'C/48? ,.LZRD-S<W=\]M:I%(099GN'14Y'RJ.,=
M<*/PH ]'HKF5\27=CXLLM UBV@1M1ADDLKFW<E7:,9>-@1D$ @@]#[5IZYJ%
MYI]M;FQL&NYI[E(.N$A5NLCD?PJ!_(<=: +.I:;9ZQIT^GZA;K<6DZ[)8FZ,
M/PHT[3;+2-/AL-/MH[:UA&(XHUP%_P ]:XUOB#<)H7BB[CLK2[N- ;YS#<D1
M3IL#AE;:<'!P5YY'6K=KXMU0>(]#L-0TNW@M=:@D>UDBN"\B.B!R'7: ,@G&
M">E '8T5E^(-<AT#3!=RKO:2:."&/.-\CL%4$X.!SDG!X!X/2L2Q\5:I=ZW>
MZ.NG02S):"ZM;N,R+;R'=@QNQ7Y7'7OD'/M0!U]%<9X7\9WWB:2&%-+CM[B!
MI$U6*25LV;JVU4!V_.S8)[# SZ9JZ9XEU.'Q-XSEU=K8:9H_ED^6[9CC$)D^
M48^8G/)X_04 =[17%0>-;YM6TJ!M-CFMM2! :W9V:U?;E1*=N-IZ;AT/KUK,
ME^(VLQ^&K_7VT*T6RTV^DMKQ?MA+E4D$9,?R8.,Y^;;]* /2**XN75M;/Q:3
M2$^S?V<FDFY"%V!.Z95+'CEAMX'3!//-3?$S5=3T7P)J%[I;QQS+L1I')!57
M=4)7'\7S=>W6@#I'U.QCU&+3WO(%O95+1VYD'F,HZD+UQ[U:KSOQ$^H1_$CP
M=(MI;2:@UKJ V+*1'TCQERN<8_V2?:M+3O&.IWF@ZG+_ &+YVK:?J)TZ2VMI
M2T;/E/W@8C(0!PQXR #0!V5%<./&=]./%5C;)827^C6RSQSQREH9 RL>0.05
M*$$9YXY%:_@6[U"_\$Z-=ZDT;S364,GF*Y8OF-3N;(&&))SC- '0T5R7_"4Z
MB-=\0:0]A:1W&G6B7EH7N"%NHVW<D[?DP5VGKR:-$\7W&O:!X?U&TM;<RZJY
M$D7FMB!5#%SG;R5*[>@Y(H ZVBN,F\9WLN@:CXBTS3X;K2K&252IE*RSQQ$B
M1TXP,%6P#]['49JU9^+_ .T/%&GZ;:P1R66H:4=2M[G>0V,J I7'^WG.: -_
M4-2L=*M&N]1O(+2W3[TL\@11^)JSD8SGCKFO+?&&O2>(_A#XPDN;2."2QN9K
M(JC[PQBD4;@2!C-=I=:[+_;T'A_3HHI+TVGVN9YB0D,6=J\#EBS9P.. 3GH"
M :MCJ5CJ:2O87D%TD4ABD:&0.%< $J2.XR./>K5<'\+S,;;Q2;B&.&;_ (2*
MZWQQMN56PF<' R/P%;8\07/_  G4WALVL6T:;]OBN/,.3^\V;67'KSD&@#H:
M*\_?XAWR^%+;65T>)WDU;^S9(EN3\I\[R]RY4;LXZ''7K6I9>)M7;Q+J.@W^
MEVD=Y%8K?VODW3,DD98IM9B@*L".P/6@#:L= TW3M3O-1M872[O"IN)#.[>9
MM&%R"Q' X'H*TJ\_TKX@:G=>&8/$U]HUO;Z1/;!HRMUNE,[2"-$V[<;23][/
M;.!TK0M?&%[_ &])IMQIGVF-K-[F&XL0[*67K"VY1ACV.>?04 =A4-W:6]_9
M3V=U$LMO/&T4L;=&5A@@_@:Y.P\97C>(]&TC4;.VAFU6TDN/)BF)ELV158QR
MJ1UPW7CD'CO4WA_Q;/XBE@ELH[.2U:XE@N8EE/GV>T/M,BXZDJ!CC&X8W=:
M-[2-&T[0=.CT_2K.*TM8\E8XQ@9/4GN3[FKU<3-XWO'\,W7BFPT^*YT6VDDR
MOFD32PQL5>5>,#&UB%/4#J,XJ23QC?W7B>VT?2--M;F*\TK^TK:ZEN2BE2RJ
M-PV$@?-VW$Y'3D@ [*J][?6FG6KW5]=0VUN@R\LSA%7ZD\5RVF>,=0U/PPE]
M#HQ?4AJ!TZ>WCD+1PNLFQI"V,[ !NZ>WO6+KWB;^WO!GC[3)DM7ETJS9?/MI
M-\4H>$LI'H1R",GD=: /2(I4FB26)P\;J&5@>"#R#4%IJ5C?RW$5G>07#V[!
M)EBD#&-O1L=#[5Q%AXLU?1G\-6VJZ-#%I&IK#:6UU%<[Y(Y2GR"1=H W8/0G
M'K4>C37MCK_Q$N-+LX[JZBNX9([9G*"0BW4[00#@GMQUH ]%J.XN(;2VEN;F
M5(H(D+R2.V%10,DD]@!7,V'BR75?#_A[4+&"WDFU=U!B\TXB&UFDYQR4VD'@
M9/'&:U?$M\^F>&=3OULXKP6UM)*]O*^U9%5264G!Z@'M0!HV]Q#=VT5Q;RI+
M!*@>.1#E74C((/<$5)7$2>,+VV3P?#9Z-;NNN0951<>6(6$/F!0-OW>G/4 '
MY3Q5+4?&>N#PKXP'V2SM-:T)2&9)6DB*M&)%=<J"3@]".OY4 >B45Q\?B:XL
M-/T6QN1;?VE>VQE5FD=D6-%3+L=N22748]SSQ6;/\1=1MO#\U\^@YN+;4DL)
M5\UE24.X598BRC<#GH<8]: ._FFBMX7FFD2.)!N9W8!5'J2>E5M/U;3M625]
M/O;>Z6)S')Y,@;8WH<=#]:X#QO?>)GT334OK"PM?,U^TB"17;2"1/-4ID[!P
M2.?ITYK9N-:2PUF^M+*STR'6#;Q7%],Q8)(QW"-<JNYCA3R>@QP<\ '945P"
M?$'4[F+PR;;P\8YM:::(PW4YB>"6-6)!&SE?ESNZX_ASQ5YO%FH+(NFS6UC;
M:Q%:K<72/,[Q1EF8(H*KDYV$D]N.M '8T5C>%M<?Q'X>MM2FL)[":3<LEM."
M&1@2#U R.,@XY!K"D\9ZG%#XK233;1;W0 )1";E@+B(H7#AMO&0",<\@C- '
M;56M-0L[_P _['=0W'D2M!+Y3AO+D7[RG'0CN*Q--\2SZM:^'Y[."VD&IVYN
MI?WK 11A5)(^7D[F5<''7VKE-7\6ZE_PKCQ?J6FV%GIM[I]]<6LAC<MDKM5I
M00HRY+<9 [9SC% 'HLNIV,%_!82WD"7EQDPV[2 22  DD+U( !JU7G/B-[]/
M''@.9K2WDO\ -\%1)2$/[CC+E<@=SP?8&ND\*^(;O6FU6TU&TAMK_3+LVTRP
M2%XW^4,K*2 >0W0CM0!NW-S!9P-/<S1PQ+C+R,% SP.346GZG8ZM:BZTZ\@N
MH"Q7S(7##(ZC([CTKC?'D^IIXE\'P6JVYA?4MP$DC+N<128#84\#KGGGM5[1
M=3=/$OB+1(-*L;6>V2&\>6%R%N))@V2WR@Y^0#/.: .DO-2L=.:!;V\@MVGD
M6*$2R!3(Y. J@]221P*%U*Q?4FTY+R!KY(_-:W60&14R!N*]0,D5YOKFN_\
M"4^!_!FN/:K;O=:]8OY0;?L_?$<' ]*V\*OQP+8 SX;Y/_;S0!V]%0PW=M<,
M5AN(I& R0C@G'X5-0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M#C-2T'Q!>:UX6U!VLIWTV>:>[)E:,'S$9-L8VG(4-P21G'O3=;T3Q)8^,/\
MA(_#)L;C[5;):WUE>2-&&V$E)%8 X(W$8QTKM:JWNI66F_9_MMU%!]IG6WA\
MQL>9(WW5'J3B@!-,CO8[%/[1ECDNV):3R@0BDG[JYYP!QD\G&>]8&K>$Y+_Q
MMI^M13B.V%N8;^'_ )[A'62$?@^<^W'>NHDECAB:65U2- 69V. H]2:KZ=J5
MEJUDE[I]U%=6LA8)-$VY6P2IP>_((H Y[P=X3D\+MJ:M,)8'N'^P1CI!;EC(
M$_[[=_P"^E8C>"-9NO!GC#1IVLXI]9OKB[MG25G51(5(5_E&/N\D9ZUZ-10!
MQEUHOB'4/$GA35I[?3XQI?GFYC2Y<_ZR/8 A*?-CKSCT]ZM^&-%U+2]?\1WM
MZEL(=3NUN(?*E+,H"*F&!48^[G@GK7444 <KXIT75=4UWPY=V$=JT&F79N9O
M.F*,P*,F% 4_WL\D5!)HNNV7CN_U?3HK&6UU2TAAF:>9E:W>/=R%"G>"&Z97
MD=178T4 >96O@KQ%!X \,:&R:<;O2M0@NY6^T.%9(Y"^ =GWCG'IQUKHFT+4
M9?B1_;LD-J=.;2?[/9#*3)N,F\G;MP1VZUU=% &1I7A70-"N7N-)T:QLIG38
MTEO J,5R#@D#ID#\JUZ** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH *R_$EW>6'AG4[RP:);J"VDE
MC,JDJ"JD\@=>E:E4]5LCJ6CWU@'V&YMY(=^,[=RD9_6@#A8O$>JZ9\./"^H7
MEK9W[7;6,3O([942; '((.Y\DGJ.>:V+KQ'K;>-;OPW8V%CNCT]+R*XGG;:0
MSE/F 7/53P,_7M67<>$O$=SX#T30I&TK[3ITUJQ99I C) 5(YV9);;Z #WK9
MCT35D^(=QXA*67V633$LEC\]]^Y79\GY,8);'7MGVH Y_P#X6'K@\&Q^)VTB
MR2TMKC[/?Q&X8R$B;RF,7&, \_-R>?3)WM7\57,>J:AINE1QM<V$2/(98)95
M=W!98QY8^7@ EC_>'!YQ@2>!M?D^&5_X8W::+JYNWG67[1)L56G\WG]WG/;]
M?:M*^T#Q38>+)]?\.RZ6PU*&)-0LKYY-@=!A7C=5STXP0,X_( Z3P[JTNN>'
M[/4I["XT^:=,R6MPI5XF!((((!ZC@X&1@URM]X^OA82:KI6F/?V<5TT/V6*V
MF:>9%D\MI$8+LZ@D+SD#J#P.UL(;F"QBCO)Q/<X)DD5=JEB<G:.RC. ,G@#D
MUQ6D^&O%_AZYNM*TR_TQO#\]Q)-#+,'^TVBR,6954#:V"3@D]^?2@"Y_PDOB
M"^\3:YH>FZ=IZR6$,$L,UQ.^UQ(&/S +D'Y0,=N>3P#EP?$+5Y_#>A>)3I5I
M'I5]<0V\\9G8S*SOY99>-N W8\D>E;EAH>K6/C;7=:V63V]_;P10I]H<.#$&
MP6^3 SN[$XQWKGXO VO1?#72?#(;33=6-W'.\OVB0(RI-YG'[O.3T_6@#4G\
M3^);KQ-KNAZ1I.G--IT<$L<MS=.$=9 QP<+G<=H '0<DMT!P=9\2+XL\&^%=
M4-JUK/\ \)':13V[')BE24JPSWY'Y&M'3)-33XK^+396UK,QL[#S%EN&CPVV
M3&"$.1USP.U.N? FH0^&='TVQEM);FVU=-5NY9G:-9'$AD8* K=2<#/0 =:
M-UM>OM2US5=*T5;42:6L8GENMQ5Y77<(P%(QA<9;G&<8/-84GQ$N9?#6F:]!
M8PPVCWPL=46=B6L7W["W'#*&QZ=0?7&G#X?U;1O%^J:SI2VEQ;:ND;75M<3M
M&8ID7:'1@C94CJ" <\^U11Z#HF@>";O1==OK8)?BXFNW=@GF,Y+2% 3GY<C'
M<8% &AJFNZA:W>K+96UM<0Z=8BX?S'9"9#N(CR ?X5W=/XE]<U@+XYUY+#PO
MJ<NDV+66N&&%8TN&$J2R1EU/(P$R".Y YZ\5H>'_  _J-K\-FL)91/J][:$S
MRW1*9D9 @WD _=4*O0_=JE)X1UP^&_!VFK_9WFZ%<V\TS&X<+((D*87]WU.<
M\]/>@"U!XUNM.N_$=MXBMK:)M'M4O?,LW9EDB8,<88 [@5QZ'/:G0>*]8_MW
M3K.32C/;7Z/F2&WG06<@7(61V7#*>FX <]JBO_!E[J_B#Q)-?&V33=8TU+$&
M*5FEC*[L-@J!U;IGMWJSX<L?&ULD%IKMYI4MM:+A9K4R"6[P,+OR,)V)QG)'
MIU ,0?$/7AX5/B232+!+&VOFMKN,7#-(5$_E9C^7'&0><9YX'&=5=2UN3XMS
MZ9YUM_9\.EI.L6&R \I5B?5OD^@'XYRI/ VOO\-K_P -;M,%U<WK7"R_:)-@
M5IQ-@_N\YXQ^OM70-H6KK\08O$,#60MIM.2RNHW=RZ%9"^4PH#9W$<XQUYZ4
M 3^-_$5WX6\./JMI9Q712:*-T>0J0'=4!'')RPX)'UJE-XFUC3[J'3M3M+*&
M_O)96MC;F6X1+= I+N H8MEPN!@'.<CO;\=Z'J'B3PQ)I>G&U6:2:&0O<2,J
M@1R*_P#"ISG;C\:K>*_#^M:C=Z/KFAW%I;:UII<>5<EF@FCD #HQ S_""#CM
M0!GGX@W5GH]Q/J^GFP>'4DL3>30R+;%'^[/A@&V\8(SP2.><U9UOQ=JVB>&W
MU7['8WR?;HH(I+><A)HI"@$BCG)RQ&-P''4U>:R\3W&FQM>C2;BYEF'VFQ)<
M6Q@V,"@8J26)(;)4 XQC YX?Q-X7D\,> ]32V6&WBO-:M)[:QCD9XK;][$,
MD \L"Q   S@=,T =3%XQU73/%J:-XFL+.T@N[:6ZL[FUG:1<1#<Z/N4?,%YR
M!BH[KQS?V7A2T\7S64!T.8QO)"I/GPP.P"RYZ,>5)3 QG[QQ6A=^&KCQ!KUM
MJ&M16\4%I:3V\-O!,9"S3 +(Q8JN!M& ,=R?:LB'P7K,G@E/!5_-9R:8C+%]
MN21O->V5PP7R]N ^ %SNP.OM0!?D\3:_=>*M7T'3-.TXO9VT-Q#//</M8/NQ
MN 7.?EZ#CJ<] :D'Q&BN/#GAK4IOL^FC6BZ-/=9:&!U!RI((SN((&2._T.G9
MZ'JMGXYU?6UCL6M;NTAMX8_/<.#'NP6^3 !W=B<8[UE:%X3UK2O!^E:!>VFC
MZC:P)-'>6\LK%)@S[D9<QGD<C!'?KZ %W7/$>I:7HFDW5WIEC-)<ZI%:2?O2
M416FVI(@P<Y7##)&,]ZR9I-9C^*WB(:%:V4MTVF6A)O)62-<-)_=!))Z=A[]
MBYO .J6WA#3M%L9;0_9=774!'-.^R")9?,6%&VDL .,D#UQ6T^BZS9>-KS7[
M&.QN8[VSBMY(9IVB,31EB""$;<#N]C0!CR?$"XNO!]EJIT: 7 U6/3KZVGES
M]GF$H0E<#YL'!'(QQUJ]<#_B]ED0!G_A'IO_ $?'5;4/ E__ ,(I#IEC-:2W
MDFJKJEY/.[1J\GF^:P4!6X_A'H .M:\NAZH_Q%M?$(6S^QQZ:]DR&9O,W,ZN
M6 V8P-N.OO[4 <SJ_BW5I?AWXRO[*VL].O=-OKBT+1DN"%"@N#@9<[N"1Z>E
M;VI:YJ&E7'A:VN[*QN/[0O!;M,&;,1V,P*J1UP#SGOTK.'@?5KCPGXPT>YEL
MHI-;O)[JWDCD=PGF!<*^4'3;U&>O2KNJ:!XAU0^&)I1IBS:7>+=7"K/(%(",
MFU#L.?O9R0/3'>@!FK>-;Y%U:31K$7?]F3&$P&"9WNG4 NJ,@(0C.!G.2#P!
M@E;CQO+-J?\ 9MFMM9W[:?%>6UIJ0:.2Z9PQ\M>1M*[0#]XY/3BHT\/>+-"\
M1ZG+X>NM*DTG5+@W4D=^)-]M,P =DV_?!QG!(_#J9/$OA.^\06-UIE[:Z=J-
MJT"K:75S*R3V\VW!D^5#W ;@CN.AX .R)F:V)0*)BF0'S@-CO[9KQO4=1U;5
M_@)K=]JTL$SR3289 0<B\(Q@G  P !Z"O7]/MGLM-M;66=[B2"%(VF?[TA
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
M%87NKV,T<//FQ(T@*,6S@DC&5 &,]3BN@U?QE>H^L+HUHMR^E-Y;1-!,YN9
M@=D1D!"'#  G.3V Y.,WA#QC+X4TOP[-+H[II5W;207GFR!IHH6!4,FSY3@
M9W'/ZUIGP_XMT7Q-J-[X>N=*ET_59%GN;>^\P&";:%9TVCY@0 <$CMR.M '7
MZ7?'4M)M+YK::V:XA60P3J5>,D9*L#T(Z5D>--=O?#6@-J]K;PSPP2)]I$F<
MI$6"EQCKMSDCTSS33=:[9>*=*TX/97>F26Q%S(VX70D 8^9@?*(R0J^N6]JW
M+^R@U+3KFPNDWV]S$T,B^JL,$?D: .=7Q3.GQ"3PW/\ 9!;S6!O;>92=TF&P
M4QG (^]GN*I7_BG4+?3?#MY/IUC/'JFJPVZ,68&*-V/ER!2#\Q49ZC&0.:H?
M\*VNY/#&C6DVI[M7LKE6FO5R"\)3R70'M^YP/J,]ZWO%^@:AK*:''IJVBII^
MIP7KB:1D!6//RKM4]<_AB@"EI>I:W<_%'7K"6:V-A:6ML4C ;*J_F'/NQ(Y/
MH!7*>$/$6J^&_AUHUXEC:2:3_:$EM.6E838DNG7<@ Q@%AP3SSTKMH]"U>S\
M>:CKEJUB]G?VD,4B2NXD1XMV ,*00=W7/'H:Y]/ VOK\-;7PSNTPW4-Z+DR_
M:)-A47'G8_U><_P_K[4 =,VO7VI:UJVEZ(EKOTM8Q-)=;BKRNNX1@*1@ 8RW
M/7&#BL>V^(4E]8^'+V"R1%U/4CIMU;RL=]M* ^[!'# ;/0=0?:KMOX?U?1?%
MNJ:SI:6=Q;ZND;7-K/.T9BG1=H9&"-E2.H(!XS[5G7/@*^M/#ND1:7/:RZI8
M:M_:TAG+1Q3R,7WKD E1\^ <'[HH N7WBG51=>,-/MHK5)]&LX[FWG8,0V]'
M;YE]1L]>?:M/P+<7]UX(T6YU"2.6:6Q@D#KG+ QJ<MG^+.<UD6OA76Y=;\37
MM_/8)%K=A%;;8"[&)E1U[@9'S]>^.@Z5N>$-.U/1_"^GZ9JIM#-9P1VZFU9F
M5E10H)+ ')QG&./>@#<HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "HKBY@M+>2X
MN9DAAC7<\DC!54>I)J6H+WFPN/\ KDW\C0!1/B31ETBUU4ZA$+"Z=(X)^=LC
M.=J@?4UJUY7H.NW?A_X/^#[BVM;:=9I+:VD\\GY \@7<H'4C/J,>]=+=>(->
MD\<7GANQMM.0)IR7D5Q.SM]Z0I\RC&?NG@?7/8@'7U3?5;&/5HM*>Y07\L+3
MI!_$R @%OS(KS_\ X6!XA'@E/%#Z=IJ6UK<?9[Z#>Y>0B;RF,1Z*,\C=GO\
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
M"5[VRDG<6H(:UE3;NB8[F#?>QD8/'3FD^'/!\6_]C)=_R2@#MJ*** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "H+Q)9+*>. (960J@=B%R1W(!_E4]%
M 'GO_"$:P/A[H?AQ9K$W&FW,$K3&1]KK$X<8&W()Z>WO6W'H>II\0+CQ$?LA
M@DTQ+(1>:VX,KL^[.W&"6Q^OM73T4 ><R>!-:D^&U_X7\ZP$]S=-.)_,?:H:
M?SL8VYSV_7VK?ET/4YO'UAX@;[(MO!8/:/$)6+Y=E8L/EQ@%<>_M73T4 >=3
M>!-=_P"$:U[18-2LDBO-0>]MF*/\X>42&.7_ &>"IQG(/X'2L_#&M_\ "7SZ
MS>W.G+!=:8ME+!;QOF,JS$!23R/FZGZ8'6NSHH \Z?P/K\GPPB\)/=Z:TL)A
M2.8;PNR.0.">"2QV@8X ]36S/X=U*T\9'Q-I1M&EN[1;:_LYY65&*G*.CA2<
MCD8*X(]*ZRJ#:WIJZXFBF[3^T7B,PMQDML&,D]AU'6@#C[_P'?2Z#+;6T]J;
MZ\UA=6NY)"RIN5U8(N 3@!57)],]\5JRZ)JJ^.Y/$BO8I#_9)L0CR,2K;_,W
MGY0,9XQD<<Y[5NZ;JUCJ\=P]A<"9;>=[:4A2-LB'#+R.Q_"KM &)X3NM7O-
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
M237MN]N'E)"KN!&> <XSTKG-0\)^((YM#UC1+VQM]9T^S^PSQ7&][>YAXX)
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
M9+F95^XLC;MH XS@9..3USJ>,/#8\5>'WT];IK2Y25+BVN5&3#,AW*V._/\
M.@"%KSQ797.II)I]IJ,$=EY]G+;GR#+.,_N65G;&>#NX'-9VC^++Z?QA:Z'=
MRV%TMQI[7)EM(V40RHRJT>=[*P^;L<@CGK3Y_#OB?6_#FI6.MZU:175S:/;0
MMIT+HB;L9=MS98G &!@ $^M167A37H_$>BZQ<WVF*;&R>SDM[>V=4V$J1LRW
M!^7Z = : .94?\6H^(__ &$M5_\ 0C727GBU=#;0--GN[738;NP#)>WD3/$T
MH"@1Y#*%."3DFF)X*U0>#O$VB/<V?F:S=7,ZRC=B(3')!&.<=O7VK3N-#U.X
MLH+&YATN_L#9);W%G<EMA=<XD4[3V[8].>.0#>TV2[FTFTDOA"MX\"-,(CE!
M(5&[;SR,YQS7*:?XMU&(^*;76?L<=]HYWPK!"X$T++F-\%R6+'*[01@C&>:Z
M#PQHG_".>&=/T?[0UQ]DA$?FMQN^@YP.P'H!7,75KHWBSQ_I.H:7J,5R;&%_
MMYM95='575HHY".A$HW@?[#4 :4>NZM<:[;^'%>RBU./3Q>WT_DL\:%FVJB)
MO!/(8Y+= ..>,.[^(&JVWA[59FMK-=4T;4HK&[C*,8Y5D=%61/F!7*OG!STQ
M[UT&I>&[Q?&,'BC2)H!=?939W5M<$JD\6[<I# $JP/?!R..*SM1\ R7_ (9U
MRU^V1IJNK7:7LEQL)C21&0QH!U*@(!GJ<D^U &JVNWL?Q%B\/LMNUE+ICWJN
M$82*RR*F"=V"/F)Z"KGB*_U#3[2WDL(K?#W"I<7%RX$=M#R6D(++NQ@# (Y/
MM6/:>'->?QK9^(]0O]/W1V#V<MO!"^W#.&^4EL_PCD_3'>KGBW0=0UK^R9M-
MNX(I]/O5NO*N4+138!&& .<C.0>Q% &#%X^O$T'Q+=RPQ7$FC7B0B:"!PKQ-
ML/FF/);Y5<L0#R%X(S72>&M7EUF.>Z34-/U#3V"&VN;(%<GG<K LV&''IUK&
ML?"WB+3;W7KRWU:Q:74KJ"Z3-NR@,NP.I^8X4JI4=3\V<\5H>'/"RZ+KFKZL
ML-M:'4A$&M+0DQ*R;LOD@99MW/ Z=^30!)KNJ:I9ZI#;V[6=G9/;N_VVY7S=
M\V0%A6-75B2,MD9Z8'-2>"]?D\4>#]-UJ:%89;J(L\:$E0P8J<9[9%5=1\/Z
MM)XWM]>T^_M4B%B;.2&YB9_+R^[?'@CYCP#GT'6I? WAZ\\+>%+71KR[AN3;
M%EC>*,J-I8D9R3D\^W]2 9DOB?6K?5O%&F3MIT4^G6:WU@SPN%FB(;)?Y^S+
MM./K[5-H'BB^U_1O#=U;-:"XU /)>(8&Q$L8Q(%&_((D*ISG[V<=JN:YX3CU
MGQ)H^K^>8OL6]+A%'_'Q$2'5#["1$/TR.]'ASPG%X>U?6[V.8O'?W)FAB/2!
M6 9P/3<Y8\>WI0!S>I>*==NO!WCJ6.2TLKO1IIH8988V;*+$K9Y;[WS=>@]#
M5J77O$&CP^$+&(:==?VH1"SNCQ[<0EA_$WIR>_H*GB\%7LFE>,+"ZNK=5\02
M2RH\08F O&$P0<;L;0<\4Z3PMKEPWA:6XN]/>71I?,<(KJLG[LQ[1UQP2<GO
MVH KP^-]0TR#Q3%KD5K-=:)+ J/9H\:3B=5,8VDL0=S 'K]*MP^(O$$.N_9I
M=-?4+"2TDE$\%A-;&*5!D1MYA.X-T!'>H+SP'/JUUXN%_<Q):Z^L&PP$[[=H
M5 1N1AN0&[=,>]7-*TGQC]DDAUO7+&1XH7CMI+.!HVD<J5$DI)QQG.U0!GGL
M* *_ACQA<>(;87MM=:??0I9O)<VEO$T=Q;W V[8BK.3S\XS@<J/6I/!WBN;Q
M0UO/#?Z=<0&W8W=O%$T<]I/E<(P9R2.7&<#E?>F#PA>W'B"+7IC8V6J164UL
M\]CN!NG< !W! P%(R!\QR>O',UGX4N'\66'B*^2Q@OK6WDAFEL@P-X6 &7!
MP!@D#+<GKQR ==45Q;PW<#03QB2)L;E/0\YYJIHL6JPZ5$FM7%M<7X+>9);1
ME$(W';@$YZ8K0H X&_\ ^2ZZ/_V Y_\ T8*;XSMVM/%7@I=/AB$K:E<NJN2%
MWM"Y8G'N2?>M6Z\.:E/\1;/Q*DMJ+>VLWL_();>P9MQ;., ]./UJ?Q#H-]JO
MB#0-1MI;=(]*G>=DD+9DW(4P,#C .<\T 8T/CB_TVU\3QZW%:S7FBW$$2-:(
MZ)/YX7RAM)8@Y< X)]JT=-US76\4Q:?<V9N=-G@9_ML=A-;>1(/X&$A.X$="
M,<\51O/ 4^K3^+EO[J*.WU[R&C,!.^W>%5"-R!NY4-VZ8]ZU?#VG^*X7C/B/
M5K&Y2W7;$+*!HS,<8WRDG&<9^50!DY["@# ^)T[W&J>$/#[DBPU35%%XO:5$
MPWEGV8GI[5W.H:;::II=QIMW"LEI<1&*2,C@J1BLOQ;X7@\5:9% UP]I>6LZ
M75G=Q@%H)E^ZV#U'J.]+:Q>*)81;ZA-ID7&'NK3>78=RJ,,(?<LV/0T 5AK5
M]J/B34M!TB6VA?2H(6N)[J)I=TD@)10JLO 5<DY_B  [USS_ !#U670+"[M[
M"T2^774T74()68JDGF!6*$=B"""<XST.*WG\-7VF^,+KQ!HLL#?;[>.&]M;I
MF4.T8PDBN 3D D$$<^HK.N_ 5S_8UG:VEU;FY&M+K5Y-*I42R^9O*JHS@'@#
MDX '6@!\>N>*V\77WAICH_GBR2^M[L0R;(T+LA5DWY<Y'4,HQS[5GCQ_K;>$
M=%U..QL6O+G5UTNZC+,$W>:T9*=QG;WSC/?%=$NA:BOCV;Q'OM3$^FK8B#<V
MX$.7#9QZG&,>_M7$Z[H&H>&_"6B:?+<6KW#>*8)XI%#;09)F?# \X!/8\CTH
M Z.S\3^(['Q=<^']:LK"XFEL7O=.DL2R"7:<&)MY.&R1\W _HW3O%^J'Q-HN
MDWIT^:34K69YH[9&'V2>-58QE]S*^,D'&"",]P*O7WA6\UN^O=1OKF.TNY--
METZT^RL7^SB3EI-Q"DMD+@8& .ISQFV/@SQ!#?>%KN;4-+4Z'#+;^5#;.%=&
M15R#N^\=H[8&>AH SI_'7BF+PKK&O_9]($.CZA-;S0[9"TZ1R!#M.[Y3CG)S
MGT'?IKKQ!J5CX]T[2KH6BZ1J5O(UK,(F\PSH 3&3NQRN6!QS@C'>L>7P)JLW
M@GQ#X?:[LA)JU[-<B8;L1"1]Y&,<XQCJ,Y]N9_&HL=:TNW\/C4[>+Q)'<V\E
MM';3!IH)0P/F!>NT)O))'3/M0!TN@W]YJ<-U=3F VQN9$M#'&5+1JQ7<V6.<
MD'!&.,'O7/ZKXPN8?$]_H-O=6%E?11(]E#?1-B^++D['WJ.ORXY.03].OL[2
M&PL8+.V39!!&L4:^BJ, ?D*Y7Q3X4O?$]MJ>G78T^>QNBIM)I@WG6)V*I9.,
M,<@L.5Z\DB@#-NAJC?&#4TTEK2.X;0H/WMTK.B?OI/X5(+?F/QZ&WI?B_5M7
M\&Z-JZ6UE;/<SO%?W$K_ +FU5&=6< L"<L@ &>-W?%7[7P[J%IXVN-=6:WEA
M?3H[%(W=M_R,6#LV,<EL'\ZPK+P%KFG:/X?MX-1L6N-'OI[D++&[0SB4N>5Z
MAEWG:?QH KZGXCN/$7PN\<B[6$RZ?]JL_,AC9%E58PROM8DKD,.,GI5K6/\
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
MHQP?:'AV-Q'D+G.,=3CK5+Q1KSZ+%IUO;+&U]J=XEG;>8"40MDEV ()"J"<
MC)P,C.:Y>*/4X?C'=B:[MY9AX<S!+Y!  ^T=&7=SSGH1QCZD ]&HKSN'QQK$
MW@?PGKVRR6;5;ZWMKJ/RF*[9)-I*?-P0!WS5S4O%&L7;ZVN@1;I=+F-O%$UD
M\PN9517*E@0$!W!1W&,GCB@#N**I6%Q=7VC6]S-;FRNYH%=X91N\ER.5.",X
M/N,UYSX<\4:GH_@*ZU:_NHK^YGU66TMT:(H6F:X* LP8C;WP , 8H ]3HKDK
MC7M4T/Q?H^DZG);W=GJXD2&>*$Q-#,B[MI&XY5AG'<$<YJWXWU+6M&\,7.J:
M(EM+-:#S98IXF??$/O[<,N& R??&* .BHKFI/$9DO+6:TN;>32TTYM1O)?*)
M/ED?N]IW<;L2'D'[AK"O/&6LV7@BS\;.EJ^G2>7//8+&=Z6\C  J^[EP&!.1
M@\CCK0!Z%17*Z?KVI7OC#7]&WVHAL[:WGM91"V?W@?A_F^;&T=,5ST?CGQ!<
M>"_".LPQ:?\ :=8U"*TGC:-PHWLXRIW<?<[YZT >ET5GZ0FKQZ=MUB>SFO0[
M_O+6-DC*Y.WY220<8SS7 'Q5XVNM UW5K)=&QHM]<Q/"T,F;E(3R =WR' )[
MY)[8Y /3Z*X>+QI-KLL,&D;[?=IL%\\GV1KDJ9@Q1,*1C 4DD]<C'>J3^+/%
MPB\*Q3Z=9V%]JES+:W4-Q&QV,J,0ZX;[I"@[3SVR.M '=WVHVNFQ(]S(5\Q_
M+C14+O(V"=JJH)8X!/ Z GM4.CZWI^OV/VS39_.A$C1-E&1D=3AE96 *D'L1
M7!ZW%XC'C#P'%?ZAIYO#+=Y:&U?RPP@;YL%P3\IQCC!SUZ5NVNL:IKEWKL&A
MRV5L-+G^RAIH"PN+@(&?=AAM7+ <9/4Y[4 =?52^TK3M3\O[?86MWY9W)Y\*
MR;3ZC(X-<$/'^JZIHWA+4=*M[2'^V+PV5Q#<JS&*10^[!!' *'MDCTJY_;'B
M^V\4:7X>NKC1WFN[*XG>XCMI-JLC@*=I?D;6'&1SGF@#NU4*H50 H& !VI:\
MQ_X2SQ<WA3Q#J*RZ2L_AVZN(9B;9R+P1 -P-X\O*D=VY]._1:AKNIO)8O ]M
M86-U8>>D\B^=)).<%8EC!#$!222 ?PH ZRJZV%FM\U\MI +QT"-<",>8RCL6
MZX]J\_C\=:Y>^'?!FIVL%@CZY<K;7$<BOA6*N<J0>!\G0@GGKWJQ_P )OJ.A
M#Q?'KOV:\?0HX)XI+6(PB83*=J%2S;2&&,Y/!S0!Z!17.I-XDL=5@>^-C<:4
MUL[W4L2&-K:11D!06)=3R/7C.>U8-MXL\17]MHNK:?I[75G?RQF>T%FZF&W?
MD.)2<,RC&1C!R<8ZT >@45B^+/$">%_#-WJSQ>:T(58XLXWR,P503V&6&3Z9
MK*O]>U;P[X@T.UU22UN['5I3:F2&$QM!/MRN,L=R-@CGD>IH U]8\4:1H0D.
MH7+H(55YC'"\@A5B0K.5!V D'DXZ'TK61UDC5T8,C %6!R"#WK@/"T.H2?$C
MQHES=VLL2R6BS)]F(W@P<!<N=N,\YSGGI7H/2@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "J&M64VI:'?6$$B1R7,#PAW4D+N!&<#KUJ_10!QUQX(EOOA]I_A
MR?4?)O-.2#[+?VZ8,<D(&Q]I/MR,]S5O3=)\2_8K@ZUK%I=7;0-!"+>W,42Y
MZNXW$LW ] .<=35YO%&D_:)H8II[EH&*3-:VLLZ1L.JLR*0".XSD5=TW5+'6
M+,7FG7,=S;%F02QG*DJ2#@^Q!% '&Q^!-2B\,^%](74;4G0KR*Y\TPM^^\L,
M N-WRYW'GGI6Q;^']0M_&NH^(!<VS)=VD=LL&Q@5V%B&+9YR6.1BNEHH \_M
M?A]?VOA/1M*75+8W>D:E_:$$Q@;9(=SML9=V0/WA&0>PK=C\,M=ZE?:IJTT;
MWEU9&P58 0D$))+ $\LQ)R2<= ,<<]'10!YY!X#U_P#LKPW83ZY8[-!NXI;<
MI9M^\CC1E&_+\M@@<$ <]>,=!H/A^]TKQ'KVISW5O+'JLL<HC2,J8BB! ,DG
M.0!V%='10!QL'@Z[N=5T+4=8GLYKW20P^V01%9;H%"FU\G@<Y(R<GTY%5]"\
M%Z]H!_LFU\0QGPTLA>*!K<_:8T)SY0DW8"\D9QG'3'4=T2!U.*I/JMK'K,6D
MMYOVJ6!IUQ$Q3:I .6Q@')'&: 'ZCJ5EI%A+?:C=16MI%C?-*VU5R0!D_4@?
MC7+>"M'L(]6UW7M/D:2QU"Z+6GS90+A?->/_ &7D!/H=H(XKKY[>&Z@>"XAC
MFA<8:.10RM]0>M/551 B*%51@ #  H XRV\&:AI=IK.DZ9J$$>DZG)+*HEB)
MEM#*/W@3!PPZD9Q@G^*I+OP;<VNI:!>^';NVM#I5H]B(KJ%I4:%@O]UE.X;
M>O.:["LR_P#$&G:==K:3R3/=%/,\FWMY)W5,XW%8U) SQD]<4 9WA'PW=^'!
MJRW.H1W:W^H2WJXAV,A<C()S@]!T [TFL^'[_4?%NAZU!=6T<>E"?$+QL3+Y
MJ!3\P/&,>AK8TO5[#6K5KG3KE+B%7,9=,X##J.>X[^_%7: .3MO#&HZ+K6L7
M6B7MM':ZM)]HEAN8F;R)R,-(F"-P/!*G'(ZU5;P&]G%X5MM)NHHK;0)3*!/&
M6:=F5E;)!&,[F.>>37;44 -E3S(G3<R[E(W*<$>XKSNT^'NN6^E^'[%M>LRN
MB7HG@<61S(N'!+_/R_S]L#KG.:[G3=5M=52Y:U\W%O</;2>9$R?.AP<9 R/<
M<&KM '&1^#]22'Q:AOK4G7RQ!\IOW&8Q'SS\W SVYJAK\6EVO@*/P1J.H6TV
MKG3XX;2")MDLKKA8G1221\Z@Y[8)Z UZ%436MNUTETT$1N$4JLI0;U!Z@'J!
M0!7T?3ETG2+6P5VD\F,*TC=9&ZLY]V))/N:R;KP_>S^/+'Q"EU L%M:/:F!H
MR68.RL6W9P""H[5T=% '%WOA+7+3Q5>:SX:UNWLX]2"?;;:[MC,F]1M$B888
M;: ,=#W]IIO"FJ1>*;+6;'64S'8&QG%Y 968%]YD3# *Y/7C' XXQ72WU_;:
M;:FXNY1''N5!P269B J@#DDD@ #KFJFCZ_8:VUTEH\@FM)?)N(9HFC>-L \A
MAT((((X.: .=\/\ A#6O#N@:=I4>IV5Y;VHGCD@FMRJ3QNVX \G# YYP1@XQ
MWJO%\-ELM-TXZ=>1VNI:=J$U_:L(B88_-)WP!,Y$94[>#GC/M7?44 <K/X6N
MKVYU74[J>W&J7NG_ -G1;$8QV\623WRQ+-D].@'N:)\%:E_8OA/3Q?VN?#\T
M,N\PM^_\M"@&,_+D$^O-=Q10!YU?_#S6+K2==TJ/7+9;34=0_M")GM"TJOYB
MOM=M^"HV # !Z<X&*VSX=U:U\52Z]9WUG)-<V4=K<1SPL!E"Q#KM;U8_*?SK
MJJ* .)U#P%)+X6CTBROHTF;4%U&ZNIHBQFF\SS&.T$8R1CKP !SUI^I>%-<C
M\42>(/#NL6UE<7L,<5_;W-N9HI2@PKC# A@#CKS79U2TW5;75DN'M?-Q;W#V
MTGF1,GSH<'&X#(]QP: )+"V>SLHH);A[F502\S\%V)R3@< 9)P!P!Q7)?\(5
MJ45GXKL8-4MA9Z[)/*JO;G?$\R!&RV[!  X&!UY-=M0"#G!Z4 <=J/A'4KSP
MGH6F1:E;Q7ND3V\R2-"6AG,(P Z;LX/7KP0*LZ#X:U'2_%.LZQ=:G!<)JBPF
M2*.V*%7C39P=Q^7';D].?7J*;)(D4;22.J1H"S,QP !U)- '/>'?"<'A[5M9
MO(9F>._N3-%">EN& +JO^\^YC^'I63:^#=?T?5K]-%\0Q6^B7]P]S);RVV^6
MW=SE_*;.!D\C(('H>^_I_BK2M2U1=-@DF%R]N+J(2P.@FBR!O0D8(R1^=;5
M'-Q^'+J/QZ/$*W4/V8::-/%N48O@/OW;L]<\8Q^-/\7^&7\2Z;;I:WSV&HV5
MPMU9W2KN\N101RO=2"0170T4 <Q!I7BDZ5<_;-<M&U25!%')#;%(8%[D+N)9
MSZDX&!QUS#:^#YM)\71ZOHUQ;VEG+;);WUF8V87!7[LF<\.!QDYR.M=;2,JN
MI5@&4C!!&010!Y?X2TW4=9\/^+--AN[:*RO=:OX9)=I,L:-(0X4="2#P3C&>
MAK:O_!.HV6M6NK>$M4@TZ6.SCL9[:Y@,L,T2?<. 00R],Y_+G/76FG6.GAQ9
M6=O;;SEO)B5-WUP.:LT <E>>%=2N=2\.WK:I%++I4TEQ,\L1S.\BE2  <(H#
M<#GH/J61>%]9MM7\1:E:ZI;0SZM-;31_N6(A,(5=K?-\P95(/3K7852CU6UD
MUF;2E\W[5#"L[YB8)M8D##8P3P>,T <M+\/+74I/$$M\L%L=:M4MYHK$%5#(
M6(E)/5\D=OX1UR35C1M!\50V_D:UXDANU@B:.W>WMC$[L5*AY3N.2 >@QSSD
MD"NNHR#G!Z=: .3M?"EQ+XFTS7M3DLS?V$$D+3VL11KO<H7,F>@&"0N3R>HQ
M@WO%_A^7Q+H)L;>Z2VN$GBN(I73>H>-PX!&1D'&.M;U% '+#PYJA\9V?B"6^
MM9#!8/9O$(67>68.6'S' !4 #GCN36*?A_JJZ8T46KVJW*:\VM1%K=C$S,Q)
MC==V2 3D$'J!78PZ]I\_B"?0XY7.H00"XDC,3* A. 0Q&#SZ9Z5I4 <./ M_
M/-XL-YK$+Q^(;58G$=KM,3B+R\C+'Y0.@Z^_KTOA^QO=-T2UL]0NH;F>&-8]
M\,1C7"@ <$D]LYSU/:M.B@#@=:AT/QGXNT:*POH[B[TJYE-]]GD!V0@8:*3'
M]Z01C!Z@-Z&MK7/#4]YXBTWQ%IES'!J5BCPLLREH[B%^J-CD8/((Z'L:WX;6
MWMFE:""*)I6WR%$"EV]3CJ?>I: ..O? JZII7B6.\NE%_KZ*DTT2?+$$7;&J
M@G) ZG)Y)/3@!D7A77[CQ#X?UG4M7L6FTN*:)XH+1@DBR*J\9?(/RDD].F%Z
MD]I10!A^+]#G\2^%;_1H+B.W:\C\HRNA8*#U. 1D_C5&7PUJ,WBC0M8:[M0-
M,MI;=XA&W[WS H)!SQC:,#!KJJ,@YP>G6@#@)OAU<7NDZY9W.II%-?ZI_:UK
M<V\1#6LXV[>"?F VCTZGI6S9Z#K5[IEY;^)-6@NI+BU>T LX#$BJXPS$$G<Y
MX] .PY-=-5+5=5M=&TN?4;LR?9X!E_*C:1NN.%4$GDT <9;^!_$!MO#,-UK=
MB1H$R&'R[-L2HL9C&[+_ 'B".A '/7MN^'?#][HVLZ[>W%U!-'JER+D)'&5,
M1"A<9).1A1Z5T0.0".AI: .=\8>&'\2V-G]EO/L6HV%TEY9W&S>%D7/#+QE2
M"015.Q\-:T?&:>(]2U&Q9CIOV&2WM[9P"/,+Y#%R1SZYZ].]==10!YO#\.]<
MC\.Z7H7]N68M-)OXKFT<6;%V6-RX$GS\GG'R[?K6E+X1U_3_ !+?:GX=UVVM
M+;4V62]MKFT,JK*%"F2/##!( X/'U[=M10!%:P?9K6*#S))?+0+YDARS8'4G
MU-<,OPYEE\,:EX?NM54VLMV]W8RPP;9;>1I/,#,2Q#$,<< <9]>.^HH YN+0
M+Z_UC2]3URXM9)=+63R$MHV56D==ID;<>/ER HZ9/)XQJ:QK.DZ+:K-K%];6
M=O*_E!KEPJLQ!.WGV!I\VJVMOJ]KIDGF_:;I'DCQ$Q7"8SE@,#J.IJQ<6MO=
MHJ7,$4RJP=1(@8!AT(SW]Z .2\">&+33?"D\!25[;4))62.?.Y+9B1%'SR $
M(X[%C5>W\"7J^%D\(W>HPSZ%'(H5S&1.T"N'$1YV]@NX=NP/-=UD'.#TZT4
M<K<>&=3B\97.M:7J-M!!?6L=O=QRVY=U\LMM:,A@ <,1R".^#TK&M?A]JEKX
M3\-Z*-6M';1;^.]$IMF'F;"Q"8W?[1^;V'%>AT9&<9YH 09P,XSWQ7F'A+3]
M2U?1_&.G6]W;0VEYKE_"\I0F2)6;#;1G!)!X)Q@\\]*]/90RE6 *D8(/0U7M
M-.L;#?\ 8[*WMMYR_DQ*F[ZX'- '(W_@B_LM7LM4\):G#ITT%DEA+;W,)EAF
MA3[F0""&7U_ESFQ?^%-4O+SP_='5899M+N7NIGFA/[]V4J0 #A% ;@<XP.O?
MHK[5;73I[*&X\W?>3>1%LB9QNP3R0/E& >35BXN(K6WDGE+;(UW-M4L<?0 D
M_A0!S^N^'[_4_$^A:O;W5O%'I+ROY4D;,93(FP\@\8!]#4,'AG4-'\0:MJ.B
MWELD&K,LL]O<QLPBG P9$((R",94XY'45NZ/J]GKVDV^J:?(9;2X7=$Y4KN&
M2,X/(Z5>H XB3P%);6'AFRTN\BCAT2Z^UDSQEFN'(;=G!&,EV/>M2]\/WESX
MXT_Q ES L-I:R6WD,A+.'*DG=GC&T<8K0U77].T:2PCO971K^X2UM]L3,&D8
MX R!@?B1T-:= '#KX)U(>'O%6EMJ%KG7KF>?S!"W[CS5"D8W?-@#@\5)#X0U
MBUURPU*WU>U4Q:6FFW"/;%_E5L[XOF&UCQG.1P.N*[2FNZ11M)(ZHB@LS,<
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
M;&TN(YHR\=Q%G< <$$,#R#^%5KCP6\OAG7=.COXTO=<:1KR[: D9==F%3<,
M* !DGIDYS0!J>%8IX_#.F_:9TF?[-&598]FU=B_+U.?K7*>*_%VLZ!;:O?&>
MV5[&ZB$%C''YHDMV* O*PYC8EFQG ^4<&NWTBSFT_2;6RN)TG>WB6+S$C*!@
MH S@DXZ>M<5J7PYU"^T[Q'ID?B!(['6+PWH#6>Z2.0LK;2^[YD&P8& >G/&"
M 6[_ %7Q/=>/;WPYIM[I]K"NFI>1W$EJTC1EI&7!7> Q^7KP!GH:PH_'GB63
M0;%C%IZ:I%XB70KY2C;)&W#YD.?E!!'8]3BKR+J ^,UPEO>VK7*>'H1*98CA
MSY[\@!@5QD<<\'\:I^,-#70-"T"WAO$-[=^*;>ZFNI$X>=W8EMF?NC@;<] !
MGO0!KV.M^)K'QK/X9U:YL+EKJP:]L+R*U:-4*L%:-TWG(&00=WX\\9&G>-O$
M</P_@\::G-I\MM-:[4L8X65C<-*$0E\_=YY&.!ZGFNRBT"Y?7)M<N[J!]0^R
M?9+8)"?+A0MN8D%LL20,\C@ >I.99?#^%?AJ/!>I7OVJW6(QK<11>4R_-N5L
M%FY!P?PH =J6M:OX;U_0[>^N8;VRU>8VC.(-C07!4E"N#RAP1@\CU-<__P )
M)XWN_#NOZO:7.D@Z)?W41@-J_P#I20GD9W_)P"1U))ZBNKA\-W]Y=Z3/KVH0
M7ATIC+#Y-N8_-EVE1(^6/(!/ XR<^U<IX0TZ^UO1_&&GP:C;Q65WKM_%(PB+
M2HK/AMIW8R5/!(XSGGI0!=/BGQ#K>O:59Z+<6-I;:KH7]I1-/;L[0L2F ?F
M;[V.V,YYQ@ZFG:UKG_";:EH=V]I<+;:7#=1>3$8MTC%E()+-QE?R-6(O"+VO
MBW3M7L[N&&SL-/\ [.CL_LY)\O*G[^_J-HQQ3;CPC<77B;5]5?4U2'4=._L\
MQ1P%7C4;L.'W=<N>WI0!CZ=XLU8>)/#>GW5U;7+:JDZW:0PYBMIHX]^V.0</
M@@J1DGZ50T/7]2T31/&>LWUY]N-KK,UND;1A=SYBCCY!X7E1C'2M2Q\!:M;R
M>%Y)O$,+MH >*(16 0/$T?E\Y<_/COT_V?6Q_P *_$UGXETR[U(RZ5K5Q)=>
M2D.V2&5]I)WY.<%00,#WS0!8T^_\3+XIM[:>UEN=(G@8RW$D"PM;2CD  ,=R
MMTQR0>]7?$^O2Z5)I5A9^7]NU6[%M"T@RL8P6=R,C.%!P,\DBH/#NA>(+"2+
M^W?$G]J1VRE8%2U$)8XQND.3N."1V'.3DXQ+XN\+GQ+;63VUZUCJ6GW*W5G=
M!-X1QQAER-RD'!&: .4DO9O#WQ/U[4=3N?M<5GX:6X#+&$<QK*YVG'!.0>0!
MP1]:O:AXHUO1?#6C^*;N2WGLKIX/MMHD6/(CFP 8VSDE2R@YSNY^[5Q/!=]>
M^(;O5=;U*UNH[W2O[-N;6"T,:LA9B2I+DC[WOWZ<46O@F[.AZ?X?U+5([S2+
M"6-XQY!6:5(B&C1VW$8!"Y('(7MS0 IUC7=?37Y/#\UM#)I=TUG;PS1[A<2H
MJE]YS\JDMM&,'C.><":VUO5F^(']@W)@2%]%%\0BY:*8R;" W\2CGM5=O!FK
M6'B/4-0T#Q"-/LM4D$UY:R6HF*RXP7B)(VL0.X(SV/2K5[X4O1XFL=:TC4X[
M62&Q_LZ9+B S[X=P8$'<,.".IR.>E '-OXU\0_\ "$0:M&]B;K^VSI\@:%@'
MC^T>4"/F^4XZG!^E:@U+Q2OCFX\--J.GLL^G?;XKK[&0;?$FQD";_GZC!)&/
M?I4*_#J^7PP-%&N1%1JG]HB5[/)SYOF;3AQGGJ>/I6Z?#EX?'">)/[0@^73S
M8_9_LQY!</NW;_4=,=* .?T[QQJ3^'+1;I(I=6FUB72/,AB^5C&7)D"9_NH>
M,]3Z4:AX@\7Z5I'B>XDMD\BPM/M5C>W5N 9,*2\;HKCD=FX'J#4A^&\TGAZX
MT]]:\N\_M5]6L[VWM]AMYF8M]TL=P^8C&1P:OW'A37-4\,ZGIVL>((KB\OK9
MK431V>R*%&&&(0-RQ]2>PP!SD J6^O\ B"V\2>&(+ZYLYK378)<PQP%3;ND0
MD!W;OGSR#P/:J'A>\\0QZ3XTO(;R"_O;?5;J*%+D")"R!%4LV>%"CI[=:WY?
M"=[-J7A>\.IVX.AJZE1:G]_NC\L_Q_+Q]>:SKOX>7-SI7B;2UUORK/6;I[Q
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
MB:$N<%&;(.>@V],<^HJK_:>O0ZK#X9EO);N_CLVO+B]LK>&-V5I66,!)&VC
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
M^#D#MT]>M9=AX!DMO#D7ABYU1;C08I-WD_9MLTB;]XC=]V"-W7"@D<<5VM%
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
M/;S38O#AL]?\NXT2&2V5VLPRRQ/C(*E_E;@?,#^%==_:2?VW_9?V:Z\S[/\
M://\D^3C=MV[^F_OM].:NT <'_PKB3_A&M1T<Z[,WVC4?[1@F:V7,+^:).0"
M-_(YZ#T KM80]K9+]JN/.=%)DE*!<]R<#H/;^=2R2"*)I&#$*"2%4L?P Y-9
MWA_7;/Q+HL.JZ?YOV:9G5/-3:WRN4.1VY4T <OI*:)XO\<P>*](E:XM[.S,+
M3J&6.:4D[1@@99%,F?\ KH/2M>X\,3Q>*Y?$.D7\=I=74"P7D4T!ECG"_<;
M92&'3.<8[=ZZ-55%"JH51V Q2T <=>^ 8IO#D>GVE^\%]'J(U47K1!]UUOWE
MV3(!!)(QG@8]*M:7X5O++Q;/XAN]9-U-<6:6TL2VXC0[68Y')('S=.3ZDUT]
M92^(;%_%+>'0)_MRVANSF(A/+#!>&/4Y/;/0T 5/$GARXUZ[T>>*_CM?[,O%
MO%5K<R>8P!7!.X8&&-5?$GA"ZU76K/7='UE](U>VB-N9A )DFA)R4="1D9Y'
M/'Y8U=8\0V.ASZ=#>"??J%TEI 8XBR^8W3+=!T/?M6K0!R%[X,OKB?1K^+7Y
M!JNG32RO<S6RNDYD0(P,8*A?E "X/ ]22:;IO@O4M(^WM9>(WWW6IG409;52
M-S+AU8*5W X[;<>F>:[&B@#BKGX<V-_9ZRMS.([O4[F*Z\ZTB\I8)8P CHI)
MYSDDD\Y/2M2'P]=SZM9:KJU_!=WMA#)':F*V,2(S@!G92[$D@ =0 "?7-=#1
M0!PA^'ERW@6;PN=:C\N6Z-R;C[&=PS-YV,>9C[WZ?G4]]X%N[S4-?G37F@M]
M=M5@NX5M0Q#+&8PR,6.U2#RN#WP1UKM*RM<\0V/A];-KT3D7EU':Q>5$6&]V
M &3T49/<_G0!AQ^"KRV;P]=6^LJU_HULUJLDUJ&CFC8*""BLI!^08.X^^:FO
M/!8N]!UVR-^!?:YD7EX8<\;0@"INX"J, $GU.2:ZNLC6/$FGZ(=.%T9F&H74
M=I T49=2[G RW0#\?SH YOQ3<:4GAH^"+^Y6[U>\L!';6\<3*TK?=1Q]X+AE
M!)SQM)Z"NNTG3H](TBTT^)F=;>,)O8Y9SW8GN2<DGU-7-JE@VT;@, XYQ2T
M<GXA\'W>H>(+?7]$UM](U2.'[-*_D":.>+.X*R$CD$D@YJZOA^Z(T^.XU0W,
M,$IGNA-#\UU+_"200%"G!"X(^5?2MYF5$9W8*JC)). !2T >;ZWX<?PKX!\:
M(FI1G2[JUNIK>S,.P6S.C95&W'@G^''4\8Z5J:%H4NL:+X8N=1U"&ZM+"*&Z
MMXX8=F^41X1G;<<[03P .>>V*[)XTE7;(BNOHPS0B)&H5%55'91@4 <7'X%U
M'3]:OYM&\37%AI6H3M<7-B+=7(D;[YBD)RF[Z'';VTK;PQ<6?BV]UR&_A N+
M2.T6W:V)$:H25.[?SRQSP/PK=O+RWL+9KBYD"1J0,X))).  !R220 !R2:H:
MQXCTW0+&&[U25K9)65$4H6;<Q  PN>Y ST]Z .6A^&DEMX=T6RM];,6I:+<2
M3V-^MMT\QB71T+$,IW$'!'0?CL:/X7OK#Q5?:_>ZNMS->V\4$L,5J(D&S.",
MLQ ^8\9/UK=U'4K32;&2]OIA%!'@%B"223@  <DDD  <DFJUIKMI>FZCB2<7
M5H TUJ\9650PRIVGJ#@X(]".H(H I^)O#LWB"32&CODM1IU_'? -!YGF.@(
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
M%H][J=R)98+-2TRP+O=0!N/';@@\XZU-ID%Y!I%M#?W;7-ZL0$T^U5W/CD@
M  9Z<5Y7;17/_"M_B/)/J5W=;+G4H=LVPYVK@,2%!S@ 8SC'0"@#UJSN4O;*
MWNXPPCGC610W4!AD9_.IJ\YT^]UG2=<\&6SZJUQ9:O:2126K0(J0F. .K(0-
MW;!W,<Y[5%I.K>()(/$6LWVO.UEH&IWBM:I:Q_Z3#%&"$+8ROL1[YSD8 /2Z
M*\UU+Q%KFE> -+\;'46N-ZV]Q>6/EIY313%053"[@5WC!+'.#G-:]AJFJ7'B
MOQEI<FHRF"PAMI+0^7'NA,D;LV/EYY ^]F@#LZHZSJL&AZ/=:G=),\%K$TL@
MA3<VU1DG'T%<'8^+=7G\)>"+JZN?+&L2K'?WXC4>7E6*@#&U2[ +G'TY(J*Y
MOM7O="^(D%UJ#WFFV%K<06DAB0>9F#<PW*!DH25/Z\B@#T;3[V/4M-M;Z$,L
M5S"DR!Q@A6 (S[\U.[%$9@K,0,[5ZGV%>;:3>ZSH]SX"1M5:>QU6V%O+9F%%
M2/;;[T9"!NS\O.2<YZ#I7I= &-H'B>Q\2"[.GI<[;2=[:9I8M@65<;DYZD9^
ME;->.:9J-]H_PZ^(&IZ;=-;7=KK]]+&X16Y#+P0P(Q79ZAJ^I6_C?PK8Q7C"
MTU*VNFN(3&A!:.-2I!QN'+'OB@#L**\BN=?\5)X)\2:\/$#";1=4N(HHA:Q;
M9DCD"[9/ESC']W![Y/;J;W6M0U7Q+J.C6!OH5LK2"0O9>1O+R[R"?-.-H"C
M Y).>U ':5E7GB+3K'7M/T6:207U^7\A1$Q4[%+-EL;> .F<\BF^%WUM_#MI
M_P )''"FK*I6X\E@58@D!N.!D8)'J36#XJ_Y*-X#_P"N][_Z3F@#M:J:EJ5K
MI-A+>WCE(8\9VJ68DG 55&2220 !R2:MTQXHY"A=%8HVY<C.#C&1^9H P= \
M9Z5XAO[G3X%N[74+91))9WMNT$H0]&"MU'O]/6I&\6Z4MPZEY?LR7(LWO-G[
ME9R<;"WKDA<XVYXSGBLV*Q.I^,;OQ/;J/+M-/:PM'Q_KW+;W8>J@@*/4[NV"
M>&M@A_9<E=V)9K.61F)Y,AG8Y^NZ@#T;Q!XTTSPY,T5S#?W#1IYL_P!CM'F$
M"?WI"HPHX/7GBMC3M1M-6TZWU"PG2>TN$$D4J=&!K-^W?V=X;ANI;?S;^YBC
M_<*,/<3E  OUXY)Z $G@5RSS67P\\&Z%X8NM0-J\Z.LMVB,1&,[I2F 2"2^%
M],Y_AQ0!V&D^(M-UR[U*VT^8RMIT_P!GG8#Y=^,D ]\=/K6K7F/PTUK0Y_%?
MBJRTN=/+DN8Y+:-8V4>4D,:9&1Q@\8/->G4 5[J\BM()Y6W.88_,>.,;GQSC
MY1SS@_D:K:%K-MXAT.SU>S61;:[C\R,2@!L>X!-<;H$-T?'7CLR:G=RQP/ H
MCDV%2&M]P'W<@ L< $>^>:Y_PS>ZSHG@;P#?P:JQM;NZM["6Q\E/+,<A8;MV
M-^\'!SG'MZ@'L=%>?76K^(M?&O\ ]@M=PW&GWCVEH(_L_DEXPI/F^8=Q!)/3
M&%QCFNP\_4!X<^T2P(FI?9-[0QG<HEV9*@]QNXH K/XFLVU"XL;&"ZU&XMCM
MN!:("L+==K.Q"[O]D$GVJQI6N66LO=QVIF$EI((ITFB:-D<J&P0P'8CGIZ5R
M?P8\M_A=I=P&WS7#SRW$A.6>0RODM[\#\JUO&6K_ /"-:8+RSCC2_P!1N[>Q
M65AE59VVAV'?:"Q]\ =* .HHKB[W4M4T#QOHFE/J$M[8:U'/$#/&F^WFC3>&
M!55RI&<@C@C\*Y2;Q#XIC^&]_P")_P"WW-UIM_*@A%M$(YT6X\O:_P N?N]-
MI7\: /7Z*XEKO6]+^(>FZ7/K#WEKJMG<2&-X$5;>2/808]HSMPV,,6^M<NNL
M>-)_A_?^*(?$2>?I=Q<L;8V<?EW$<4K ASC(^5>-N.G<G( /7J*\\UKQ!JDU
MK>WMKJ3VX_L=+VSM+.-9)4<JS%Y]ZD*G"@<C.&ZFF/K^O:A?^ 1;ZDMI'KMC
M)-=(L"L PMU?*YYZL<=N!D'H0#T:BO.;*[\57VC>+=+LM:DDU?2+QH[*[>"+
M=*OEJZHZ[=O<C( [5J:+XAF\31^')-.OID22W:[OP4C)(7Y/+;*_*QDSTQQ&
MWM0!V59'B3Q%9^%M&DU2^BN)+>-E5A!'N(+,%'< <D=35?QC?ZGIF@_:],MK
MFX9)H_M"VJ!YA#N^<QJ>"V.WUKA/%&LV^N_"#Q%=V>M'4X#=0"+S8PDMN/,A
MS'(H5>0VX\C.".30!ZU17%V]]K&F_$F'2+K56OK.^TV6Z$<D*(()$=1\A49V
MD-T8L>.M8]IXDUJ#5O"RRZH;X:C=2VU\T,2_9"=CL!"Q4,=I7&1D'G)S0!V%
MKXJL;N\UJUB@O/-T<H+A3#RVY=PV#J>/8=:MZ#K5MXBT.TU>S61;:Z3S(Q*
M&QGN 37*Z!_R/GQ"_P!ZT_\ 2:K?PK_Y)?X>_P"O0?S- '845Q27VL>*)?$J
M:3JATZ73+IK*T4(C*TJHK%Y=RL2I9L8&.!Z]'P:MJ6K>+I?#KWOV1K#389[J
M6T5<RS2$CY2X.$&">F22/3D [*BO*+WQ?XBC\*:HHODCU/1];CTZ2Y$"D7,;
M2( Q7HI*OSCN.,5LO+XAB^(1\/?\)%,UK>Z8U[YAMHO,MW614(B^7&"&'WP^
M,=^M '?45Y/-XI\20^!+NX34U:_T_7SIC7+P)F>,3J@+ # .&YP.U:=SK6O>
M$?&EO:ZKJAU;3-1LKFX13;I$UO) N]@NT<J5.!G)]_4 ]%HKS[3K_P 7:E!X
M>UBR\]X;LQ2WT,YMQ;^1(N28MI,F5R,9/(ZUDSZQXID\-^--23Q$\4FA:A<+
M;JEK%B1(T1@CY4_+R>F#DGD\  'J]%>?>(/%USIMSI]SJ,U]INB7=@CKJ%I
MLJ0W+'D2Y5B%QMQQ@Y.?:Y>7^I/<:; NN*T4VE^8HTU5DGN)_E_>C<I418YR
M=HRPS0!V;R)& 7=5!(4%CCDG 'YTZO(9=5U3Q)X=^'&J7&I7$%Q>ZBB3BW"!
M68))\^TJ1GY>G3D\=*Z*[U76]8O]?T[29K^.72REO#+ +;#S&)7WRB3J"6 P
MH P#Z\ '>45GZ.^I3Z%:'5DC@U)H0+@0,&59,8)7J,9Y[UQ=EX@UFS@\3:)J
M.HR3Z[:SJFGR&*-?,CFPL# !0#AB0W!Q@T >B45QT&HWVJ>+[[PVFJ7$":59
M0O-<1I&)9Y9,\\J5"@*#@ <MZ#%<XWC'7O[$ DO-E_IWB6/1[F5(4V749D4;
MB"#M)5A]W&#0!ZI17*P:IJ ^*=UHSW;2:?\ V.EXD+(GR2&9D.& !QA>A)JU
MXHN[NU.F+!J$=G!+<[+@JN^>5=K$)"NULL2!GCA03Q0!O22)%&TDCJB*"S,Q
MP !U)-.KQO7]8U;5?A5XP%U?W:2Z;JC6:/MC222'='A)-HQTD(.W&<#/?/KU
MK"\%NL<ES+<N,YEE"AFY[[0!^0H FHHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH *JZEIUKJ^F7.G7L0EM;F-H
MI4/=2,&K5% ',67@\Q0:7:ZAJ<U_9Z5(LMI')&JMN4$(9&'WRH/& .<$Y-6+
M/PV]IXNO_$ U!WDO8HX9(#$-BHF=N#USR>3GK4FK^)[/1VTGS(IYX]4NH[6"
M: *R!GY4DYZ8!/&>E;= &/XG\/Q>)M%;3Y+B6V82QS1S1 %D=&#*<'@\CI51
M/"TB^*;/7GU6:6>WM&M"CQKB1&8,Q.,8.0.F .F*Z.B@#B=1^',5_'X@MEUJ
M^@L-;<S3VJ*A"RD %@Q&['RK\N>WI6C;^%)(/$EKK9U:::XM[ V.)8EPZ%@Q
M8XQSN Z8&.,5TM,DECAC,DKJB#JS' % '+:?X,GTNU,5GK4R2'4I-2WF%2"\
M@8.C#NAWYQP1CK4=_P" +;4-!UG37O7B?6;@7%[/#$%RPVX"*<A1\@ZY)YYR
M:["B@#GK[PN;W7M,UD:E<6]W9PO;R&%%Q/&Q4D$$';RHY'-01^";1YO$1OKA
MKNWU['VF!D"A<($&TCD< ?B,UU%4=5U:VTBWBEN-S-/,EO#&F-TLCG"J,D#\
MR  ": ,>S\(LB:5#J.IRZA;Z4XDM$DC56WJI5&D8??*@G& .>2":@7P1C3_$
MEF=4D*:^\CW!\E<QET"-L_X"!US6QI&MC4X;QIK"\T^2TF:*5+M O0 [E8$J
MRD'J#6;;>.+&ZN8]EE??89A 8;[RP8W\YV2,[0=P4E>&(QSS@8) ((? S6^J
M:?J%MK=Y!/;:>NFR^7&F)X5.5SD':V>X_2JT/PYCM_#&F:%'K-V8-.O4O(7>
M-"P*.75>@^7).>Y]1TKH=8\1V&AW.G6]YY_F:A<I:P;(692[' !;[HZ$\G/'
M0U:U34K?2--GO[K>8HADK&A=W). JJ.2Q)  [DB@!][:&^TRXLVE:,SPM$9(
M^"NX$9'OSFL5?":76IV]_K%TNH36]I+:1DPB/<DF Y?!^8D+CC &3QS4^B^*
M;36K.[NQ9ZA806HS(^HVS6_&"21NZ@ <FC3_ !58:A<V<(BN;<7\;2V,DZ!5
MN5 R2O)(."&PP4D<XX. #*T#P)+H+Q6Z^(M1NM(MFWVFG3A"L1!RH+@;F"GD
M#..!Z5J>&_#A\._VD!>O<B_O9+UP\879)(<L!C^'CH?SK=HH Q;7PQ8VGBV^
M\1QAA=WEO'#(O\/R]6^I 0?\ %0CPK$WBC4-:GN3,M]:+9RVK1C9Y8R0,]<_
M,<_6N@HH Y#P]X%?0&AMAX@U"ZTBU??::?,$VQ'.5!<#<X4] 3@8'H*AM?AZ
M+#4KHV.O:A;:-=S-//I*!#&S,<L%8C<BGN%(ZGFMWQ1XCMO"F@7&L7=O<3V\
M&-ZVZ@L,D 'DCC)%;% ',:GX0.KV][87NHM-I=Y<"=[9X063#!MJ/GY02O<$
M\G!';HKJWCN[2:VESY<R-&^#@X(P:EHH XV/X>P+X;TW2I-6O))M*E273[S:
M@>W*#"@ ###'!SG/Y8VM/T+[/J\NL7MQ]KU*2!;82B,1K'$"6VJN3C).223G
M [ "MBB@#$\2^'$\1VUBGVR:SGL;R.]@FB56*R(".0P((PQJ&W\,26WB>XUU
M=3D>>:S2S*21 C:A)5N,9;))/8YZ"NAHH X;_A6EJ/"MCHRZK>1S:=<O=6-_
M$%6:%V9F/3@@ECQCI71Z'H\^E0R->ZI<:G>RX$EU.JID#.U550%4#)_$G)K6
MHH P-?\ "MMKEY9:C'<SV&JV)/V:]M\;E!ZHP((93W!_#%6K72[WS(Y-4U,W
MAB.Y(TA$2;AT9ADDD=N<9YQD C5J&ZNH;*SGN[A]D$$;22-@G:JC).!R>!0!
MS">!TMHM5LK'4YK;2=5D>2XM!&"49QB3RG_@#=Q@XR<8JV?"D2>)--U>VN3
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
MIW8 &-H P   .*HV/A."UN=-EN+RXO%TM#'8I-MQ%E=NXD %F"_*">V>Y)H
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
M & *?0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 445G:^=27P]J!T<(=2^SO]E#D >9CY>O'
M7UX]: -&BO,K3Q*+[2O$/V+4-7TS5;+3'EDTW4!NFMY%#'S%+@AE;@<<=, 9
MJI)>^(M(T+P?XI_M^[O/MKV4%[8RJGE.DRJ,J ,AP3G))R3V'% 'K%%>;FZ\
M3>*['5KO1+K[+>6NHS6UHQNML<?E/MQ)'L.[<!DYR?FXQ4R-K.J_$&^T>;7K
MNVM#I$%T4LR@\N1G8$(Y7[OR]2"?<=* ._EFC@0/+(J*65 6.,LQ  ^I) _&
MGUXU->W^O^!? E[?ZA<M=-X@BMI9(WV>9MED4,0."WR*?KFO85B*6PA$LF0F
MT2$@MTQGD8)_"@"MI=]-J%HTT]A<6+B5T\J?;N(5B W!/!QD5=KR*77M?'PE
MN=476KD:A!J[0>>53,B?:Q%@C;P-I_AVUT]C-J.F?%'^R)=6N[ZSO-)>\9+G
M;^[E655RFU1A2&Z>U ';45SWBRYE@M].2/4?L:2WJ)*D:EIKE,,3%%CD,2!R
M.@!.1UKBX_%^JZ9HWB2.2:97MM:AL+62[*R/;1S>7RQ!(;;O8C)/;)- 'JM9
M^H:H;;2_MUE9S:EEU58K4J68%@I(R0,#DGZ5AW^BZC:/J+IKUU_9DVG.GD.Y
M,RSC)\Q).J@KP5'3J,5QL,^H:-\"-&U'3]5NX9REGGE6&UY$1E&1D##'H0?>
M@#UZJ6K7TVFZ;)=06%Q?R(5 M[?;O;+ $C) XSGZ"N8UN^O-"^(&B7$]]/\
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
MY+>)+87%J+><Q(TVW$Z@ [UP3\ISW]*XM;?[3\:Q+'J%RT3: EP@2;*']_C
M'3:0 ?>LZ36=;3P7\0K@:S=?:M+O[A;6<K'N1$B1@N-N,<GH : /4J*\VN9-
M:M?$7A%(_$-Z5UN*6*Z1E1D3;#Y@:,;?E;((R=W7G/>G=>*]4\*:5XZB-]-?
MG2+BV2RFO,,Z>>J?>( R%9\_I0!ZK17#:W<ZAX5U_P -O!J%U=VFIW@T^[AN
M&#Y=E)65>/D(*G('RX/05S-Q?>(&\'^,]5_X26_6XT35+I;7:L8#+'L(5P%Y
M&.,# Y)YH ]?HKA=6U._TKQ/X;UB>]G&B:D!:7-ON'EPSNH,3],X)RIR<9(-
M;WAJ2>\@N]3DN)9(+RX9[2-VRJ0CY5*^S8+_ $<#M0!N45P/BV^O8[O71;ZG
M<N]IIGG6UM8'8UJX#DRS,2%(.%PI)R <*>M4WU;6M2U+X?!-8GMDUG3Y9;M(
MDCP7%NK[ERO!RQZY XXH ]*K%O/$<-EXITS09+2X\W4(Y9(I_E\O$8!8=<YY
M';O7"'Q5JOA_0O$UHU_+=W%GK,>GV5U= ,T:S"/!?  ;;N8C/7 %:6I::=/^
M+'@T_;;NX1[:_&VXDWX8)'E@>V<C(' QP!S0!Z'1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %5-4T]-
M4TRXL9)IH5F7;YL#!73W4D'!JW10!QWB'08;31M;U:XNKB]U%](FLHY)$4-L
M()VA449+-CMZ8Q4/@_P_'>>$_#$E_>7=RMA;P2QVDRJJQ3+&!\P"AB4)( )X
MZG) -=O5>^N396,]R())_*0OY<9&YL=AN('YF@#F)OAY8-KUWJ=IJFK6"7S^
M9>V=I<;(;AN[$8R">Y4@FM*+PM;P>)9]=AOKR.XFM5M/*7R_+2-22H4;,\$D
M]:L^'-:C\1>';#6(H6ACO(A*L;G)4'L:T+BXBM;>6XGD6.&)2[NQP%4#))H
MY2/X=Z=%X9L]#34=2$5E>"^M;C?'YL4H<OD'9M(RS<$'K751P^5;+"LLA*IM
M$C'<W3J2>IJ6B@#CC\.K!O#$WA\ZIJ?V.6Z^ULVZ+?O\SS.OEXQO&>GZ5JGP
MS"WBF#Q"VH7K7<-J;0(?+\MHR0QR F<D@'@BET_Q&E_XIU70OL<T,NGQ12M+
M(RXD$F[!4 GCY>^#[5MT 8GB'PS;^(C82/=W=G=6$_VBVN;5E#HV""/F5@00
M<$$5F?\ "NM&D@URWNIKZZM]9*M<Q3SY <!1O7C(;*J<G.,<8'%=5/<16L+3
M3R+'&N,LQP.3@?J:&GB2XCMVD432*S(F>6"XR1]-P_,4 86B>$HM(B=;G5=3
MU5S$8$>_F#F.,]57: .<#).2<#FJ!^'=@?"*>&FU;5381NC(3)&7548,B [,
M8! [9/<FNPHH R->\.V/B71#I6IAY8"\;EL@-N1@P.0."<8..Q--\2^'+;Q/
MH<FD75Q<V]M(R,WV8H&.U@RCYE.!E1^5;-8FD^(TU7Q#K6D"SFMY=*,(=Y&4
MB3S%+ K@GC [\\]!0 V[\+V]WX@L=;-]>Q7MK ;9FB=5$\98,5<;?4 _+MJO
M%X'TT1Z[#=3W5[!K;E[N&X*;<[0N5VJ". ._;/6NEHH Y/2? =OIEI+;3:UK
M&H1&!K>!;RX#_9T9=IV84?-@XR<D#@8!.="T\,Q0ZE8W]W?W=_<6$+PVSW&S
M*!\!B2JC<Q"@9/\ /FMRB@#(\1>'K;Q)80VMQ/<6[07,=U#/;L \<B'*L-P(
M_,&J\7A2&'Q)_;JZGJ!N_L0L<.T;+Y8;=GE,[MW.<_IQ6_10!QB?#?3X=/L[
M6'5=5BDLKU[ZVN5>+S(Y'SO'^KVE3N/!!J8?#W2C;:];RW>HS0ZV/])22<':
MVT*77C[WR@\Y [ #BNI:>);A+=I%$TBLZ)GDJI )_#<OYBI* *>F6!TW3XK4
MW=S=F,8,URP+M]< #\@*YP?#S3X]9O+VVU'4[6UOI3->:=!.%MYW/WB1C(W=
MP",_2M2Y\1I:^+K#P^UG-OO()9TN-R[,)C(QG.?F'4#\:VZ ,"?PK =?GUJP
MOKK3KRYB6&Z-OL*SA?NEE=6&Y1P".W'-07W@?3+K0=/TJVFN;$:=<+=6MQ;N
M/,249RY+ AB=S9R#G)KIJ* .9LO!=M8ZEJFH)JFI/=:E D-Q(\B-G8" P&W
M/S-VP,\ 56?X=:8?#>EZ.M[J"'2I!)87JN@G@(]"% ([$$'-=?4-W-);V4\T
M-NUQ+'&SI"A :0@9"@G@$].: ,32?"46F>(+G6WU34+R]N8$@F,[(%<)G!VJ
MH /)Z8'MWJ?6?#<&M:II=_+>W<$FFRF:!82FTL05);<I)X)'45?M[X-96<MW
M&;.>Y51]GD8%E<KN*9'!(P>GH::EY<MK,UDVGRK:I"LBWA==CL204 SG(P#G
MWH Y^_\ A[INI'7_ +5?:@XUSROM(#QKL:+'ELF$!!&T=<YQSFK%EX,@M/$4
M&NR:KJEU?QVGV1VGE7;,F[<-P50!@_W<#U!YSTM% &3#X=T^#Q1=>(8XR+^Y
MMDMI&SP54DYQZG('T45DZEX"L[SQ%+K=GJNJZ5=7*JMV+"<(MR%& 6!!Y XR
M,'^==910!%;V\5I;16T"!(8D"(H[ # %<U;^ [&WLIM,^W7KZ/+.T[:>Y0QD
MLV\J6V[RA;G&[GITXK<UK4QHVBWFIM;2W"6L+3-'$5#%5&3C<0.@I='U%=7T
M2PU-(S&MY;QW 0G)4.H;&?QH P]:\"V>K:['K5MJ6I:3J B$,LVGS!/.C'17
M!4@X['_ 4FL> =-U2/37AN[_ $Z]TX,+>^M)L3 -]X,S []QY.>I)]3GJJ*
M.8NO!%G=V6G6TFI:ENLKU+\3F1&DFG7HTA9#GTP,#  Q@"KMKX:AM?%-UX@%
M]>/<W,"6\D3F/R]BDE< (#P2>_>MJJ0O+DZVUE_9\HM1;B47N]=A?=CR\9SG
M'.<8H S_ !/X4L?%-O;+<37-K<VDOG6MY:2;)8']5.",'N".:KS>"=.O/#\^
MDZC<7M\9W622\GE_?^8OW65@ %*XX  '7CDYZ6B@#%M?#JQ7R:A=ZA=7U]%
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
M0B@D CDA#!E1L@G ([$>AR*IGP%9'2]>T]M3U(PZW,\UV=T6[<P"MM_=\ @
M=^E=710!SLWA"">\T.Z?4]0\W1@PM\&+#;EV$O\ )S\O'&/SJ/\ X0?3)9]?
M>\FNKR+7 HO()RFSY5"J5VJ"" !W[9ZUTU% '/V/A6*VET^2[U&]U$Z<"+/[
M44_=$KMW':HW-M)&3GJ>YS5/_A ;(Z)K>DG4]2-OK-Q)<71+1;MSXW[3Y? .
M!_2NLHH X;Q&EOJ=@? 1LM2O))H(E-W);XB2/<,R&0 +N4+D #E@!ZUVL$,=
MM!'!"@2*-0B(O15 P *DHH Y>_\  UC?:QJ>H?;]1MQJENL%[;P2JL<P52JD
M_*6! .." >^><LM/ =G9S:!*FJ:F[:'$T5KO>,AE90AW?)_= '&.GKDUU=%
M')R_#[2KFUUVUO;B\NX=:E$UPDK(-D@ "LA5001M7'7I2V_@=$U;2-3N]>U>
M^NM+61(&G>,95PH(;:@SPO7J<\GICJZ* "BBB@ HHHH **** "BBB@ HHHH
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHJO?0?:K&
M:'S98MR$"2%RCJ?4$4 6**\,\%^/-?\ #/B:#0/'-X]Q9ZM#'/8:A(<!=ZC
M+>AS@_W6'H<UZ5IVH6N@:1K.IZMJ<_V2VO)0TMU*SB.-6PJ@?C@=R3WH ZFB
ML#2_&&EZKJ(TY//@OFMENX[:YB*/)">CKV(]NH[@5B2?%WPG'9W5WY]ZT-I.
M(+EELI"(&)Q\YQ@#/'OVS0!W5%1P31W,$<\+AXI%#HZ]&4C((KR;XAZOJNG_
M !5\)Z59:K>VUEJ;JMU#%,0&S)MX_N\'MB@#UVBO*-6\5:MX"^)FDZ/>7\NH
MZ!K(58_M(4RVTA;;PX ++DJ><\'VYUM'UZVB\?>+)+KQ/<R6]G LDNG3V[)'
M9*H&6#=#D<\=<\YH ]!HKG;+QGIE]!YT<-ZJ&S-\A>W8>9 ,?.IZ'[PXZ^H'
M%9,7Q:\)RV5K?+<W8L+B;[.+QK2188Y.RNQ& ?Z<G H [BBL/5_%NEZ/>&RE
M>6>]%LUV;:W3>XA7@OCIC\<GMFJ<WQ!\.P>$(O%)NY'TB0A?.CB9BI)VX9<9
M'/'2@#J**Y.V^)/A:ZN+^--0*I8VHNYYGB98Q&<#AL<G) P._ R<U9TWQOHV
MI:['HJ-/!?36PNX(YXBOGPGHZ'H>AXZ\'C@T ='17'W7Q,\-6D-[<M/<26-E
M<"UN+R*!GB28_P &1R3[@$<CGFM*Z\7Z9:M9Q%;J2[O(6GBLTMV$WEJ,LS(V
M"H'O@D\#)H WJ*Y2_P#B-X9T[2=,U6>^8V&IMMMKA(F96/H<#*GKU]#Z5"OQ
M-\.M=ZA9?\3 7UDN][1K&43.F,[E3&2,8.3C (S0!V-%<[:^.?#UUX0_X2E;
M\)I(!W2NI!!!V[=O7=GC Z]J5?&FD^1JKR_:()=*B$]Y;21$2QQE=P?:.HQD
M\9Z$=>* .AHKB[3XI^%KV?2DAN;KR]5D,5K.]K(L32 [=FXC&<X_,9Q5>]^(
MBP_$R'PK%8WC1QV[2W$B6S.S,<;=H SM&3ENG2@#O**** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH *@O;B.ULIIY=VQ%).Q"Q_ #)/X5/10!
MYYJ?@VP^('POTW3KA'@O(+2+[/-+$R/;S! """ <=B/\!7'ZAX3\4:E\ YM)
MGAN)=:M+UY)H3\SS*CD<?WN,,/7 ZYKW.B@#R."RNM?^,7AW7;"&=-,TO1PM
MS.\3( [+(/*Y RPW@D=JXA=,U,_#+Q]9C2M1^TWNKQRVT1M)-TJ>:&W*-O(P
MI-?2=% 'GT'A/5-<T#0KBV\4ZQHHBTR"%[6W4*-ZKR6##(;M^%<EX]LKR/XG
M>!I4AU&_@TL1+>7BVLDF,.,LQ52,G&3BO;J* /(O$7A^_P#B%\4-"O(;*YM]
M!T;$DMU<PM#YS[PVU%8!B/E49QCK[9I65FW_  LKXBW-]I%]<:;=Z>RHH@=1
M<A4 9$;&"QP0,?A7M5% 'B?@O1]4\.:KKNDV-[=7_A4:5+-#)=P-&UM*W_++
MY@,-@$L!QT) -<AIIEUCX 6OAS3[&[N=4NM2_<QQV[E2/,R6WXV@#H<GCO7T
MEJ%LU[IUS:I((FFB:,.5W;<C&<9&:P_ WA%?!/AY=&BO3=P)(TB.\>QAN.2#
M@D']* .#\2PZE#XPTW24T&[D"Z*8'U6SM=\L[;2!%YIXC3(Y.0>>H!KEXM-U
M/_AFR;1SI6HC4!>@"W-I('/[X-D#&2,=^G;K7T310!PNKDVGP;S;:$-3DCTR
M&,:?)"3NP%&&3[WR\G'7Y>U>?^';75/^%J^#=6N-*U=+<Z1Y$DDUD42*3;(-
MBJHQ'&NY0,XXY.<Y/O5% 'S>ESX-32]?\(7'B;^R]+N-::9XI[.1KA0A4$!@
M-H!*#!/( Y&3QTWB&+^ROBCHWB58=0O/#%YI:VB7>FF1S$.2O,?)!^4^^3U(
MKM8OAY;PV=Q9?:;:XM[AY'>6[L(YKGYR2?WIX)&>"RGMUQ74Z5IEKHNDVFF6
M2%+6UB6*)2<G:!@9/<T >,^//#\%EX8\)67AW1-1BLX=6^TB#RI97CCSDNP.
M2N<YP>>>@.0-""*XC^.OBK4GL[P6,VBF&*X^S2;'<+"2H.,$_*WY5[%10!\W
MVWAG7KO]GU+*VTZ]6_L=6^UR6CPNDCQ@'HI )^\#QZ5W7E:/J_A?Q'K^EZ1K
M2ZE=Z++:S27@G+LQ3"Q*KYWG/=00/7FO5J* /G$Z;J2^!_AG;G2]0\ZPU-Y;
MJ/[))NA7S]V6&W@8.:[B[M;S3_VA(M6DT^\DL;G2_)BGA@:1"_\ =) PO3^+
M '>O5J* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "FR2)#$\LKJD
M:*69V. H'4D^E.JEK-A!JNAW^GW4ACM[JWDAE<'!564@G/T- &4/&NCF.VE?
M[9';W4B1VUQ)9RK',SD!=K;<<DC!.,]LUT5>3)K>N^!8+71/&]DFH>'UDBBM
M];M1_J]K Q^<G8@A>?;^(UUUMJFH2_$;5=#:\8V2:;%=181-T;N[*<''(^4=
M<T :VK^(;'1+G3H+SSM^H7*VL!2(LOF-T!;H.AZGM6J3@9KQ^[U?5/$'@CP/
MJ%S/$VHR^)43S6CPN5>=%)48[*. 1GVKIM,U+Q'8>.+GPQJ>IPWZ7.GF^LKS
M[*(VB(<(R,BD!AR"#0!UNDZG'K&EP7\4%S DP)$=U$8I%P2.5/(Z5=KS?1/&
MFK7W@_PH\Q:;5=;GFC>6%(U*K'YC$HK$+G" #/KGG&#-<^(?%'AZTU+^T[??
M#+=VUMI-W=^4')F8*WFK$<80G.1C(]* /0J165UW*P8'N#FN5OK3Q+:'5/\
MB<^9IATYGBG*(MS#<#/W0$"%"OJ"0:3X:I./AYH<L]W+<-+91./,"_)E1P"
M"?J<GWH ZO<N[;N&[&<9YQ2UY[:SW-K\4/%5S<ZI=-:66G6T_D[4*A/WK%!\
MN0!@G@Y.>2:@N_%.NVWP[MO':72NI5+J;3/+3RC [ ;5;&\.%(.XL02#Q@X
M!Z363K?B/3_#]M!<7IE,<]PELAAC+C>S;0"1PO)[D5;NR]SI,S6]Q);M)"2D
MJ ;DR,@@,",_4&O(/]+D^!_AZYFO9;F:>^LI!YP7"L;@9Y !.3R<DF@#VJBN
M#/B+5?#_ (LUFQU6^74;.#13JZ%8%B:/:[*T8QU!QD9R?<TZPU#Q?<W&@ZA!
M!-/97FUM0AF^SK%%&ZY#Q%6W_*3T;=D>AH [.[O(;*(23,0&8(J@$EF/   Z
MFHI=2MXI+A/WDC6ZAI1%&SE<]!P.3CG YQ@]Q57Q'X=L_$^EBPO);F%5D65)
M;64QR(PSR&'L2/H:CM_#-E9^([G7H9KP7-Q (98C.3$V H#[/[^$49]!0!0M
M/B+X8O+6UNTOIH[.[D\N"ZGLYHH7;)&!(R!<Y!'7L:ZFO#_#.B:MXM^ FE^'
M+*TACANF827T\HVQHMRS$J@R2W&,<#WKK[J?Q-+XVN/"^F:W#9V\.D17,,[V
M8E=6\PIR"?FR%Y/OT[@ ]!I"RJ5!8 L< $]3U_H:X>SUC6O$NGZ_>Z7J(M'T
MV[FL[6(0HR3-"!DR;@6PS9X4K@8ZFL)-;O/%>O?#S4X+^YL8M1M[N5[>,(5C
MD2/!(W*<_>8<YXZ8R: /5J*\_NM<\3:U;ZS/X=CN!/87LEI;1!;<P2M$0&$I
M=@_)W?=VX&.M7H-6U?Q#K&K:5;7)TFXTRUM_,"*DC&XEC+X8L&&Q>!P,DYYX
MH [$LJE06 +' !/4]?Z&EKS;5$U^3QGX$@U'5#;W<T-V;F.R"F$2I$/F7>I)
MR&(YSC/&.ILW6N>)M;M]8N/#D=P)[&]DM;:(+;F"5HB PE+L'Y.[[NW QUH
M[YW$<;.P8A020JEC^ ')K.T#7K+Q)I2ZEI_F_9VD>,>:A1LHQ4\'D<@]:PK+
M6=2\0^)=0TB.=]*.EVMNUT(ECD<SS*6VY8,NU0.PY)ZX'-?X2B1? ,0E96D%
M[=AV48!/GOD@=J -J^\7Z1I^MIHTYO#J#QF9(8K*:4L@."P*J1C-6--\3:1J
MU]-8VMWB]A7=):SQ/#,J^NQP&Q[XQ7+W_P#R772/^P'/_P"C15/XGK]D\2>!
MM2LQMU/^V8[92OWG@?\ UBGU'3Z9- '>VNIQW6I7UBL%RCV90/))"5CDWKN&
MQCPV.AQT-7:X6'7_ !"=6\=VD/E7L^E10MIT"Q;<L\)?:><DYP.O;MFJ=GX_
MMUT/6-:@U6:_33K(R3Z;>0I#<P3CLP"KA3P,X.,'D]@#T4G ).>/09K,T/Q!
M8^(8+J:P\[9;73VLGFQF,B1,;A@\]^^*S[*W\2KJ6EW+:G;W>GS0L;^*2-4V
M.5!0P;5SC.00['COFN-TKQ!)X;\->)[F!4:ZN/%=Q:0>8,HKR2JH9O89)QWQ
MB@#U:BN.N]6U3P[XST/3;F]?4-/U@2PAI8T62"9%W @HH!5AD8(R",Y[5G>&
M?%=SK.KP:=>ZI-8:S&9/MVD7,"(0-K;6@;;EE!VG.6R.3[@'H5%>7S^+M=C^
M%6K:ZM\/[0L;^6!)/)3#HMP(P&7&/NGMCFM75K[Q-=_$*?P[INL6]C;MI'VR
M.4V8D:-_-V="?FZ>PP3QG! !W=%>>S:WXHUFTU>701.;K3[M[2!%2W\B9XL!
M_-WMO&YMWW<8&.M=U;R7,FG12S0+#=M"&>$OD(^.5W#J >,B@"Q17G&G^*-8
MC\0>%K6?45O1JC3Q7HCA7[-'(L9<>1(%!8 J5/+?4&J4_B#Q:_ASQCJ::S;Q
M/H.H7"1*MFI$J1HC;&R3@')Y'.3U[4 >J$X!/IZ5EZ'X@L?$,5Y)8^=MM+I[
M27S8C&1(F-PP>>_?%8<?B&ZUOQ/;:):7#6*KI::C<S1JK.3(<)&N\$ =23@]
M@,<U4^&"316OBB.XF$TR^(;L/*%V[S\G.!TS0!UFIZS8:0(!=S$27#[((8T+
MR2MC)"HH).!R>..]0VGB*PN]1&G,9K:^9#(EO=1-$TBCJ4SPV.^"<=\5QUA(
M]U\?M66ZR?L>C1BS5NBJS*78>^>,_A2_%]I+;2_#U_:9&H6^MVXMF7[Q+;@5
M^A'4=\4 =_<W45K!++(6(B3>RQH7;'LHR3T/Y55T/6;3Q#HMKJUB7-K<IOC+
MKM)&2.1^%<?X?2]?XB>-A-JES-%;_9E6)U3:5:%F"_=R I8XQCWS7-^%=2UO
M0O '@6^AU",V-S=P6,MCY P4D=EW;S\VX'GC [8/4@'LE%<)?:UK^LW&OPZ
M+J.73)C:V_E+;E)9A&KGS?,;=M)8+\N. 3DYP*]QJOC"\\4:7HHO+;29KW1G
MN9D%NLQMYU9 <'<0XR3CH,'N: ._FE6"%I65V"C)"(68_0#DUS-K\1O"]W9V
M]XM]-'97$GE174]G-%"SYQCS&0*#D$<GM72VJ31VD*7$PFG5%$DH3:';'+8[
M9/.*\5\,:/J_BGX%VWAVPLX5CO)Y5>\N)1LC07+,2%&6+<8 X'?- 'M]%>>W
M,GB5?&?_  B>EZW#:6T6AI<13O:"5U<2>7D@GYB=OTY/&<$6]/U36O$\&ORZ
M;J?V233+R2PMT6!&6:6)5W-)N!.&8D *1@#J30!VQ95QN8#)P,GJ:6O)WU^]
M\73?#G5H;VXL$U":<RP0A"JR)#("PW*<\A@,Y&#TSS6W=ZUXBUDZ\F@?:EFT
MRX:TMMBVYCFE1%8^;YA# $MCY<8'.3G  .]I"RKC<P&3@9/4UQUEK.KZ]K4^
MC-*=(NK'3[>>[\D)(WGRAOE4L&78NT\XR<CD8YQ=8C\1MK?@&WU;5!!?27$Z
MW(L IA9UADPX#KDG;V/ R<#O0!Z92,P52QS@#/ R?RK@[O6O$6LG7DT#[4LV
MF7#6EL$6W,<TJ(K'S?,(8 EL?+C YR>@M66N:MKGB+^PW<Z5/9Z=#<W_ )(2
M1Q/+G$:E@R[5P23@YR.F#D W]"U^R\16<UU8>;Y4-Q);-YL91MZ'#<'D<^M:
M3NL:,[L%51DL3@ >M</\*UE30=72>02S+K=Z)'"[0S>8<G';)[5J^,KV-;&V
MTEO./]I2^5-Y,+R,MN.93M0$X*X3..#(* -K2]3L]9TNVU*PF$UI<H)(I!QD
M'^56Z\W^&E[%I>LZ]X/43);VLQOM-6:%XB;:4Y*A7 .$?(SCO6C%J7B#Q-8:
MQ>Z#?PVL]G?R6EI;RQJ8I/*8*QE.TM\QW8VD8&.O- ';;E#!=PW$$@9Y('_Z
MQ5/3M3CU+[7Y<%S%]FN'MV\^$Q[RN,LN?O*<\,.#7'6Z:A)\9+R-]4N!''H\
M,P@ 0QKNE8,HRN<':#G[WOT IQ>.-5L?#'B"[O)(+F]M]??2K,^5LC&61%+
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
M&_/S+D' XQGG/2MV+PS<Q^,T\1/J8D<6 L&A:W W)OW[MP/WMWMC';O7144
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
M*Z/G8RM@D'!S@^E.H YN;PO/%XFD\0:7J$=I>W4"P7J26YEBGV_=;:'4JPY
M.3QQBK%GX6T^U\.7>BONGAO?.:[D?&Z9Y23(QQQDDGZ<>E;E% '(+\/M._LW
MPW:232N^B3"99C]Z<[3O#<]&8@D<],=*T-9M]8D\0Z--IVHRQ6T;M]KM?(#1
MRH>K,Y^Z1C  Y)([ UOT4 9VMZ[IOAS36U'5KD6UHKJAD*,P!8X'"@GK6+X'
MT2TT^+5-4M8)(4U:\>XCCD!!2+)V@ _=!)>3';S,5U9 /6B@#CH? C6FGZGH
MUGJAAT+47D>2U,&9(A)_K$CDW *IR>JDC)P:LW_A!WUW3=5T?4CIDMG:&Q*"
M!95> D$* 3\I!48//T-:47B*SE\4S>'E2X%[%:B[9FCPA0MM&">O.>@QP:UJ
M ,#PIX9/A>TO;<:A+>+<WDMT/,15V%V+$<<GKU/Z5G:AX&EO-7UVZ@UN>VMM
M;ME@N[=858Y5"@*L?NC!Y&/Q%=A32Z!PA90[ D+GD@8R?U'YT >4^([>+1Y?
M#OA^_P#%)TZ.PLF*WU]91O:SM\J*FUAM#JJD\G(#=]QQI6^C:CXL\+:IH$WB
M"UO=*GCC6'4;;3Q$.I+(@#;6 VI\PXY(Y/3T4@,,$ CWI: .:\1^$F\1Z98H
M^I26>JV$HGM=0MH\&.0#!.TDY4@\KGFJUUX(;6/#MWIVO:S<W]Y<;#]M2-8#
M"R'<AC5>%P<GN3D\XP!UU% '/^']"U337\[6?$$VL3HGEQ,UND*HIQD[5^\Q
MP/F)[<8R<NUWP[+K&L:+J"7RP?V7.TZ1F'?YC,I4Y.X8&"?QK>HH Y"?P'!?
MW/B8ZE=BXM=?2)9H5BV&(QKM0JVX\C /(Z@?2K5MX7N9)=*;6=4745TIO,M@
M+?RRT@4H'D.X[F )Z!1DYQTQLZKJ TK2Y[XVMU="%=WD6D7F2OSC"KW/-6U.
MY0<$9&<&@# T/PR^A:MJUU%J,DEKJ%T]Y]E:-0$E<*&.[J1\HP.,<]:77_#3
MZSJNCZE;ZC)97>F22-&ZQJX99$V.,'C..AYQZ&M^B@#EXO"=QIVKZI>Z+JHL
MXM48274,EOYH$N,&2,[AM8CKD,,C.*VM&TBTT'1K32K!"EK:QB.,$Y.!W)[D
MG)/N:O44 <E%X-N(K7Q-!_:B'^WG=Y#]F_U)9!&=OS\_*!U[_E22>"[B2R\,
MVW]JH!H+QO$WV7_6E$*#=\_'RDYQW_*NNHH X&[^&LUQI>JZ8GB&XCL;V_\
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH *K:CI]KJNG7.GWL0EM;F-HI8S_$I
M&#5FB@#F;'P<L$.F6U[J=S?VFE2+)9Q3*H(900A=@,N5!XZ>IR0#5K1/#:Z+
MJFK7RWT\[:G,)Y8Y%4*KA0ORX ., #G-;E% &3XET)/$N@76CS7,MO!=)LE>
M(*6V]P,@@?E5+4/"4=__ &3<&_GBU/2B?LMZBKNP5VLK+C#*PZCCVQ71T4 <
MS=^#+>]TS6K>>]G-UK*"*\NU50Q0+M"*,84 $XZGDG))IVJ>$$U;PW8Z+-J5
MRL=H\+B9$3>YB(*9R,=0,X'-=)10!@MX:W>+8_$7]H3?:4LC9>5L7RRA8.3T
MSG< >M93_#?3Y] OM)N+^\D6YOVU*.X4JDMO<,V[>A4<<GCZFNSHH Y,>"I)
M]!O]-U'7]0OYKZ!K:2[F";DB(P510NT9[G!)XR>!CH=+L3INEVMCY[SBWB6)
M9' #,%&!G'&<"K=% '/W7A=3XDDU[3KZ6QOIX1!<[45XYU7[I93_ !+V(/3@
MYJOJ'@:QO?!T_AF.ZN(+6Y9GN)EVF65F?>S$D8R6Y/'L,5U%% '/:UX6;78-
M*CN-4N$;3KN.\1XXT!DD3.W=D'CGD#%22^&Q-XLL_$+W\WGVULUL(@B[&5B"
MV>,Y) [UNT4 <;IGP]@TF]E6SUG48]&DF-P=(#+Y(<G) .-P3/.T'![Y&13[
MSP&K^([G6-+UW4]):^V_;H+1DV3D# ;YE.UL<;AS^-=?10!ST7A2&W\4VVN0
M7DT;6]C_ &>EL%4Q^3N#8R1NSD#G/:HK_P (+J<%U97FHS3:9<W0N7MGC7*D
M.'VHV,A2PR>IY."*Z:B@# T[3]2@\6ZI>/J-Y-ITZ($MY\;(I!@?NAU P#D]
MRPZX-)XC\*0Z]=Z=J$5[<:?JFG.S6UW;A25###*RL"&4CL:Z"B@#D[?P.(9O
M$$[ZU?2S:Y$D5RSI%A=L?E[E 7@XS[<C@XH_X0:,6GARW75;I5T$J;4[$R^U
M-@W\<_*<<8KK** .7\0>"TUC6K;6['5;W2-5AB\@W-IM/FQ9SL=6!! /(_\
MU4S5O =GJ>G:?&FH7UMJ&G2M/;:DC@SB1OOEB1A@W<8QT P!BNKHH Y>]\%0
MZEX8NM'O]3OKB>Z=));]ROF[T8,A "[0 5'R@8Z]R34ESX2$NIV&KPZG<Q:Q
M:0M UVRHWVB-CN*2+@ C/(QC':NDHH Y/4? =GJ/AZ^TE[ZYC.H7(NKRZ4)Y
MLL@96'48 &Q0 !T'XUKWFE75Q<V-W!JDL%Q:HZ']VK),&VYWK]5!&"*U:* .
M-N?"=QIUEIUMH6I7MM*FHM>3F(*$G+OND\P8P%Y.%'L/<=1J6G6NKZ9<Z=>Q
M"6UN8VBE0]U(P?I5JB@#E/#_ (+ET+RUD\0ZGJ$%LI6RANRA6WX*@\ %R 2!
MDX /2JY^'=N?!3^%CJMY]B>?SS)MC\S/F^;C.W&-_/3VKLZ* .?N?#R'Q+9^
M([C4Y5DLK9X-A5%C*-@L6XSG*@]>*XWX>Z&NN_#Q-/O-0D:PDNYVN+((H8CS
MW8(6ZA&&"1C)R<'!Q7J5% &&_AM&\81^(Q>3+-'9FR%N%7R_++!CVSG('.:S
M8/ -I;:9<:)%?W T">4RG3]JX4%MS1J^,B,G/'7D\UUU% '#^*VTOQ9<GP8;
M.YEN(KBWFF?[.ZQP1J0Y828VY*Y08.<M['&WXG\*V7BC3(;2:6>TEMI5GM;J
MU;9);R+T93]#C%;M% '*OX&MK_P]>Z5KFHWNJO>*JRW4Q5'7:<IL"@!=IYZ<
MGKFDL?!DT&FW5K?^(]5U"66W>VAN)F0-;HPP2N!R_3YFR>/KGJZ* ,2S\.B+
M74UJ]NVN[^.U-I')Y:QXC+!CD#JQ('/3T R:77_#=OKTEA<^?+:W^GS>=:74
M.-T9(PP(((*L.".];5% '.3>$8KJUU@7%[,][JUO]FN;H(H*Q;2H1%QA0-S'
MG)R23GC&KHVF_P!CZ-9Z:+B2=+6%84DD #%5  S@ 9P*O44 <Q?>#(KOQ#>:
MM%JE]:_;[9;:\@A*;9E7(4Y*DJ0&(RI%<EKNE0^&[;PWH<NM:U9V5C%(T>JI
M LJ!@H18F4(5'REB"1V/)))'JE% ' Z3I$OB/3-1TK4]7NM<T"ZMP@FN+);9
ME?/'ED*NX# .<8! P3R!JZ-X0N-+A9+GQ'J>I.D9BMFN]A\A2,9  &YL<;FS
MQZ9.>IHH XY/A]!'X9T?0DU6[%OI-S'<P/M3>61MRAOEP0"?05<E\'1/KFJ:
MI'J5Y"=4ME@NH(]FQRJ,BODKN! 8\ XSC-=+10!@6WAG&K6.IW]_)>W5A \%
MM(T:HP#XW,Q ^9OE'H.3Q6AHNG3:5I,-E<:C<ZA+'NS<W)!D?+$\X '&<?05
M?HH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH ***CN(WE@=(YGA<CB1 I*^XW C\Q0!)17@>B
M?$+QA>_#+6_%DFM1&ZTN\6(6\EK'Y4J'8,' # _/U![?C7IVB>/]+O-!T&[U
M:>+3KS5X5>&"3(#MG!"DC!&<?@1ZT ==16!!XV\-76D3ZM!K%M)803_9WF4G
M'F<?*.,L3D8QG.>*F'BO1&TV_P!0%\OD:?G[6"C+)"0,X9"-P/H".: -FBN0
M\(?$#3/%'AV;6'E2TBB:5W$IVB*)78*S,>,D $X/&:W=,U_2]8>9+&[$DD*J
MTD;(R.JL,JQ5@#M(Z'H: -*BL*T\9>';Z^6RM]5@>=T>2,<A954D,48C#@8.
M=I/0UE>$_B+I?BW5M4M;1ML=K-Y4#.C S +EGY& ,] ><#WQ0!V5%9&G^*-%
MU6[6ULM0CFE=&>, $"55.&9"1AP#P2I.*XSXD?$.WTKPMJDOA[6XUU:PECC*
MK&)$+%U#(2RE2P!)P#D8]C0!Z516=H%W-?\ AO2[RX;=/<6<4LC  99D!)Q]
M37FVF>(_$NI_&37/")UZ:*PL[8S0NMM 7SB,X)*<CYSZ'@<T >M45YQX2\?W
M\OC'6?!WB183J6GAI(;JWC(6XC !R4YPVU@<#W].;G@OQ.Z^$+G4_$/B?3=4
M"WK1+=6:$( =NR,*%!+Y/0 GD#GK0!W=%9<'B+2)]/N[Y;Z-+:S8I<O*#'Y+
M!0Q#A@"IPPX/K6+J_C"QN_#'B&70]3"ZEIMC)<%#%MDC(0NA*2+]TX'..0>#
M0!UU%<1X)\8_:OACI7B+Q)?Q1RW&]9)2H7>WFLJJJJ.20 , 9-=':^(]'O+.
M\NXK^(0V1(NC)F-H,#)WJV"O'/(% &I16+;^+-$NH)YHKT[;> 7,N^%T*Q'H
M^"H.TX//3@U"?''AD6-E>G6+?[+?2&*VFYVRN#@J#CKGM0!T%%8U_P"+-!TO
M4SIM_JEO;7@B,_E3$K^[ )+9/&,*>?8TV+Q?H%QI5GJ<&I1RVMZYCMC&K,TS
M D$*@&XD8/ ':@#;HK';Q5HBZ9:ZB-0CDMKM_+MVB#2-*_/RJJ@L3P<C&1@Y
MJ[IVI6>K6@NK&=9X"S)O4$?,I(8<]P010!;HK&U7Q7HFB/,M_?K&8%5YMJ-)
MY*L<*7V@[ >Q;&:74O%6A:18VM]?ZG!!:7>!!.3E),C(PPXY'(]: -BBL;2?
M%>@Z[J%U8:9J<%S=6H!EC0G(![C/4<CD9'(]:XWXD?$2WTKPMJ<WA[6XUU:P
MF2-E6,2(6+J&0EE*E@"3@'(Q[&@#TNBL[0+N:_\ #FF7EPP::>TBED8#&69
M2<?4UPVC>,M2\<>/M6TC2+K[!HNC_)-<11H\UQ+N*X!<%57*MV)./?@ ]*HK
MS@^--0\-?%"U\):U<"]L=3B62QO&14E1R2-C[0%;)4@$ =1UK2TCXBZ5KWC'
M5/#]I*56T5(TGV',DQ+;@N1C"X')ZG/;J =K17DOP\^*<-QHE[+XPURVCN5U
M-[6!G0)\@5<9"C &2>3@?E7I>HZUI^D^0+RY"/<,5AC52[RD#)VHH+-@<G X
MH OT5AW7C'P[9:5::I<:M;I87AVP7&24<^F0.O!X//!]#5C2_$>CZU>WUGIN
MH0W4]BX2Y2(Y\MCG )Z'H>GH: -2BO+_ (E^)]>\/^+_  G8:7J;P6VL77D3
MIY,;[!OC7*EE)!PYZYI^A>-M7MOBGK'@W59DU"UM;?[3%>)#MD0;5;#JG!X;
M' './7@ ]-HKFX/'_A.Z:R6#7;21KZ?[/;!6),DG' &/<#)XYJS-XO\ #]O?
MO9RZG"LL<JP2,0?+CD/1&?&U6/\ =)S0!MT5QOB#XBZ7H7C'2O#DCYGN2[W+
ME6(@C$;,O3JQ8 8YP,Y[5M7_ (JT/2YS#>:C'$ZHLDF02(D8X5G(&$!/ +8%
M &Q167JWB/2-#"'4+U8BZ-(J*K.Q11EGVJ"=H'4XP*Y[Q5\2M&\/Z=I5Q!<1
MW;ZI+&ML8\LAC+ -(2.P&>.I/'K@ [6BL>Y\4:+:6]M-->@+<HTD*K&S.ZJ,
MLP0 M@#J<8%+>^*-$T_2[;4[G4H%L[HJMO(IW^<6Z! N2Q/H : ->BO-/!GC
M'4=;^*'B31FU$7>DV<*26N8E5@3MR"0 >"2,'D8YYKTN@ HKS[PS\1EUSXEZ
M[X:D41PP(KV#%<&4*/WA]P<AE_V1FNSU+6+#2$B:^N!$9G\N) I=Y&QG"JH+
M,<<\"@"]17%>)OB;H.A^"SXBM+J._2;,=HL62)9?0_W0.^<8^N*K>(/%,T]U
MX8;1_$=AI\5U>!9X[J%LW:Y4&.,E3\V3C&1U'([@'?45CZGXJT31[IK:^OTC
MF2+SI$"LYBCSC>^T'8ONV!1J7BG0M'CM)=0U.WMXKS'V>5F^27.,88<=QWH
MV**QM(\5Z#KTUW#IFIP7,EG_ *]5)!0>O.,CCJ.*73?%.BZO<1P6-Z)9)8VE
MB'ELHE12 60D ,N2!D9'- &Q1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 5'//%;0/-/*D42#+.[!
M0![DU)10!X%\"] T/7O#6IV^KVZ7;QZAYJVLTK%"-BX8Q9VGG/)%;/Q>CLCX
MV^'5I*(5MDOCYD1P%6/?".1V7@CTX->R8'I1@>E 'DWQ7T<65UX1O[.UBM](
MM=;2XU'R8PB LR?O7Q[!@6/J*HV%I>:K\2?B1J6G!I]+FTO[*KQ?,DT_DH %
M(X8C#CCIGWKV<@$$$9![4BHJ*%10JCH , 4 ?-\0N-2_9D_L_32\MS97+/>P
M1J2RIYS'!_\ '6QZ#-=C'!IGBW1]9U_PUJVI7^N7>A26C(0BI%D B-@B*!)G
M('X]J]@P!T%-1$C7:BJHZX Q0!Y'\+-3\+ZWHWARWN;8'Q-HB/;+$8W\R#J"
MQ[;2.YZ$XZU@>#H[IO"WQ*T&V\Q-:EN;DQVP4^85*D=.V>@/J1ZU[V$169E4
M MU('6G8&<T >)?#L:+XCTOPRZZOJ!\0Z'#+!%9*J*+<E=K%\(#L( Y+=3CK
MQ7&17UO9? /Q'X=O6\K78M34S6C@^;GS(OG(ZXX(W=,X'<9^GE1%+%54%N20
M.M'EIN+;%W'&3CDXZ4 8_A"1)/!>ALC!E^P0#([$( 1^!!%>2:#J^FV?[2/B
M:^N;^UAM'LBBSR2JJ,P$.0&)QGY3^1KW6DP/04 >-^$])N=<^,NN^/9(9+71
M(HS%;3SJ8Q/B-8]XSCY,*QS[CWQR7@K3M+UKX-W6F:AJ9TV1M?+V]T#Q!+Y2
ME&?D84X89]>>U?25(5!Z@4 ?.NKR>+-;^#^O6]XB7MQINJHL][;?,+V*,8+$
MC[^TA,MZ#GD&NXN]:\(>(_!WB;Q)I"1_VG=Z'+%=S;6!3]WA8F)^7=G  ')Q
MW&*]25510JJ%4= !@"D5$1=J*JKZ 8H ^<K6&X?X>?"[4 V=,TW5F.H$'Y82
M;C*L_H  W)_O#UK=6R@U;QM\2M1NI)?^$8GM([6:YM^09 L8++V8IAB<9Z^]
M>XD @@@$'J*1454"JH"CH .!0!XIX*&NP?\ "3>%I[RWUVRM='<6.I6YWG:X
M(2$L,]>H4DXQQP17!?VG9O\ "OP58+,#=6>M.URF#^Y'F,1N/1<@YY]_0U]4
MJBIG:H7)R<#&32!%7.U0,G)P.IH \=\3"RN_VD?"ZW!AEA73CD,05WXF* ^^
M2I ^E,^( C\*?$OP?J9WZ9X=@AEMQ-9PH$MI'W;CM*E1G<N>.0#Z5[/@>E(Z
M+(I5U#*>H(R* /%-;\)>'Y?#EA#HGB2[L;B349K[3=3NY L33%5W ,H7:K8X
M('4'&<@'M_A9JNIZSX*CN]7@BCNS<2HTL2@+<X./-&..3GD<'&>]=FR*R[64
M$8Q@CM3@   !@#M0!X'X[U.RD\4>.=.LK*:SO6TL&YF6.25[TJJD #E8T"]6
MQDXZCFLWQA<P3_L_>"8UD5F%Y""IZX5)0WU R ?K7T=@9SBDP,8P* /'+"9)
M/VC];^R3Q RZ*(XG5A@OMB( ]>F?PK@XKZVLO@%XA\.WC>5KL.I@S6C@^:#Y
MD7SD=<<$;NF<#N*^H,#TIOEIN+;%W'&3CDXZ4 9'A&1)?!FB,C!E^PPC(]0@
M!'X$8KR_P#9'X=_$KQ+IFLL+:TU5A/87DIVQ3!68[-QXW8?I_LGVS[3371)$
M*NJLIZAAD4 >-ZQI[>/?CEH][I9\[2=!CC>YO4YB,JNSA%;HQSM!QTY]*G\!
M7,6F?&'Q];7K>1-<SQRPHX(+H"Y+#_9 (.>G->O*JHH55"J.@ P!2X&<XYH
M^5(9(#\#/$\8:/SY-?4JN1N9<(00.I'#?D:[GQ-J+:/\0O!&OWM]/:Z')I(M
MA?0JKK%*RMD_,K 9RF3CIGTKW' ]!2.B.NUU5E]",B@#Y^^)FEZ-I'PETZST
M:[NKBRGUL7$4EPPRX*/N9, ?)D]<=\]"*]VT_3],LT,VG6EK")E3=)!&H\Q5
M&%R1]X =*NX'I10!XE\:IK63QUX"ADG4+%>DW&V7:T2&2'DD'*\ G/'2O4M/
MT'0=!@N[[3[6W@-PADGNBVYI!C.6D8DD=^36W@>E% 'C7P TS3;GP--+/:6T
MUY%J32!I8U9XB$7:1GE?XL?4UQJV]S9_![Q5X;O@S>(YM?4"U/,TS$Q$,J]6
M!VN01UKZ7QBFE$+ARB[P,!L<T >*ZP)M$^,/P]NM9<HL6D&WFN&R5:812@@'
MN2S#CJ=P]:H V4'Q'\<Z%XMU.\TVWUPQO Z(N+F(9"J&9&.0&  7'((ZU[W@
M'M32B,RLRJ67H2.10!X=>7%MX,^+.GR:\+@>';W04TR"XO%W;% 7*R$#[V5.
M[_?STJ3XDVNEZ=HO@.;1[8VVA6>K*P8JP2-"X.XEN<'#$$]>M>VLB.,.H8 Y
MP1GFG$ ]10!XGXFU2/2_C59ZOJ>H7-CHFI:3]FMK](U*+SDJ=Z, "1Z?Q YQ
M5#7M*L?"FJ_#FZM9KQ_"UE=R 7-YTC+N&#L<#"GJ"0.!FO>71)!AU5AG.",T
MK*KJ5=0RGJ",B@#QWP)?6EY\>?&-Q;2J\-Q;Q^2X&!)@1Y*^OKGN.1Q7H/C#
M6HM,TM+-;^&SOM1D%I;22,!L+<&3&1]T9;Z@#O70@ = !FEP#0!X'\3]-OO!
M6O>&/&5O/8O)9.EH8+2%H2T2@X&"[9&W<N>V16KXV\0Q6/Q#\#^-#(TWAGR9
M(S<("RQ-(&4DXZ'#+QU^0CM7L^!36174JRAE/4$9% 'B7Q1L-%_X4U,_A2SQ
MIO\ :27#-"C;&)!W.">JY(&1QQ@=*E^)^JV-]J?PXNK:ZCD@&I))Y@.!L#QY
M;G^'@\].*]IP,8QQZ4N!Z4 >%W!;1?%?Q3.M2K&^H:8SV+2M@3QE&553/WL9
M5<#O6%KUG=Z9\+_AQ8ZN/+N4U'S7BF^\D1<D;@>@"LO7ITKZ/9$<J616*G(R
M,X-.P#0!XIIDUE)\<?'XG?S+672MK")AEP(X@X7W'S4GPV74=!\;VOAZUU2#
M7O#LEI)<VEP#F2R4G[K=TR0 5/!/(P017M> >PI BJ6*J 6ZD#K0 ZBBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ JO>WMMIUJ]U=RK#!&,O(W11ZGT%6*1@"I!Y&* *]EJ%GJ5A'?6-S%<VLJ
M[DEA;<K#V(ZTRPU6QU3SOL5RL_DN8Y-N?D8=5/N/2O)?"\L_PTT_1;^1WD\(
MZS;0/<EB3_9UTZ+E_P#KFYZ^A_7K3XA3P_H5_=1(DT]WK;VEJA;"O+++M4DC
ML,DGV% '<U0UG6]-\/Z;)J.JW:6MI']Z1@3^@R3^%8,^OZKI/BW3M"U%K.9-
M6AE^QW4,#)Y<T:[BKH7.01R"".F/>N"O;K5;_P" _B6[U.]BN6>:X&1"4;(N
M2#D[B,<<  8'&30![4#D9%4M.U:QU7[5]AG$WV2X>UGPI&R5<;EY'.,CD<5S
ML.O:W9^-[+1=22P:UU&SEGM_LZN'A:,KE78DAP0W4!?I6/<>.=<@\$>*]8%M
MI_VS1M1GM43:_ELD>T9/.2?F/<4 >CT5Q\/B#7+7QKI6E:FE@UGJUK-+ +=7
M$D#QA20S$X<$-U 6LF^\>:NOA2^\2V<%G]GM=2-E]CEC<R%1*(<E@W#9(;&.
MG'7F@#T:BJS7!L]-:YOF13#"9)S'G:,#+8SSCK7-:=K/B;4[+0]8M+.RET_4
MF1YK;E9;:W=<K)YA;#$#;E0O? Z9H ZZBN(_X2K6-3T'5]=T5+)K33YIDBMY
MXV+W2P\.=X8!"2&V_*>@SUP(1XTU35-9\/6^C0V*V>M:=)>1R7(<O$5"]0"
M<;N@ZXZB@#O:*\H\0>*=?O?AAXCE:>UM=1TS4FTVXEMXFVS+O124!;*960=S
MT.,9R.QU/4M;L+NUMGGTZ"!H':34)(25>;< D20^9N)(R>ISCC&: -G4]6L=
M'AAFOYQ#'-,ENA*DYD<X4< ]3^%7:\[7Q[JEQX$\-^((;2S234;Z&UN8WW$)
MNE\LE.1Z$C/3WK1N-=\1W'CC4?#NGC2X4AL8[J*XG21R-S,N&4,-WW>Q&,]3
MTH [.BN!TSQ_<:AX:\/7#V\<.I:M)-$PCADF2/R2PD8(OS,,J,#/&[D\4'QM
MJ^FV.I#5-,W3I>06FF3^1);1WK3'"_*^67:<[OIQ0!USZWIL>MQ:,UVG]HRQ
MM*D !)*#J?0=1UJ35=5L=#TR;4M1G$%I  9)"I;;D@#@ GJ17$W$>IQ_&'P\
M-0GM9Q_9MV4:"%HL',>X$%FXZ8.>_P"-;OC[7;_PSX-OM8T^*VEFM@IVW 8J
M06"] 1Z^M '2@Y&117(:KKVNQ>.K7P_I\>GK#=6$ERLTZNS(RLJY(!&1\W3C
M/J*M^"]>O=>TJ\.I1P+?6-_/8S-;@B-VC;&Y022 1C@DT =&S*BEF("@9)/0
M"J.DZSIVN6LESIETMQ#'*T+.H( =>HY'.*Y9KG6'^,9L1?P"QCT<7"PM;DX#
M3;6&0X^8[!\W0#C;U)Y73==UOPSX0\2:W8I8-96.O7CSPSJ[23*9\,%(("$
M\$AL^W< ]5EU:QAU>WTJ2<+?7$3S11;3\R+@,<XQQD=ZNUS-UKU];_$+3=#\
MJV-C=V4UQYF&\T,A48ZX ^;TK/\ #GC&Y\0:HEO%=6$<T-S+'?Z9)$R7-LBA
M]K E_FY"9(7'S=L4 =M4'VRV^W?8O.3[5Y?F^5GYMF<;L>F>*G) !). .]>*
MZEXBT^S\4Z3X]BUBUD,]XUC=6JW*EDL7PL;;<Y&&7S#WS)[4 >U45S_BGQ!+
MH::5';QQM-J6H16*22@E(M^3N(!&>%( R,DCFL>/Q/X@&L>*--,6G2?V+;I/
M'-L=/-WH74$9."-I!YYX/% '<45YY8^,?$*>&=.U_4X=-^S:G!:QVL%NDID%
MQ*P&6ZY3!+8'S<8Y/-6)?&6JZ-/JTVJV+W.DVE@;R*]CLI;4&0'!@99">3P0
MPXYH [NBN-M]?\1?V_86IL1=V5W&XFE33Y[<6<@7*[FD^^I/&0 >_?%8#>._
M%">!9/%30:3Y-G>/#<6P20M*@G\KY&W80CW#9]NE 'J-%<A'X@UJP\<6^CZN
M-/:TOK.:YA:V1PT!C*[E8L2'&&Z@+TZ5G0^--;OK32M6TW3FN[*]F3S+-;"<
M21P-TD$Q^1B!@D8QS@'C) /0**\[N/%?BN5?%OV2/2(SH,A*F5)'\U1$)-N
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %1S^=Y#_9UC,N/E$A(7/O@&I** ,/2M!">#K;P_K$=O=11VBV
MDH7)25%4+G!Z9Q^'K7/1_#.*+P&WAF/495:"\-W8W;#<\+!]T>1_%C[I]1Z5
MWM% '-Q:%?:AKVEZQK;6@FTR.1;>*U+%6DD 5I"6 (^4$!><9/)KGIO &KMX
M'UGPLFI61M[R>1[>0Q,&C5Y?,._D[B#P ,>OM7:7FNZ=8:M8:7<W&R\ORPMH
M]C'>54L>0,#@'J:DM]6L[K5+W389&:ZLA&9T,; *'!*X8C!X!Z$XH Q+K0-3
MN_&&BZXSVBII]O-"\09B7,@7)!QQC:/K[5C3>!=5G\)^*-%:[LE?7+Z6[$HW
M8A$A4E<8^;&WKQG/MSZ#10!RMYH&I7/BCP_K3R6B1Z5!-'+&"Q,GF*H)!QQC
M:#CO[5P^ERW]W%/KUAJG@ZXM;B\DO%.H)(DJG<=F\*^T.J[1G;N&/6O878(C
M.QPJC)/M7*PZAX-?3;GQ;#:6;16[N);Y+']Z&5MK?P[SS0!NVQ;5M"A-]:F%
MKNV7S[=CRA=?F0GVR17+>&/"WB708;?1IM<M9]!LW!MRL#"Z9 <K&S;MH4<
MD#) QQFNV1@Z*Z_=89'&*6@#B;3PAJFD6VM:5I=Y:C2M4EEF0S!O,LVE'SA0
M.'&<D E<9YS4T7@Z:P\1>'KK3W@33]&L7LDAD+;W5@HW9 QD;!]<GI71W>K6
M=C?V-C<2,MQ?.R6ZB-F#%5W') P.!WQ5V@#S^;P#J%WX8\4Z1->VL;ZSJ#:A
M%(BLPB8LC!&!QD?NQS[GBM";PYXA?Q58Z\NIZ>95L6L[B)[=RD>7W[XANR#T
M4Y/(4?0=A10!YS!\/]8M_!&D^'O[1LI&T_4$NUE,;*"J2F0*1DY))Y/ 'H>M
M;\.A:E#XYO?$.^T:.XL$M%@W,"I1F8,6QW+$8Q73T4 ><0?#O5;7PMI%K:ZM
M!;ZUHUW-<V=VL9:-Q(S%T=3S@A\<'M6CJO@_6/$OAN6WUK5X(]6\V*XMI;*%
MEAMI(B2A"LQ+9).23W'3%=M10!QD/AWQ'=>+-&U[4[[2U>QMYH)8K:&0B3?M
MR0688^[^'O6EXWT"Y\4>$KW1;6:&![H*IEE!(0!@W0=>F.W6NAI'8(C.QPJC
M)/M0!S,V@ZG-XWL/$!>T$=M8O:/"&;+%V5BP..Q4#&*D\(Z#>Z FK+=RP2_;
MM1FOU,6?D\PY*'/7&.O?T%:>CZWI^OV)O--G\^W$CQ%]C+\RG### '@T^75K
M.'6+?2I)&%Y<1/-&GEL054@,=V,#J.": ,>[\/:@?'D/B.RN[=(S8"QGAEC)
M)42&0%2#P3DCD''7FL&;P%JL_@;7_#S7=D)-6O9;D3C=B(22;R-N.<8QU'7V
MYZRT\3:3?6NI7-M=&2'3'>.Z(B<%&50S#!&3@$=,U?L;V#4;"WOK9RUO<1K+
M&Q4J2K#(.#R.#T- &!/H&I7'C32=>>2T6.RM)+:2$%B6,A4E@<=MHX[^U4CX
M/O;_ %71+_56L?MNE3>9_:%N&$]P@5E$; C@'().3G' &>.THH R?$ECJ&IZ
M'<6&G30P2W"^6\LN[Y4/#8QSDC(SVSGM4?B'1/[<\(7NB^5;I]IM3 %).R,D
M8!&!GY3@C@=!TK:HH \R\00ZC8>%O#OAG5-7TK^T'N%5;B\B8P7"0KNP^2"K
M9V=#DD>A.+6DKKC-J.BR?\(W,;VUD=[C36EW(Y 4--N+$Y!..<G9CH,CK_$4
M^D6FAW%SKL,4NGQ8,JR0><.2 /D .>2.U6[*QLM-MA!8VEO:P=1'!$(U_("@
M#DW\#W%W\-['PS<7RP7E@D/V:^MP3LDBP4?:?IR/UJ:/PWKNMZ+?:?XNU.SG
M2XMGME33H6C7#=9&W$Y?@8   YX.>-[2==T[7%NVTZX\X6EPUM,=C+MD4 E>
M0,XW"M&@#D?#NC^+K%8;?6M;LKVULUQ 8(&CEN"!A?.8D@ =<*.3C)/0Y+^
MM6?X<WWA8WED)+JZ>?[3AL*&F\TC;WYXZ^]>B44 <O>^']0OO&>DZY(UHL-G
M:S6\D&YB7\S;N(..VWIW]JS/#WA'Q+X?5=%BUVU?PW$Y,(:!OM:1YSY0?=M
M[;L$XZ8XQW=% '%Q^$]41?%X,]F?[?R8^6_<9B$?/'S<#/;GCWJ,>#=5B3P?
M+;W]G'=Z! ]JY>)G25&B6,L!D$'Y0<=.>M=;JFI6NCZ9<:C>NT=K;H7D94+D
M#Z $G\*LQR++&DB'*N 5R,<&@#!T>?6W\2:S#?3VMQIJ%#:-#&5,9.0T;'HS
M# )QTS[X$&N^']4O/%.DZWIM]:QFSBEA>"[B:1,/CYU"D8<8Q[@XR*UM,UW3
MM9FO8;"X\U[*7R;@;&78^,XY SP1TK1H \X3X?ZS'X=32?[3LI1'K(U))&B9
M3@2F7:<$\DG'& ,=ZW9-*N++QO<>+;VZLX+!-+%I*K.1Y:JYD,A8@#')&/3G
M/:NJIDL4<\+PS1I)%(I5T=<JP/4$'J* .*\/:9IFH>/-6\2Z5=K<6$D4:@Q.
M&A>Y*X>12."1'Y:DCN6'7-=1KFCVVOZ'>Z3>;OL]W"T3E>HR.H]QU_"K=M;6
M]G;I;VL,4$$8PD<2!54>@ X%2T <;%X5U2]T_1M,URZM)[72IXIO-A#![HQ#
M]WN4\)S@G!;)':G)X5U2UU7Q-/:WMH;36<2".2-@Z2>4(SE@<;>,],]N.M=A
M10!P?_"%ZJ/#GA/2Q<V>[0+J"X:0[L3B)64 #'RY#'GG&.]/B\*>)='U[49?
M#^M64.DZG<-=3P7=LTDEO*WWVB((!R><-P#V/?KM3U*UTC3+C4;V0I;6Z&21
ME0N0![ $FK,4BS1)*ARCJ&4D8X- ',VWAR^M_'AUWSX7M/[-33_+=F,I"N7#
MEL8))."/QS6AXKT67Q%X6U'2(+MK26[A,:S*,[?K['H?8FMBB@#AXO#^L6'B
M.S\3ZCJ&G+'9:9):W,%K:N%$897^3YB<_+^7 '>N3T9]6M]*AUNTO_!U]&[M
M>1B99%G:1R3T5V593NV_*N<\<U[)6?!H6CVMZ;VWTJQBNR23/';HKG/^T!F@
M#'LM$U$>.IO$DIMT@N=/CM#;9)DCVL7SG&"<L1C]:S;;PGXET76-070M;LX=
M%U&Y>ZDBN;=I)K9W.7\H@@<GD;L@>AYSW59^MZYIWAW2Y=2U2X\BTB^_)L9L
M?@H)H YB[\*:_IWBBYUCPOJUG"E_'&E[;:C$\JED7:LBE6!W;0 03SCGVN3>
M&=1?Q5H&K?;(IDTR&>*4RY$D[2[=S<#"X*Y Z=N*ZI2&4,.A&12T <1%X1U5
M--\76K3V>[7Y)9$8%L0;XQ'@\?-@#/;-5YO!6NVO]A:EHNIV=MK.FV"Z=,)X
MV>WNH1C 8##*<C/'KC-=_6.WBC1UGFB2Z:;R&*3/!!)+'$PZAW52JD=\D8H
MQ=6\+ZUJEKHIGU"UEN[+4X]2G<HR1L4! CC7G:N#U))R,\YJ;_A%[V7Q1KNI
M33VZVVJV*6>Q-Q>,*& ;D8.=YXXKH[#4+/5+-+RPN8KFV<L$EB;<K;6*G!'7
MD$59H PO"&D:AH/AJRTK4+JWN&LX4MXV@C*#8@V@G).6('/05#XB\)QZ]K.C
M:@9S";&1Q,H'^O@9>8S[%E3/MGUKHZ* .;T+PG%HGB/6]4CF+1ZA-YL4': L
M%\TC_?903]!5&#P?>NWC!+JYMQ%XA5@IB!+09B\KG/WN.>U=E10!PC^$-=FT
MOPM;3WNGO)HEU%.2B.@D$<9C"]^2"23Z]JU]*T&]L?&NN:W++;M!J4<$:Q(6
MW1^4& ).,'.X_3WKI** .;\2^'KW5=5T+4].N[>"YTNXDD N(RZ.KQE&X!!R
M <CFJMKX:U2VU[Q-J7G6D@UB*&-%)8&,QH4!/'.<YXQCI[UUU% 'G2> -9L=
M%\.-I>JVMOK>A1-;I*\;-!<Q-C<KKP1T!XZ8_+L]&M=3@M6?5[R*YOI3N?[.
MA2&,8P%122<=\DY)/I@#2HH Y35O"MW_ ,)3'XGT&[AMM3,/V:ZAN$+0W46<
M@-@Y5AV89],8K7MK?5+EU?5'MHXU!'V>U9F5R1C+,P&1@GY<#ZFM2F2RQP0O
M--(L<2*6=W. H'4D]A0!PMKX%U&T\*7/@Y;Z!M"E9DCG.[[1' S;FBQ]TGD@
M/D8!^Z<5JQ>'+RV\<G78#:BT72UTZ.VRP8!7+ALXQWQCTYSVK7?7+".[TZU>
M219M1W_9E,+C=L7<V>/EX]<9[5:M;RWO%=H) WEN8W7!#(P[$'D'D'GL0>]
M'!R> M5E^'NJ^&#>60DOKJ2<7 #80/+YA&W'.#QUH9M27XSNULEH\P\.Q^;%
M)(RJ?W[]&"D\'_9Y]J] FFBMH))YY%CBC4N[N<*J@9))["N23Q+X,_X2B"'R
M8X]<N2JQ,^G.DTBL"0P8H"5.#SG% %*X\!7\=I9S6.H6_P#:2:N^K77GQ,8)
MY'!!&T'("C&T\_=SUIDO@;6I+/Q=;-J=E(/$ Z^0R>4QC",?O'@8X'YFNOMM
M=TZ\UF[TB"XWWUHBR3Q;&&P-D#DC!Z'H:T: .0F\,ZG-JWA2],UFHT1)%D7+
M'SM\?EG''RX'/?T]ZHR6NB^*_B%IFK:3J,5TEE;/]N-K*KQR8<&!'(_B#AG'
M^[]*[VJ]I8V>GQ-%96D%M&S%V6&,("QZD@=_>@#(NY];3QK816T]J^D/ WVF
MW\L^;&V&(DW= "0B@=\L>W">+O#7_"3:9;Q17/V6^LKJ.]L[C;N$<R'C(XR"
M"01[UT%9VKZ[IVA102:C<>2L\RP1'8S;G8@ < XY/>@#,CT.^N]?MM>U,6GV
MRRM9(+2"%V,:L^-[EB >0H &.!GDYX=X'T"[\+^%;;1KN:"=K9GVRQ @,&=G
MY!Z8W8ZUT5% ',:OX?U6X\8Z?KVG7UJBP6LEK)!=Q-(JAF#>8F",/P ?45S]
MM\/]9M?#FD:3_:-E*--U@:DCF-E+JLK2!#UY)<\]!CH>M>CT4 <I_9DVE>,=
M2\5ZA=V4&GR6"6\@=R/*",S;RQ '\1&./K5/POI6G7/C/6_$FF70GT^<JL7E
MN&A:<J/.D0C@Y"QJ2.X<>M=G/!#<P207$22PR*5>.10RL#U!!ZBB""&U@2"W
MBCAAC&U(XU"JH] !TH BU'3[;5M-N=/O8A+:W,312H>ZD8-<WH6C>)O#EA%I
M$-[I]_I]NOEVT]R'2>.,?=5@H*O@<9RN<5UM% '*Z[X3N=1DT?4K;4 -9TJX
M:>&:928Y XQ)&5!^52.!C)&!UYRVX\+WE]<ZOJMR]LNJ7VG?V="J%C';Q?,3
M\V 6)9B3P.@'O7644 <-)X.U5M \)::MQ9[M N()F<EL3^4A0 #'RY#9SSCW
MI-9T&^M;SQ;KTLMN;>]TAH!$I;<GEHY!SC!SN/';WKNJBN;6WO;=[>Z@BGA<
M8:.5 RL/<'@T <#X:T*]\0> _!]OJ#VJZ=:V]G=_NBQ>?9&K1H01A0#C)R<[
M>V>(]2^'^NWFD^(M+CU>R^S:G?\ V^.66W9I0WF(X1SNQM78 ,#.,=*] M+.
MUL+=;>SMH;>!?NQPH$4?0#BIZ .6MM U:'QM/XAEGLY1)IJ61C7<GS*S/N[X
M!+$8YP.YK/TNSTSP9X+_ +!\5:GIJP7#7(!>38)UD9G=0K<DC?CC/:NHU?7=
M.T&&&74KCR4GF6",[&;<[$ #@'')[U9N;&SO'A>ZM()W@??$TL88QMZKGH?<
M4 8/@'0Y- \(6=M.\TES(HDE:?\ UGW0%5O=45$_X#7352O-6L]/O+&TN9&6
M:^D,4"B-F#,%+$$@8' /7%7: "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "LOQ)?76E^&=3U"
MR\DW%I:R3H)E+(2BEL$ @\X]:U*Q/&1 \#Z^2<#^S;C_ -%M0!R!\7>*=.MO
M"^MZBNFRZ1J[6T$\$$;B6!IE&V3<6P1D\C''3GK6JGB/6=:TS7-3T1[1(]-N
M9K>W@FB+_:3$/FW,&&T,<@8''!.<X%?P]H-WKGA'PBNI7%N;"RAM;Q5A0[IF
M2,&,-DX 4D$XSN('0<5<MO".HZ1+K<&CZA;QZ?JTSW!2:(L]K*XPY3! 8'J
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
M!+?4DDGZUH:CI]KJNG7.GWL0EM;F-HI4/\2D8-<YH>A>(_#UC%I-MJME>:?
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
MB&WPQ1]HR <A58X(&3QT% '7ZKJMMHU@U[=^;Y*NB'RHFD;+,%'"@GJ15VN
MUOQ1JMAX!.NZ=J>G7X^V1I'<)%N62%Y508PV X#<YSR#P*UWUF[U7QAJ'A_3
M[E;1=.M8I9Y_+#NTDF=B@'C: N3W.0!C'(!U%%>83^/->/APRQI91ZG8Z\FC
MWH:-BDN9%7>AS\H(8'D-CFNATC5M9A\?7OAW5;FVNXSIZ:A!+# 8C'F1D*$;
MFR. 0<YH ZN::*WADFFD2.*-2SNYP% Y))["DMYTN8$F0.$<97>I4X^AY%<=
MXYO'?6_">A XAU+4M\X[.D*^9L/L6"Y^E:.O:AJ-OJ]M;1W<5E8RV\C"9$$T
M\DX(VHD6"2N,L2 >G:@#HU54&%4*,YP!BJG]H6,,5QB55CM2%D(4[5/]T<8)
MY' YY'K65X%UZY\3>"M,UB\CC2YN(V\Q8P0NY6*D@'IG;FJT_@2TFBUN'^U=
M72+595GV)=8%I(K^9OAX^0E_F/7D4 ;NH:O8:5:)<WUPL$;L$0,#N=CT55QN
M+'T S51?%&E&YM[:26>WGN7V0)=6LL)E;T7>HR?ITKBM,5I/C:NEWD\US'HN
MA)]B-R^YW9BJO,3W<CY2:Z/Q?KD>DWFAVMQI8O!?W\<-NXFV&*?.5)XX& >1
MGN,>H!U5%<A;:SJWB2ZU]-(NH;,:5<FSB#Q>8)IU0,V_/1,L% &#P3GM6+)X
M\U*Z\'>'_%D'E6NGS726^K1/'O,"F0QLZMG@!QWSP?:@#TFBN3UOQ)<Z/#KN
MJ K+8Z?''%'"5P7N6QQN_NC?'^);TJ.VO?%B^([>V,#3Z;<0/YMS/;+']EF
MRI"J^61NF.HX^:@#L**\NTWQ+XSOOAW+XN:^TI$BL+N8VQLV;<\;-M.=XQPI
M&.W!YSQI6GB'Q#!K'A%KZYLYK/7HF5X(X"K0N(?,#!]WS9P01@#GB@#OZ*\S
MD\2>+)M"\87T5]IT3Z!>W"H/L;$3)%&K[2"_RYR><DY/;'.@OB/78=:\*SW,
MUH^GZ]E#:1PD-;DQ&12)"?FZ8/ ^E '>54@TO3[6X>XM[&VAG?[TD<*JS?4@
M9-<1/XG\2ZIIESJOARS>X,-Y)#!9M"OEW$<<IC;=(6!5CM8@C@<#!ZU8&K>)
M]3\9:UH=I>6-E';6=O<0R/:EWC,F_P"4C?ACE>N<<=.<@ [HD#J<45Y/=>(=
M8\1>&O &J+>+9OJ&IQQW,4<>4=U$GS<G.-T>0OO["O5HPRQJKMO< !FQC)]<
M=J *]WJ-G8S6D-U<)%)=R^3 K'[[[2V!^"FK5>3?$-X==;4[FVNS'J'A\H^E
M@!CNN4(DD/ P<@+&/0AJZ^?QDC_#23Q?I]O]H'V W20@_P 0'*G'H<@_0T =
M517##7-=B\4^&].BOK2[M=6M'NII&M=QC$80G859<*V_ +;L'UJH?%/B;5=(
MBUS0+&2Z1KDA+$Q($E@$A0GS"P(? +9Z#I@]2 >B45P+ZQXIOO$7BS2[2_T^
MV32HX)+>4VA<G?&S[2"_J "WMP.>)=,\97FM6/A*"(16U]KEH]S-(%W")8U!
M?8#U)9@!G.!G.<4 =S5"6TTNP>?59+2UADC1I);D0@.% RQ+ 9Z5RFMWOC;2
M/"NJWP:REN-/N&DA*Q;C<V@P22N0%D W=.#CIS6S;ZO)JVL:>FF7:2:>U@+N
MX?RP2P? AP>V[$A/^[[T -A\>^&)[?2+B/5HC%J\IAL6V,/-<'!7I\IR0/FQ
MR:V[.]M[Z-W@?=Y;F.12"&1AU5@>0>0?H0>AJBOAZR6S@M#O:&*X^U,#M_>R
M[_,W-Q_?PV!@< =.*P+J[?3/C!86\9Q!K&F2"5!T,D+95_KM8K],>E ':T44
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%-=Q'&SD$A020HR?P'>@#C9/AS8/IGB>R,[E
M-;D:1,CBU)^;Y1[2[G[=AVK1U;PL;_P+-X9M[P0"6V^S-<R1F1B",,Q&X98\
MG.>IK8TO48M6TRWOX(YXXITWJD\9C<#W4\BK= '*7WA.]N;[PY?PZK'!>:/'
M)"S_ &7<LJ2*JMA2WRGY00<D9Z@]*CC\'7J-XJ;^U8"=?'/^B']Q^[\O_GI\
MWRCVYKKB=JDG.!SP,UFZ)K]AXAM[F?3VE:.WN7M9/-B:,B1,;AAL'C/<4 +X
M?TR31/#VGZ5+<+<&SMTMQ*L>S<$4*#C)P<#UKC6^'&I_V.=*3Q&@MHM3&I6I
M:RW.&\WS")&W_/R3R-I]?2O1*R_$'B"P\,Z3)J>I-*MM&0&,43.020!G XY(
M&3@4 9EEX8O[+Q)K6L#5()&U*"&'8]J?D\H,%8D/SG<21@>V*Q_)T3P9X%MO
M!VO:C%>--:RP00I"4DNE_NJN6^;+ #GKBNR?5(4UF+2S%<&:6!IQ((F,852
M07Z \]*M-%&\B2/&C.F=C%02N>N#VH R/"6B-X>\+:?ILDC2SQ1 SR,VXO*>
M7.>_)/X8JOXJ\.77B(Z3Y%_%:#3[^*^^>W,GF-'G"_?7 .:Z*B@#CM5\(:JW
MB4^(- UY=,O+B%(+Z.2U\Z&X"_=;:6!##) YZ?CDU#P7>-J6DZSI>L&'6;"-
MX9)[F'S4NHW.YE=05Q\V2-I&.GICL:* .#;X<R7MIXCM]3U?S1K,\=R'M[?R
MFMY4"[64[CT*CCT[GK6KI&A>(H('_MCQ''J,ZQ&*W*V8B12>"[J&R[8]P!D^
MM;5KJ<-WJ5]8I%<+)9%!(TD3*C;EW#8QX;WQTJOJOB+3]&ETZ.[>7.H7*6MN
M8XF96D;H"P&!^)[4 <XO@"?_ (5G%X0;6!O@">3=I;8'R.'7<A8[AD8(R,U<
MLO"NJP>+6\17&MPRSRV"VDL*V>U"59F4K\Y(7+<@DD^HZ#K** .!3PYX@\+>
M ;72-%UR(WUO<L\4@L-WGAF=S$5+':"S<OG@#\:[:_MY;O3KFVAG-O++"T:3
M*,F-B" P^AYJQ2%@" 2 2<#/>@#F;;PK*_B:TU_4I[62^MK5[;S+6W,1GW;<
ML^6.<;>%[9/-8L'PZU&U\,:5I$/B%-^D7R75C(UEE,*7(61=_P Y^<\@CH,
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
MOB.VLS'=&TO["Y2[L[D)O\N1?[RY&Y2"01D5$OARZFU2?6;V[MWU,V1LH#'
M1%"A.YCM+98DX[C@ >I._<7$-I;R7%Q*D,,2EWDD8*JJ.I)/05BGQCHRPQW$
MLES#9R$!+N:TE2$YZ'>5  /8G .1@\T /\(Z#+X8\+V6BRW:7?V1/+298O+W
M+GC(W'G\:SO$/A*^OO$=IXBT+5QIFJPP&UE,D'G13PD[MK+D<@\@@UU@.1D=
M** .3U'P;->II-ZNJN-=TR=KB.^DB!60N-LB,@(PA7"X!!  Y/.7S^$Y[PZS
M>7-[#_:FI67V 3+ ?+@APW"KNR3EV))/)QTQ74T4 <9+X*O7TGPM8C5K<?V!
M+#*KFT)\XQH4 (\SY<@G/7FIIO"-[)K?B'44U2W7^V+-+3RS:$^2%# -G?\
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
MC>WN&<EF>(2, . H.&)[=N>S\'W.HW&FS"^O+6^BCDVVUY;6Y@2>/:#D+DC
M.1D'!QQ0!F76LZC8>-]0TF^U,06,^FM>:?,8D_=LAQ*&./FV@J?]TGOS53PM
MXFU7Q!X<TI)+IH=:>^D@OU\E1Y(BR9!M(X&-@'<&1<^E=%XA\+6GB*ZTFXN'
M='TZY,PV?\M%*E6C/^RV1GU QWHTWPM::9XIU;7878RZB$W1G[L;  ,5]VVI
MG_=% '.RZWK=S<>/]/>_6$Z5#&UG-;PA6C#0&0]<Y/09]N,5@74=XOPZ^'+&
MZ\^:34],>,S*,)F,X!Q@D?J?6NWMO"+QZOXEO+C4%EBUU$26)(-AB"Q^6,-N
M.?EZ\=?RK.'@.^.@Z!I;Z\L@T6Z@N(7:R'S"$81" XXQU.23[4 53XNU+PWJ
M'BR#6;E-1BTJPBOX'2$0L=X<&,@9&-RC!Z\\YJ74]?UKP]IV@:W=7B7EK?3P
M07UL(E58O.Z/$1\WRL0,,6R/2M.;P6M[K^LW]_=QSVNJV2V,UJ("N$7=@A]Q
MY^8]O3I3+3P;<_8-*TS5-56^T_2Y8Y8$^S;))#'_ *L2-N(;;P>%7)49[@@%
M"+Q!J[6_CJ,W@+Z*Q^R2^4N<" 2888P>3CH.*S)[[5M7USX;7!U22 ZC92W$
ML<<:[!+]F#%L$'^^PYZ \5NWO@B[FU+Q!+9ZV;6SUR+%S;_9@[+)Y?E[E<G@
M$8R,9]"*/^$&GCMO"X@UN2.ZT"-H8YS;JWF1M&(R-N< X P>>>QH Z;5O^0-
M??\ 7O)_Z":\XTW6-2T7X6>!)M/FBC6XFL;6</%N+1R, =IS@?D?PKTJ_MI+
MO3;BUBE6-Y8VC$C)N"Y&,XR,_G7)/X#N#X2T+05U>,+I%Q#.DQM"3)Y1R@(W
M\>_K[4 $NH^(;WQ_JGA^WU.WM;6+3XKF&5;4.\99V7N<$_+U/'MW'/)XN\4_
M\*\LO%LE_: V]TMO<6B6W%R!<>0S%B<J3U&.GOV[6'PY=P^,;SQ"-1A+7-FE
MIY!MCA0I+*V=_/+'/MZ=:QC\/+@^ 6\*?VS'Y1N?/^T?8SN_UWG8QOQ][OZ?
MG0!?FU;5?^%F#01<Q)82Z/)=(%A&])!(J DDG/4\8 ^M<WX0O-;@^&4NHIJT
M3W#WLX>>_*JD2_:G$DF<#)QD@'C.!CM77_\ ".7+>-H/$CZA$3'8FR-NML0&
M4L'+;M_!R!V/'KUK#/PXG7P\^CPZ_+''#J O[%OLRGR'$IEPXS^\&XGN/I0!
M67Q%JMV?&FF1ZC<A=.L8[FSO)+813KO1R05*@=4X.T=>_!JM%JNLZ#\*_"=[
M:Z@DC3_V?%)YT 8B.01J54C'J>2":Z&W\%3C6M7U&\UN6X&K626MS$MNJ#*J
MR@J><##G Z^I-5I/ =[-X.TWP_)KP=;"6!XYC9C[L)!1=H<?W1DY.?:@"W%J
MU]X@\3:[I-A?&PBT@11^8D2NTDTBE\G<"-@&!@8).>17-#QUK][H6@7$!L[:
M]EUT:/?H82R%P7!93GA3M!QUYQD8S75MX7N;7Q-=:]I.HQ6MQ?PI'?136QEB
MF9!A)  ZE6 XZD$>_-4[CP$O]G:-9V6H"$:=J0U-Y)8/,:XGRQ);#+@$NW3V
MQTH D\-ZIJ__  F&NZ!JEY'>K:16]S!.L B($F[*$ X."O!Z\\UUU<K+X:OK
M?7-=UR'6%AFU"R6W799ES 4#;' W'<06)QCGBM7PVFIQ^'[1-8G-Q?*K"28Q
MB-G&X[2RCA6*[<@=#F@#B]&%_)J_Q!-SJ<UQ'!*8Q&Z+C;]G! &!P!GH/QR<
MFL_PWJFMZ'X6^'TXO8'T[4#;V#V0@&5#QL5??G.X%>G3G';)Z\>$+F#5?$%W
M:ZOY<.L ,\#VP<))Y8CW;MP)&!G''/?'%5/^$$N1H/AK2EU>(+H5S%<1R&T.
M93&"JAAYG'!.<?I0!4N]?\3:Q;ZO<>'()S-87DEK;0[8##,8B XD+N'&3NQM
MVX&.M=U:232V<$EQ#Y$[QJTD6X-Y;$<KD<'!XR*Y ^!]1L]?OK[0_$T^FV.I
M2^?>68MDES(>&>-F^X3WX//X8[!(?(M5@MR$$:!(RV6 P,#/.3^= 'F/@&YU
MR#3?%ITK3K.Z*Z_?E/.NVB8OD<;1&P].X_"NIO=8N8-0T#0;7;;7FJ1RSSS>
M6,Q*BAG(4\;V9QUX')(/2H?#_A+6?#<6H1V>N64BWU[+?2&;3F)5Y""0,3#C
MCO3-2\#WE]'IE[%K\D.OZ?/+,FH_9PRN).'1H\XV[0J@9X"B@#-G\0:[92>.
M[5M2$IT*QBN;.9H$#$M%)(0X P>5 X X'8U>E\1ZHEUX%83IY>LKMNX_+&"?
M(,F5/4<C\JRM!L8]1\:^/]&O]1^U275G9P3RJ%1CNAD5MJCIC/3G'&2:T[?P
M'J8/AUKSQ(9FT-_W'EV2H'3R_+ /S'YL'D]/0#K0!1UOQ5K6D2/<M>Q/*FLQ
MVILH(A)"ML\@0;Y-N5E((;&[N/EQ6BG_ "6^;_L7$_\ 2EJJ3?#:[DTF[TN/
MQ'(EF^H_VA;J;16:-_-$A#MG+C.<?=//.>E;\/AJYB\:_P#"1/J2R9T];!H6
MM\%E#E]VX-C=DG^'&.U &3\8?^23Z_\ ]<D_]&)6K!/KLD^DP7.E62V#MF:2
M*Y:9EVQED^4QKCY@O.>"!ZU)XR\.2>+?#-UHBWJVD5T LDGD^8V P;CYACI[
MTR71]?N;2.SFURT6W^593;Z>R2.@QN4,96"Y&1D#C/% &(NI>)M2\3>+=)M]
M6MK1--2W>VD6S#,-\;-@AB0>0,GVX K-M_%OB.3P[X2\32WEJ(-3N[:UN+%+
M?Y2)6V%PY.0V>0.G;G&3U5KX8N[37_$&K1ZE"7U=(E\MK4XA\M2JG._G@G/3
MGTK,7X?W">$=#T!-8C":1=17,<QM"3)Y;;E!&_UZ^OM0!7^W>+M9\4^*=&T_
M6+&R73?LYMY39;S^\C+;2"WKU;GIP!6-=>(;CQ1X2\":G>PK#>-XD@BN$3[H
MD0RHQ'L2N?QK1T0WEQ\4?'":=JEG%(5LE820>;DB$C<H#C&#G@YK8N? <?\
M8^@:9I]]]FAT>]2^#2P^:T\BEB2Q#+C<78G'KQB@!UOJVH^)-9\06>FW_P!@
MCTF5;:-A$KF28H&8N&!^09 P,'@G/3'/'QQK%SX0T;Q272TM8KS[+K<"1AA&
MHD,;2(3D@!L$CG@^W/4#PM=6/B/4-8T;4HK5M25/MD$UL94:11@2)AU*MC@]
M0:HZ@WACPAX9A\*7CO,+V":.&V*%I;QFY?&!C<S/[<GVH FUK5]52'Q-?:9>
M1K;Z79'REDA#JUPL9D;I@D!3&.O4MZ8K%;7_ !3!'X-O3J5I*FN"."6W:UPL
M;O"7$@(.200<C@'IQUKH-/\ "3VGPY7PPMULFELF@GN74R$NZGS&ZC)RQQSZ
M5#+X,NY++PQ;C5HA_8+QNC?9"?.*(8QG]YQ\I/X_E0!E?\)?JGAYO&4&JW$>
MI'188+BVE\H0E_.4X1@.,!@.?0UIV\_C&/Q%9Q^1--IEQ#(+J6[2W7[+*!E&
M18Y-S(3P5.2./FJ2?P/'?:KXCN-0O%GM-=MX[>:W6'88U0$*5?<>?F)Z=<=*
M7P_X7UO2A%'J/BF75(;52MI'):K'M."H,C YD(!QU'KUP0 <G;^+?%7_  @F
MG>*I]1M& U 6\]JEJ )D-R83\V<J0,8QZ<YS6[8"_D^,6L1OJ<QMX=.MW2$H
MNT*SOE1QQR,YZGUZ4#X>7 \"Q^%_[:C\N.Z%R+C['\Q/G>=C&_'WOT_.MD>&
M9T\9'Q#%J9C\ZTCMKJW$ (DV,6!5B<K]X@CGCN.M '.?%Z61M.\-V#DBPOM=
MM8+ST:/).T^Q(S^%=MK5K;WF@ZA:W*J;>6VD20'IM*D&H_$&@6'B71IM+U%&
M:"7!#(VUXV!RK*>S \BLVZT#6M2TIM*O]>C:SD3RIY8+3R[B5.A&_>54D<$A
M>YQB@#SWP;XC\3GPG\/K."[MT_M+[5;.UQ 7;;$)-C9W<@*J\<9P.<&M2[\5
M^*=#M_%^EWE[:7-_I%DNH6=\;7:)8F!RK(&P&!& >?H:M^+K>WTWQ7\/].TV
M:VL!;SSI K+N5%$! !7()!Z=>_K4OC71DTWP3XRU>]NHYM0O[ Q-($\M%14(
M2-%))ZDGJ22?H  -FUWQ1HFJ^&;W4;VTO-+UJ>.SEMH[;8UM)(F497SENASD
M#V SQ(GB36M9\&ZGXKTJ[2);5[AK6R>)6CEBA8@B0XW;FVL?E( R.#@DZ6D:
M%)JUCX=O-1U&&\MM/C2XMHX8=@:7R]JN[;CN*ACC  R<^U-A\#S65IJVE:?J
MH@T;4Y)))+=K?=)!YG^L$3[@%!YQE3@F@#*?Q-K^O:]HEMHU];6%IJ^BO?H9
M;;S'@?Y,9R<-][&.!]:=X>AUF3XD>);>\UV:1[>RL5)2%%4[EE)VJ0=HW9/<
M\\DUNKX1,'BC2]6L[N*"UTZR-C%9_9R?W1V_Q;NORC''YU/#X:EMO&EYK]OJ
M3)%>PQ1W-KY(.\Q[@I#YX&&.1C\: .2@\8ZW-\,_#WB$W$8O;J_BM[@"(;'1
MYS&>.QP.QK4.H>)=2\;Z_H5KJMK9P6MK;S02BT#LA??Q@M@_=&2?3@#.157X
M:7B^'X=!7Q&RZ=:7JW5F@LUWQ@2^9M=MWSX)P#Q[@\8W[3PU>6?BG4]<34XG
M>^MXH/+>U/R>7G:<AQG[QSP/PH YB/QKK=WX$\':Y');Q3:EJ%M:WB^3G<K2
M%&V\_+G:>QZ]JNVB:E/\7-<A_M>=(8]-MVC01H0@9I.!D>HSGJ?I@4^'X>7$
M'A+0] 368]FDWL=W',;/F0HY=5(W^I.3Z8Z5KS>'VM/%L_B==4,$3V:0WD'D
MA@XC+,&#9RO4Y&#QW% &%I?B769-!U?3KV[3_A)[34!8KMB4*2[#R9 G]PH=
MQSSA6Z8KK->N;K3?">IW5NS27=M8RR1L0,LZH2#@<=17-:+%HOBKQP/%VDR-
M/;068@\\!ECFF);! (&61"RY_P"FF.QKN2 RE6 ((P0>] '&_"B&*+X9:(\1
MW-/$9Y7)R7D9B6)/<YS^56O$VIKX9CMA811I>ZYJD-J)'&561U"F0COA(^G<
M@5%I/A'4/#)EM?#VL0PZ2\C2)8WEH9Q;ECDB-ED0A<\X.:M:WX0BUW1A:W5]
M.+U+E+R&^4#=#.GW&5>@4=-OH3SDDT 4GUC5=(\<VGAZXNQ=V^JVDLMG<S0K
MOAECP65@FT,N"".A[9KEXO%OBS_A7>E^+7U"T9_M@AGM/LH"S*UR8OO9RI'&
M,>G.:[J#P_=/K$6L:E>V]SJ%M;/;VICMC'%%O(+MM+L23M4?>' QW)K#7X>7
M"^ H/"HUF/RH;@3BX-G\QQ-YP&-^/O=_3\Z +%IJ6O6GQ ;0+S4;>[ANM,>]
MA?[+L\B19 FT -EE^;/)SQUKF5\6^+!\.;;Q:VHVC20WIBFM1:@+.GVDPX+9
MRN 1C'ISG-=M-X;O)?&-OXB&I0+)#8M9B'[*2I#,&+9W_P!Y1QZ<>]8__"O+
MC_A 3X4_MF/RC<>?]H^Q_-_KO.QC?C[W?T_.@"S;:GKEC\0H]$OM0@O+:]TZ
M2ZCVVPC\B1'5<#!RRD-W.>.M9EIXMU[_ (0[6=1E1KNYL=9ELY&L[?+);I*%
M9TCYR0NXX.??(%='-X<NY_&%EXA.HPAK:T>U\@6QPP<@L<[^.5&/;UZU3TSP
MAJ.DZ?=P6NN(L]QJ;ZD)?LG 9VR\97?RISCJ#C\Z ,__ (2RXD\(W^M:-J3:
MY:I<Q!'MX%-Q!"2@ES& ,NH+, 0.V0<<PWGBVZ?X?Z_K^@Z_;:BEM'YEM+)
M"\8"C<DBC;ALY(R.A'!K9A\'SVMSJ6H6>HQ6NIZA<PSRR0VN(OW8QM\O?D[@
M6W'=DY[8JM>> 1>:?XDC^VPP76OJB7,L-KA%55*_*F_[QR26)Y]* )5UZ[U/
MQ/:>';>Y-JPTI=0NKA$5G)9@JJH8%1SN))![ 8KF]5\;^(+'POXG19;8:OH%
M[# TY@RMQ%*R;&QG"MM;GJ..G/'4S>$9UU;3-:LM1C@U:SM/L4LC6Y:*YASG
M:R;P1@\@AN#ZU6U3P"-2\.ZKIW]HB.ZU:Z2YO;O[/NW,I4JJKN^50$4 $GC/
M<YH =:ZIK=C\18=%U"^@N[2^T^2ZC5+<1F!T=00#DEE(;OSD5V-<[-X<NIO&
M%CXA?48@UK:/:F!;8X<.06.=_!RHQP?QI_A&'68-*ECUK4'U"47#>3<R6P@=
MXL#&Y!T^;=CVQ0!AVHOY/C)J43:G,;>+2X)4@*+M :1P5''^R#GK[X KD])U
M36_#_P .I]=L;V!+6TUB826C0!O/1[LHV7)ROWN,#MSG/'HLWAF?_A,V\16F
MIF RV:VL]N8 X<(Q92&SQRQ!'<=QUK%;X>7#^![OPP=:C\NYNC<F<69W*3+Y
MI&/,Q]X?E^= %C4M;UC4=;UK2]&%S&^F)&HD@2!MTSIO&_S6'R8*C"@'KS71
M>'[C5+K0;.;6[-+/4VC_ -)@1PRJXX.""1@]>IZU@:EX,U)_$;:]HGB)M*O;
MF%(K]1:+-%<;.%;8S?*P' .3Q^.>IL;06-E%;"628H/FEE.6=B<ECCC)))XP
M.>,4 >9ZQX?U%/$FN^+_  V"=<T^_5)+;/RWUO\ 9H"T1]^I4^OX8WO#?B.T
M\4:Q/J^DL'$FDQ?NY#M,<@DERC^A!X/YUT&D:5=Z=>ZG/<7L5P+ZX^T;4MS'
ML/EI'C.XY&(Q^)-9L7@73+;5O$%]:E[?^W+80W4<7&&PP,BGL2&Y]QGO0!A:
M=XHU=?$?ABRN+^.\_M5+A+P1PCR(I4CW_N) !N (*GEOJ#47A6;6(=*\;WHU
M9I[BVU2\2,W$*LN8T3:2%P>B@8! 'I6A9> -0MW\-O-XD>1M!W1P;+)$#1&/
MR\$9/S;?XN1Q]WO5^T\'W-B/$45OJ^+;6)I;@1/;!O)DE #G.X%AQP.,9YS0
M!F:?XNO[^P\$V!F6/4->LS<W%R$'R*D0=MJ]-Q+ #(( SP:BOO%&MZ5<^*M&
M>XAEN]-TPZI8WDD )DBPV5D52!N#+C(P"#TXYT%\!-'H_AV&'4Q'J?A\!;.]
M%OP4VA&1TW<AE !PPZ<8JU<^$)+V#6Y;B^C.I:O:?8I+A;<A(8=K *B;L_QL
M<ECDGT % &)9Z_XBM[[P9<WM_;W%KKL8CFMEMPGEL8/,#ALY)R.>W/ %,UOQ
M5K6D2-<M>Q/*FLQVILH(A)"ML\@1=\FW*RD$-C=W'RXK9?P9=/'X73^U8A_8
M!4H?LA_?8C,?/S\?*?S_ "K,F^&UW)I-WI<?B.1+-]1_M"W4VBLT;^:)"';.
M7&<X^Z>><]* +:?\EOF_[%Q/_2AJ;\8?^23Z_P#]<D_]&)6M!X:N8O&O_"1/
MJ2R9T];!H6M\%E#;]VX-C=DG^'&.U/\ &7AR3Q;X9NM$%ZMG%=!5DD\GS&P&
M#<?,,=/>@#9M/^/.#_KFO\J\^\8^*=:T&TUZ^COHEET]XGM;*"(2JT)VY,YV
MY0L2V/F7H,9KHI-#\0W%I'9W'B&V^S?*LWDZ<4DDC&-R[C(0NX9&0.,\5CZE
M\.+B_M/$EA'X@DAT_6YC<M%]E5GCE(7/SD\I\H^7 /'7U *^IP:E>?&%XM+O
MHK&9_#BYN'@\XJ/M#=%) SG'7\J@L/'>L?88](O_ +/_ &[_ &Z=&:Y1/W9
M4.9@N>NSHOJ1VXKI)/"U^GB&VUZTUA!?I8"QG^TVN^.5-Y?(564J<GU/'YU!
M=_#^SN=%6U2\FBU%-0_M1=0"@N+K.=Y7H5Q\NW^Z />@",ZSJ^F>-O\ A&Y[
MM;F.^L7NK&[FA&^.1#AD<)M##!!!&#VYZU'\/=0\2>(-$TS7]4U.V:UNK5MU
MG':[2)-_#[\^@(QC'3KUK7A\/7+:LVLWM[;S:FMJ;6W=+8I%"I.YCL+DDD@9
M^;H !CG,GA#P^_A7PS9Z(UX+M+12D<OE>62N2>1N//- &Y1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
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
MY(YR,'IGFLU+?5)O'_CL:;JAL)8[:Q?SA DC%A$^.&&W'KQ],4 >F*JHH50
M!T %+7GFF^,]2UG3?"L$<<RWFJZ>]Y<R6@BWC9L4A!*=HRSYYS@#&.<CHO"C
M^(C;WL/B&(YBN6%I.QC$DT)^Z76,E0PY!Q@'TH U7U2TC:[#RA5LUW7#D?+'
M\N[!/KM(./0CU%5[[7[/3Q:)*MPUS>9\BUCA+2O@9)V]@ 1DG &1GDU1N/!>
MDW6I:O>R&ZW:M;?9[J(7#",C:%W!>SX51N]OK6!KG@O4[)-&N_".J;=6T:&2
M)(M1D,HNX7(+*[=1R.#_ "P, '5:?XDL-2DO8;=;K[19!#<026[I(F[.!@CG
M[I/&15+3_'&CZM8"^T^/4KFU)8"2+3IV!*D@C[O8@BL_P7XK77]5U&TU+2)=
M(\26L4:7EM(=P>,%MK(W\2Y9OS[]:YKX<W'B*'X7,=(L+&4K-=F)Y+I@^?-?
MHGED$^@W<\=* /19_$.E6VB0:Q/=".RN$1X796W2;P"H5,;BQSPH&?:JTGBN
MPMO(^VP7UF+B9(86N+5U#N[!5&0#M))'#8-<IXA/F_&GP=ITRA;&"TN+BWCQ
MA3,%(Z=,JH!'I7H5U:P7L!@N(Q)&65L'U4A@?J" ?PH YZ;Q]H,$6M.\MP3H
MTBQW:"V<L"S;05&/F!((R..#VK7L=;L-1DB2WER9X%N8"PP)HF (=?4<@'N,
MC(Y&7MID+27<OF2B:Z54DE5L,$7.%4]@-S>_S$YS7(_$)UT#2O#VH6*"(Z=J
MEM'&J#'[E\Q-&/8JWZ#TH [NHKJZ@LK62YN95BAB7<[L< "JEM:ZC'K-]<7&
MHK-82K&+:T$ 4P$ [R7ZMN.#STKF?&ET\OBWP7HA.+>]OY+B8=F\B/S%4^V[
M:?JHH Z5]72.\TZV-E?;K[?M<0$K%M7=^\/\&>V>_%(NLQM<ZE!]BOLV&S>Y
MMSME#+NS&?X\#KCG/')K&UW5M2L?'WA73X+E%L-0-TMQ#Y0+,8XBR_,>G/IC
MI1X;U;4KSQEXLTR^N4F@T^6V%L%B";5DBWD>IY/<]J .FMKF"\MHKFVE26"5
M0\<B'(8'H0:EKB? ET\>N^,-%SF"PU/S(!V19E$A4>P8L?\ @579=3O-8\7:
MGH-G?/IZ:=:0RO+$B-)))+NV_?5AM4+SQDENHQR =317$)K.O)JOA[PQJ-U;
MQ:M=6TUS?7=FH*[8R HC#C&6)!.1Q@X'((R]2\5:]IEMXTTLWB/>Z+9K?6=\
M\"DR1,A;:ZC"[@5(R!@CM0!Z717G4^J>)K76?"BC6HI(M=B>.6%[1-L+"'S
MZ$88G@Y!.#GH.E1OX@\0V&F>/;-]46YN] C$]M>2VR!F5H/-VLJX7@C&<?A0
M!Z317F\FK^)[:]\(2_VS%)'KB>5- ]HFR)O)\P.I&&)R#D$X/H*237M>L++Q
M]92ZLUQ<Z#;K=6EVT$:L0T#2!&4+M(!7&< X- 'I-%</-K^J)J7@3;=?N]71
MA>1^6N&(MS)D'&0=WH<5ASZYXLET#QIJ$>NQ0OH-].(%2S0B1(XT?8V<_+R>
MGS9/7M0!Z/=:DEKJ5C8M;74C7A<++%"6CBVKG]XW\.>@SU-7:XJZ\0:H?%7@
MJ**>..QUB&=[B 1@DE8-X^8\XR>V.E1VNH^(O%.C7VJZ#J,-K/%?206EK-&I
MA=(I-C>:=I?+ ,?E(QE?<D [FD+JK*I8 L<*">O?BO/_ !CKVLZ6GB&XM]46
M)K&S6XLK:TA64\*6=KC<AV D8&&7(!QDU%=2WNH_$?PI*-2NK>.YTJ>X,$00
MHC8CS@,IZ[L$G)],<T >C45YU)KOBK7=+O-3\.17'G0WLD-M;L+;[-*D4I0B
M0LWF L%8Y&,9 P>I[RX2YN=-=(I39W4D?RN K^4^/0@@X- %FH;RY%G93W31
MRRK#&TACA3<[8&<*O<G' KRR;QQJ]OX.T35+C4)4N[?4#:ZY"D$9*(DFR5_N
M_*%)3\''?FNLU;4M473?%&IV&H!(;&V<6JO$KIYD<9=V!P"1G"\DX*M[8 .E
MM+R.[LK:ZV20BX176.==CKN&=I4]&]15'3O$-EJ>MZII-N)Q<Z9Y7VCS(B@_
M>!BNW/7A3STZ=:X;4+C4M4NOAG<2:M=0O?+YDXA6,*9/LK,7P5(SR1CH > #
MS3X[;5)OB!X[73=4-A*EK8-YX@21BPBDQPPVXZYX^F* /3**PO!FL3^(/!FD
M:M=!1<75LDDNP8&[') [<UNT %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 5%<I++;2)!*L4K#"NR;@
MOOC(S^=2T4 <=IOP^LK7P W@Z^N3>Z>%98Y#&$D0EB^[.2,ACD' Z=Z-0\#W
M&JZ%86=YK]R=2TV19;+5(X@LT; 8^89P^1P>F>]=C10!RD_A"\O_  QJ6EZE
MKTUY=ZC%Y$]Z]NB[8^1M2-<*O4\\G)YSQA&\&W UG3=5M];FMKJUL?[/F,<"
MD31;@PP&SM;(Z\_2NLHH X:'X<"W\+V.C1:W<[M/U 7]G.T2'RF#LX4K_$/G
M;.3_ (5L?\(S+_PEUIK[:BTCV]D;(Q/"/WBLP9F)!'S$J.@Q[5=U+7[+3+N"
MR?S9[^X!:*TMTWR,HZMCHJC^\Q ]ZC@\1VTFJP:7/;7EI?3HSQQ3Q<,J]2'4
ME#C(X!SSTH Q;?P"MKH]WX?@U)E\/7,C,;,P_O(T9MS1))NX0G/520"<'O6B
MOAEXO&!\00WB(1IXT]+;R/D6,-O!R&!SG\,<>]=#10!R6D^#[W1-.M[6RUO#
M0WDMWN>VRLGF;BR,H897+9&"","M7P]X?@T"&]$3*TM]=O>3E$V)YC  [5R<
M#"CN>YSS6Q10!R]]X4N[KQE#XE@U98+B&U:TCB-J'386W'/S9)SWX^E/L?!\
M4?B:3Q%J=[+J.I&W^S1%T5(H(B<E40>N3DDDUTM% '&6W@!;;1)?#BZDS>'9
M)2XLVA_>(A;>8A+N^X3G^'=@D;J??^!#=ZGKL\&LW%K:ZW;+!=VR1(W*QF,%
M6(RHVGD?J*["B@#D+7P3/;7WANZ.LO,VA6[V\8>W7]ZKJJMG!&.$7&.G?-37
M'A":/Q9<>(-(U>33YKV-([Z'R5E2?8,*PS]UP.,\CV]>IHH PO"/AO\ X130
M(])6_EO$C=W5Y$5<;V+$  >K'KFJ_P#PBLUEX@U#5]&U(63:DJ_;(9(/-1G4
M8$B?,-KXX/4'N*Z-I$1D5G56<X4$XW'!.!Z\ G\*=0!R,G@2&*'P]!I]Z;:#
M1)C/$KQ>897(8,7.1UW,3C')KKJSY]:L+?7+31I9PM]=Q230Q_WE3&?Y_H?2
MM"@#AY?AV7\-ZSH*:U.MAJ4TDH1H%)A$C[V /&3GH3T';O6K/X9GN?$6B:Q+
MJ*>9I<4L2QK;X$HD"AB?FXX48]/>NCHH XG2OA_-HUS);67B*]3P\\K2_P!D
M^4A"Y.2@D(W!"?X1VSSR:ZC6=-&L:+>::T\D NH6B,L?WDR,9'N*O44 <O?^
M%;W6K2'3M9UA;O34DCDDC6T$<L^Q@RB1]Q&,@$[57..U0:EX)NI/$T^NZ'XA
MNM&N+Q$2^2.%)DG"C"MM?A6 XSS].N>OHH X_5? AGU'3]5T;6;G2M5LX#;&
MZV+/Y\1.XK(K<,=V6SZDGTQ/JO@UM0TS3HH]6N(M2L+Q;V._DC61GEP02Z\
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH *H:W-<V^A7\UG-:P7,=N[12W;8B1@IPSGLHZFK]9OB#1+?Q'X?OM'NW
MD2"[B,;M&<,ON/QH Y'1]<U-_&UII']HW5S9WFCO<^=<P(G[Y75=\8VJ=IW=
M",="*P8/$7BA?AY9^*IM>>2:#4O)DMA;1+'/&;LQ$/\ +D'!X*D8QT)YKL;?
MP5/%K>GZS-XAOKB^M+5[4L\<861"00"H48&5!..3ZXJO_P *\3_A"_\ A&/[
M6G^R?:?M'F^4OF9\WS<>F-_MTXH =<ZMJ&B?$:&VU+4W;1-3M7:T5TC589X_
MF="P4'!3YAD]B.:V_#,E[<:+'>7UQ+*]VS3Q+(BJ8HF),:84#D)MSGG.:YSQ
M*=*\97D?A)XI[B\L[N">ZD^SNB0HHW,V\C:=RY3 )/S^@-=V!@8'2@#SCP/,
MUU\4/'LE[S>PS6\,0;JEN%;;M]CU/O6WJ_B"XM?'^A:#_9MM,MXDT\5TTQ#0
M[%^;Y=O)(;'7O5S4O"<%UKT>OV-U+IVKI'Y+SQ ,L\?]R1#PP]#P1ZTU/"S3
M^)[+Q!J>H&XO+&*2*W2&(11*'&&)&6)/']['M0!S4.OZUKG@+4O%VG:DUM+
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
M"2?,PZ$ D G@<UUU[X+M=8AU5M5NGN+G4[,63S1*(Q%",D+&.<?,=QR3DX[
M"@#$TC7-4?QCIFE'4[NYL[_29)FGE@1 9D*#S(OD!VG<?O#!X(S61X8U>^T+
MX>B\%]=75S>ZU)91^=Y;;&>Z9"^2!EL9/S-C..@KK;3P3+#K.DZM<^(+^YNM
M/@>WRR1JLL9V_*0%X^Z,GJ?6HE^'.GMX?U+0KF_O)M.NYWGBCRJFU9G\S*,!
MDD-R"<^GKD LZ,OB6'Q/,MT;B30Y+8,AO6A\Z*<-R%\K@H5YYY!]J9XVU/4M
M*N?#36-V88KO68+2XC\M6\R-]Q(R1D?=[>M7/#_AR[TE_-U+7KW6)T3RH7N5
M11&G&>% RQP,LV3QVYS)XC\.?\)"VF%KU[;^S[V.]C"(&W2)G:#G^'D\#\Z
M,!IM>U/Q_KNAQ:_+9V<-E;SPF&WB+QLY<$ LI!'RC.0?;'6M;X?ZU>>(/ FD
MZIJ#*UW-$PE=5P&969<X'3.W/XU-#X;DM_%.H:]'J#>?>VZ6[1-$"B*F=I'.
M<Y8YR>:E\*^'D\*^'K?1HKJ2YAM]WEO(H#89BV#C@\DT <;XT\1ZUHUCXBU"
MUU4O/I\D3V]M:1*\447R9%P67[S9;@-D J0*U+^[UNZ^)AT*WUF2TL)=&-WB
M."-GC?S@F5+ \X]01R>.A!J'PWAO[?7[,:U?PZ?K4IN);9%0A)CC+!B-V/E'
MRYQQ6K!X6EA\3Q:\=5FFN8[#[!B6)<,F[>6.,?-N'; QQB@#D4UOQ3=?#2?5
MK;4Y'U'2+V>.Y,<$6;R&&4JW!4A6V D8[CWKKM/U1]<UZ"?3K]VTF*Q260*J
M%9GEYCYQD$("2 1]]:H6_P#9GPXTHV]_>7=U%J%[(\>VT:1C+(2[+B,'@G.,
MBM#P1X>B\-^&(;2.W-N\KM<21%LF,N<A,]]J[4^BT 5?'^IZEI&EZ=<Z==FW
M9]3MH)1Y:MOC>0*1R#C@]15*YN-=OOB1J&@PZY+:6(TN.Z0Q6\9>-FD93M+
MC^$=0>^,=:WO$_AT>);&WM'O)+9(;F.Y#1H&):-@RCGMD<U&GAN2/Q9/XA&H
M,;B:S6S,1B&P*I+ CG.=Q/?VH XL>)/$L_PHL/$\>HR?:K&X8ZBL,,?^DP1S
MM'(0"IVMM7=Q@=>*Z35_$<MG;:SKUK<M/INF:=YBPJ%V3S%/,'S8W !3'T./
MG]JT?#GA>#P_X<;0VN&O;0M*3YR $B1F9@<<$98T:1X2TW2?""^&@K7%CY+0
MR>:<M(K9!R?H<>P ]* ,FR;Q6=9TBZB>XGTV9"-06[-NJC*@J\/EDL.>Q)XQ
MWYK.\,^)[O4M:MM*U74KS3=>3S#=Z9<PHJ2C:V&MVV?, <$<G(!SG&:V/#O@
MF;07@BE\1:EJ&GVG_'G9W 3;%V&6 W/@= 3@>G Q-:>$"DVC/J&HO?\ ]C9-
MHSQ*LA)0IEV'WL ]@,G!.<4 <?X=FU33_AIXJU2WUFZ:[MKC49(VF2.3#1NY
M#<KDD[><G'H!6[<>(=12+P1#+<-!;:M'F]O@J@AQ"&1,D84NQ/;M@8S5R+P*
MEOH^N:5%JUV+/57G;RV1"(!,29-IQDGDX)SBL#Q9#'I9\.:1=:S?Z9;65L^S
M4UM5EA=@HC6-U*LN[;N.3COCKP 36&K^(I=$\57']N6RQV-X]M87MY&BQ>6"
MN7+*OS,,LO3!8#CK4UEJ^I7/BC7-#_M#4!9_V2EY;37$21SQL6=25^48!VY^
M9<@YZ#%16FAWGBK1;[2;OQ'<ZAI;K%);7ZV*6SQ3(^X;, *Z_*">,=L]<;UG
MX.,'B4ZY<ZS>W5S)9"SG1UC5)0&)!PJC;C<>!CWSSD XFSU#6-$^ FGZQ8ZO
M<"Z$=NV98XWP'E5& ^7/\1.3DY[UV4FK76K^.K[P];WDME!I]E'/(\(7S)))
M"<<L" J@>G)/H,&J?AVA\#'PH=;O&L@R!':./?&B.'51@ =0,DY)K5O/"YE\
M00:_9WS6FJI;_99W$0:.XCSG#IGJ#R""".G(H XB\\7^(U\,7R"^2/4])UZ/
M3);@0*5N8VD0!BO125?D#'MBNETN]U:Q^)5SH-YJDFH6DVEB_3S8D0PN)=A5
M=H'RD$=<GCK4U]X#MKO0SIB7T\1EOQJ-Q<;%+S3AP^3Q@#( P!T %7U\.,/&
M*^)'OF,XLOL)A$8"%-V_/KG=[]* *WBG7+BQU;P_HMI+Y$VKW3QFXV@F.-$+
MMM!!&XX &0>IXK(N-9UC2_%6K>'&U!YT?2&U.QNY(D,D)5MK(V  PS@@D>QS
M72>(_#=MXB@M-\TMM=V4ZW-I=0XWQ2#O@\$$<$'@BH?^$8,LU]>W5Z9=3N[0
M6?VD1!5BBR3M1,G&223DG)QV % &=X ;7-2T/3-=U76VNDO=/C9K3[.B*LAP
M=X8#.2.HZ9/&.!4&L7>O7'Q(AT&RUDV5E<:3)<G;;H[QNLJ+E2P///?(Y/'3
M'2>'-&'A[P_9Z0ER]Q%:1B*.1U ;8.@..,^]<AJSM+\:M.6UU".VF31I4RRA
MU9C*I",,CDC) !!X]* ,2[\5>*K'PCK]O+JB-JNB:M#:"\%N@^TQ2/&%++C
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
MR22"-9()/-,9"%5  Q@\@XQ3OA''+_PK;1[B6[GG:>$L1*00IWMG&!GGW)H
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
M<6]C'&J[$\G@>8"#NW$$G/0$8QU(!Z!17GF@>+KKQC?Z-9&1[!;C11J=P("
M[N9/+VJ3DA00QXY.5YZY=J=QXCT"/PM!=ZW]IN)]<6SG>.-0)H&#LH<8X?"K
MDC']: /0:*X*;5=6'B3QM8QZG,D5EIT%S:?)&3 [+(3C*\@E1P<UC+J?B*'P
M_P"!-:'B"=Y]7EM;2YADAC,)$L1)?& VX$9SNZ]@.* /5J*\VE\1:GX4U+QC
M;W%_/JL&G:9'J%M]J"!U=@X*DHJC:2H/3BM.TA\5G5]*NX;N1M.FC9;_ .TS
M1,&W+\DD05?E(/;H1^= ';4PRQB98BZB1E+!,\D# )QZ#(_,5Y VM^)8OAW=
M^)W\17+W6G:F\2P^3$(YD%R(R)!MR?E/\)7''&>:Z1+:9_C=<C^T;L1KHL4P
MBW*5YG8%<%>%.T=.?>@#OJ*\Y\-^);FX\16>DZW>7VFZZLDIGLKE!Y%ZFUL&
M!@,$#Y2,$' .<D9KH/&VO7&AZ=IR6KB.XU+4K?3TF*AO)\QN7P>"0H.,\9QU
MH Z:BN)N;[4M#\?:1HO]H7%SI^MV]P$,NUI+::)0Q96QR"#T.1GIZ57^'3:[
MK6CV&NZEX@N)QONH7M?)C5),3.JL2!D,-O; Q@8ZY .^HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "JNHZ?:ZMIMSI][$);6YC:*5#_ !*1@U:IKL4C9@I<@$A5
MZGV% ',^'O!:Z%Y23:UJ6IV]LI2T@O'4I N-O\*@L=I*Y;. 2!BHK;P#96NF
M-HJWUTV@F;S1IS!2JC?O\O=C=Y>[G;G/;..*Z+2[R74-,M[N>RFLI94W-;3X
MWQGT."15N@#"C\,K%XIO-?CU"Y%S<VRVS1[4**BDE<?+G())Y-8R_#6PC\.Z
M?I46I7Z2Z9<M<V-\"@F@=F+'HNUE)8Y!'(K3A\6K=W5M]CTN]NM.GNI+07T
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
M_8/LIBFM'8>1NS\I1>N[N3Z#'?B7Q/X=B\4Z0=-N+NXMH3*DK-!MW$HP9?O
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
MW"S+YC(RA&1CMQ@JH'R@$8X(/-7(?"=E%K6L:E)/<W!U>)(;JWFV&)D52J@
M*#T8CKSGF@#E=6U+5=!\,^'_ !/#J=Q=RSRVJW\,C;H[A)L [%Z(06!7;CWS
M44K:UJ&K^/+0^(]1ABTL1/:>3Y:LA-OYF"=OW03T&">Y-=/8>";.RMK&R>^O
M;K3M/E66TM+AD*1%?N<A0S!?X02<8'7 Q(G@^WCN]>NEU&_\S6U5;GF+"[4V
M#9\G'R\<Y_.@#!M-9O=8TKPC/<ZA+OOM.\^>QLLI/<R%$^8,"-B*2Q))49*C
M)Z5SVH:I?:O\#FN-1F>:Y34XX&D?&Y@EZJKNQP3@ 9[UV</P^L;5M'DM=4U2
M";2K8V<4L<D8:2 X_=O\F".!R #[YJ/_ (5OI@\-SZ"NHZHME-=_:L><C,K>
M9Y@4%E/&[GU/<F@#LJX'X8?ZWQK_ -C/>?R2N[",(=GFN6VX\S W9]>F,_AB
MN6TSP,-'DOWT_P 1:S!]ONGN[@#[.P:5_O,-T)QT' ]* )_$]VZ76E6\>I&&
M.2Y9)K6WR;BZQ&2(T(Y7!*LQR,#J0*\^UC4]0U'X5^)X;V:5GL?$"6D!N"&=
M(UN(2JN0?F(W8SGG'6N[G\"6DXTV4:KJJ7^GSRSQWZRH9G,G#A\H5((P,;1@
M* *8/AUI']EZQISW6HR6VJ7(NY0]QDQRY5MR''7**?FW=/2@#)O;K5_!_CC2
MTDUF]U73=5ANC-!<A"T,D,?F!H]JC (&-O\ /M1N-;U@_"J+QW!J4O\ :2H+
MUX-V;=HR_,.SH %XW#YLC.:[JS\/QPZA'J-[>7&HWL41ABEN0@\M&QNVJBJ
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
MM&M@RQL^Z5MV)&8@':0QP.F#FK5SJNI2>(_A[)]OF6+4HI6NK="!'(1;%P2
M,]3TSCIQ0!TFD^(TU7Q!K>D?8YK>72FA5VD93YGF*6!&">, >_/05LR,4C9E
MC:1@"0BXRWL,D#\S7GEM.UKXN^)<Z7T5@\<%HRW<R[DA/V8X<CN ><4:)J%]
M;^/='L5GU%K&]TF263[;*6\Z1&3$JJQ)CSN/R\=?NC% '6>%O$,?BGP_#JT5
MM);)+)*@BE(++LD9.<<?PTW_ (2-/^$U'AHV<RR&Q:]%PS+L90ZI@ '.<MWQ
MT[UY7IMIJEC\('\2Z;K]]:W.FRW<\5LK+]G=5N)"RNF/FSSR3QQBNQ6Z:7XN
M:?=O$59_"\DIC[@F>,XH [ZD9@JEF(  R2>U>9Z2_B?Q)X>T;Q-I^H6]O/+(
MMS<-+J$A@:')WQ&'9L7 XR.05Y)Y-=1\0XA+\.O$67E0IIT\@,<A0Y5"1R.W
M'(Z'H: .BAFCN((YX7#Q2*'1AT8$9!I]><6U[):2^!O#4-S<QV^J6KW%Q+Y[
M%V$<*D1JY.5!)R<8P%XQFM30;Z^L?B#K/AJ6XFNK!+2*^M7G<N\(9BK1ESRP
MR,C.2.>: .SHKB/%DNH_\)WX2L;75KNTMKXW:3QPE0&V0E@>1U^N<<'&:YR?
MQ-JGAG0_&%LFH7%RUAJD-K:7-VWF/"DPCR6)^]MW$C/MGB@#UJBN%UB6]\,^
M+?#<=G>WDUEJLSV5U!<3--AMA994+9VD8.0/E([5R=U>:VG@'Q3KG_"1:G]L
MT?5KE+7$@"E8Y0H#@#Y@1QCIZ#KD ]FHKGM0\5C3K]+0Z%KET653Y]I9F2(;
MO]K/;O7+:MKESI7B>:#Q ^I6-K/?Q'3M4MI6:T\L%/W,JJ<*20P)8<[CR !0
M!Z517!65W>2>(?']@][=&WLX[=K8><V82T!<[3G(^;G].E8EKJ6MZC:?#5?[
M=O83JMO*+QDVDR$6Y;=R/O9Z9R <''% 'K%%>1W>OZUX*G\6:6VJ7%_;VL-I
M<65U>N'DM_/D$3!FQR 26&1V[UU=IH_B&U\213#45@TF>W:*>![^2YD,N,K)
M%YB84\'(Z8YQQ0!V-%>8>"])U?Q-X$M=5N/%.L"_GM[F%-LX6-6\U@CD 9)!
M'KTXZ<5H>%-7G\1Z/H%I)/<Q7]HTG]J@3MO#P_NV1CG^)R& /\(.* .RL[RY
MN+V^@FT^6VBMY%6&=W4BX!4$LH!R,'CFKM>=VEWX@GN/B!96&H27%[:S1II_
MVAU 0M"K;5X"CEN..N,UFOXZ33= \3:A;)JEKJUA8QE]'U1WD,#[BHE5F)W(
M2RY(.,*.F: /5J*\_P!<GOO#+^%]3LM2N[M;V_@L;V*>8R)<+*#^\53PC C(
MVX&#C&*A\/V&I:[KWB*.[\2:NL.FZQLBCAF6/<GE(2C8'W?FZ#&.O6@#T:BO
M,M*U+48]/U/P?>:C=R:_%J*V\5TTQ\QX),R),#VVQ*_ XRF#UKNM;OCH?AC4
M=0B0RM8V<DRJ[%BQ1"0">ISB@#3HK@-.L_$MTWA_6[;5(4MYE1[\RZA)*ES'
M(HY2,QA$;)!7;@=CFN=GN-9?P)XPU4^(M4%WH^J7@M&64*,1,-H8 888XQT]
MJ /8:*\^DEU'3_''A0C5[V:/6H;E;N&5P8@5B$BE$QA,'CW'7-844.OZIX4\
M4ZFGBO58KS1]1O1:;74(1"<@2#;\P(&,< >G7(!Z'>>(TL_%NF: ]G,7U"*:
M6.XW+L'E@%AC.<\CL.M;=>;)J,NK^,/AMJ<Z".:[TJ[G=!T#-%"Q _.F6FH:
MAXD\!:SXFAU.[M-1@ENGM4CE(C@$+,$C:/[K9"_,6!/S'IQ@ ],HKS9]<OHY
M_!WBZYN+F+2M5ABAO[42L(H)94!CDQ_=W?*<\<@]:FU#6KVUTR#4+>YD"Z_K
M4=K;>;.P6&W.0I4X;;YFPD$#CS1Z# !Z'17F^LW'B3P98:_JKWL!TYK9#:V\
MUY)<R6\Q=49PSH"4PX)!)P0.QK4BTOQ+9:]!>6^H6\>G26TD<\%SJ$ESYDNT
MF.1-R#;R.0"!C/'% ':45YUX/UR23Q!:Z5K1U73M>CM'$]I>2M)#>ME<S1-D
MKQAN%Q@,>.*]%H I"\N3K;61T^46@MQ*+W>NPONQY>W.<XYSTJ[7&+<WY^+=
MWIAU&Y^QOH2W"0Y7;%(9BFY1C&<*.N>]<7;7^MQ_#/3O%#^(-2EOH-3$>QI!
MY<B&\,15UQ\V5/?I@8Q0![/6)J/B--.\4:+HCV<SMJAF$=P&78GEH7((SG/
M[8YZUAQS7'BKQ!XJTO\ M&YLCIGE6]J+:5HS&[Q;_.8*1NY. #QA.G)JKJB7
M$7C7X<Q7=XEY<QF]2:X1 @D<6Q#-@=.0>* /0:*\S34=0_X1GXC'^T+O?IES
M<?8Y#,V^$+ KJ V<D!CT.:N:=K-UK7B+0?#\]U/'%_8$>J7+Q2F.2X=BJ %E
M(( ^9C@C)([<$ V]/\62:I8Z]-::/<M<Z3<O:_96D0/,ZHK<$$J,[O7_  KH
MH7>2".22,Q.R@M&Q!*DCH<<<5Y%;?:])\&?$N2RU&ZBN;34[B2.X# R?+#&0
M"Q!SV&>OO6YJ4^IS^*/!%I'K-[;V^HV5P;E(F7YBD*$')'7+'DY]1@\T >B4
M5Y;%JOB'3_!_CFWTZ[N;Z]TB]>.REG/FRK$4C8\G[Q4,Y&<] *U+&2YN_'E@
M-&U:_GT+^SS-=YF\U!*&&P%G!(9@6R@(/&>* .^HK!\87#V^A IJ9TXR7$,9
MD1"\D@+@&.,#G>PRHQR,Y]QREA?>()-1\<Z3ITEQ%/;6UM)IT-]<"5X9)4?(
MWDMU*@@$D F@#TFD<E48A2Q R%'?VKS?2]<N-4MM=M-)?4M.\116 "Z5JTK.
M8I?F D1W)#*Q(&>G X&>;/AG6HM6N]3LA-K.DZK%9CS]-OI&D>$@G][&S[@R
MG(&1QP.!F@#M-*N[B^TNWNKNQDL;B1<O;2.&:,^A(X-6)[B*V0/-(L:EUC!8
MXRS,%4?4D@?C7F.FZQX@G^&?A75EBOM6!!EU.*VG*74T>& *$$$X8J2 03@#
MIFJFLW-AKWAOPI=V6JZA=0MXFAB)EFD26/=(Q,;C.=R< $\C&0><T >H/>7*
MZS%9KI\K6KP-(UX'78C @!",YR02<^U7:XJ6:]MOBII^F)J-V;&31IG\AG#
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
M4TVVUC2;O3;Q-UM=0M#(!UVL,''O5!O"ND--HDOV;#:*"MES]P%-F#Z\8/U
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
M]O:U^R%MR[?+SN V[<?>.<_TXK-;X>:%+X<FT*=;B:RDN#=+OE^>*8DL71@
M0<DG\3V- ',^)+/Q%H'A3Q;<'6I(+<VPN;&&*^DFGMF48?$C@-L)P<=NU7@M
MYI?COPK&NK:C<1:Q:7*WD4]PS(2D:,K*O1#DGE<5MCP)IAT"\TB>[U*YCO5"
M7-Q<W32S2(.B;VSA1D\#'4^IJW)X6M)=3TG4)+J\:XTI&2V)=< , K;AMYR
M!SZ<<T <[\+K"&VM-?DC>X)76[V$"2YD<;1)QPS$;N/O=3W-7?$US=V_Q \&
M1PWMQ';W,]RD]NCXCD"P,PW#O@^M;6D>&K#1+Z_NK(W"F]F>>2)IF:-7<@N5
M7H,D FEU/P]:ZKJ^FZG/-<)<::S/;>6X"J6&UB1CG(XYH XJ?6+K3/%/V7Q%
M_:=JEQJ@.GZI;7#O:2IO&V"1 V$.!LY')R?J76L76F>*3;>(O[3M8;C5%.GZ
MK;7#M:.F\;8)$#80X!0Y')R:ZT^$K)V9)KF\FM#>&]^R22!HA+O\S/3=@/SM
MSC/:AO"5E(72:YO)K-[S[:;.20&+S=_F9Z;@ _S;<XSVH Y:&[O#;_$> W]Z
M5L'8VA-R^Z'_ $</\K9R!NYQFF:=K.HZK)X5T9Y6E-SX>COYB][);O<2$(O^
ML0%B1EB0,9W9/2NEOO VE7^I:E>O+?1?VG$([R"&X*Q3$+L#%?[P''IQR#45
M]\/-"OM)TNPS>P-I2A;*[@NG6XA& ,*^<XP ,=..* +?A&QU?3=-N;/6-1CO
MI(KE_(82M(\<)P421V +, >IZC%<=XVOKN.T\77EAJM_/<6$2/$;:9H(M/*H
M&*MAL2LQ^8C:>" <<5Z'I.E6VC6*VEL9G&2SRSRF221CU9V;EC_@!T%8E]\/
M]$U"XU:65KU8]67%W!%=,L3MMV[]HXW8Q[<9Q0!A>)]6U*PN;?4KZUU*YT&3
M3D\Z72KADELI26+2LBD%E(*\\XV'CDY[?298KS0;*6WO&N8I;9"ET.L@*C#\
M]SUYK.7PC:Q?\>^H:E"#:+9R 3[_ #(U+$;MX//SM\PP>>*U[2UMM*TV&TM8
M?*M;6(1QQH"=J*,  =3P/K0!Y"D&M7?PWUCQ"OBC6(]1TFYO)+<_:3Y96&1O
ME=>CY"XYX'&!USMZKJ-UJMM?W*7U\UTNAQ7'V.SF>W73Y&1G\R1PPW$X&%P3
MA>F"33_ WAH7WAW4+355U2&";4KB:6QN(FBCF5I2RGYE#;2,9 (![CDYZ:]\
M$Z1?ZQ=ZE(;N.2]@%O=Q0W+1QSJH(7>HZX!(^E ''O>:IJ]Q\-M^L7\ U:QD
M:]%O+L\P_90^>.^2>>W48(%6=,T&#3_C EJ;W4KHP>'XY/.N+V1GD87!&6((
M!& ,KC!ZXR3716W@32[-M%:&YOP=&5ELRT^[:&7:<Y!SE0!CH!T K0NO#5A=
M^([?77-PE]!#Y&8IF19(]VX*X'4!N?YYH S?B!K=SHGA^W:UD,,EY?V]FUP.
ML*2. SC/<#./<BJ%^]UX>^(/AVRL[J\FT_64N(+FWGN9)MC1IO61&<DJ>H.#
MC\:ZO6-(L=>TJXTS4K=9[2==KH21WR"".000"".F*JV/AVWL[N*[FNKN^NH(
MC#!-=N&:)#C(7  R<#+$%C@9- '+?#W38(-?\7R))=%HM9>-0]W*X(\J/[P+
M$,>>IR?>M+Q+J=VWB[1= @($5Y;W$[@W3VYE:/8 @= 6X#,Q QG YQD'6T;P
MW:Z'>7]S;7%T[W\QN+@2N&#2$ ;NG'  P..*9XE\)Z9XJM[>._$\<UM)YMM<
MVTIBF@;U5AT_SZ4 <+X@M_$F@>%I(Y]?E#C6;?[+Y%TTDD4$LJKY<CL S@<X
M)Z]\UMZ<+S2?BC>:3#J-[=6MQHHO?+O+AI0LPF*97/W00>0N![5JS^!M+N-%
MCTN6XOWB6X6Y>9[@O--*I!5G=LDXVCVX Z"IKW0!!JEQXDM3<W6L1V#6T432
MJB2J/F"'C R^#N[?3B@#A+.?6]6T3PT8;_5$\02:GY>KQI,X"1!G$I*\HJC
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
M&.&SW'0]P<FM&3PS82>)#KRM<Q7K0K _ES%4D522I9>A().,T <3I5MK.O\
M@#Q-;VVL:@-4M]4O8[*Y%RP<&-\(A(/W2!C'3G-;GAS5T\7KH]_:37,4$%D)
M;A%G?_7-\HC;GYBI23.[/.T]ZW=!\/6GAV&ZBLY;ATN;A[F03.&_>.<L1P.I
M[=*DTC0K#0X;J+3H?)6ZN9+J7'>1SDG^6![4 >4:V]Q?_"+QP+Z]O+EK/6;F
M*%Y)VR$25%53@C*@=CQWQ78>(1/I7B3P7;V=_?);37TD4T+7+N)1Y3M\Q8DM
MR.YQ6I'X'TA=$U;2)&N9K/597GN5DDY,CG+," ,$D ^G'2I9O"%E.^E227=^
MTFER&6W=Y]S%R""S%@2QP2.>,= * .5!USQC%XA_LZ\^R7EGJ4MG;3+J,L7V
M;RB NZ%5*N#]X[LYW8X &(/$^JZGILDUSK37\FCSV,2+JNBW#[;";:=[O&K
ME26#!CGC KI[[X?:+>Z]-K"R:A:3W( NX[.[>&.ZQQ^\53SQQVS5V\\*V=V]
M\/M5Y#;WT8BN;:*0"*1 NS&""5^7@E2#[\# !L(\5Y:J\<F^&9,J\;$94C@@
MCGH>HKR&RO7\)^#/B!KM@;E[RSUB[BA$EQ)(HR8U#,K,0Q&<[B"3CK7K\<,<
M%ND$*B*-$"(%'W0!@8^E8FG^$-,T^VU2UW3W-MJDLDUW#<L'61Y,!STR,@=!
MQ[4 <_K[77AB]\*W^FZC>W,=[J$.GW<4]R\J3I*I_> ,2%8$9^7 P<=*A\)V
M%YJVO:]+=Z_J[)I>NNL$*W.$91&AV.,?,GS?=[8R.IKI].\)6.GFQ!N+RZBT
M_/V**ZD#K;\;?EX!)"D@%BQ )Q4VC>';70[K4+BVGN7>_G-Q<"5PP:0@ L
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
M(();/7F@#TZBO- FK>-#XEBM;P6MY9ZC):6TRWLL;6NP#8PC48(/+'/WLD=
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
MV>HIJ,4.G30M#-9F\EN!</@LKJ7Z, #DCJ*[&@ HKS+Q)J=UHNO7\VNQ7_\
M8L]S$;75["X8K98" QS1J1A=P.3SG?@^VII;S2^//&UA)=W;6L=M9O%&;E\1
M%DD+%.?ER0.F.E '<U@^,?$;^%/#D^KK8F\6%D5D\T)@,X0'.#W8=JX7P]KU
MY=Z%\.M-OKZX*:O'.]U<-,PDF:-,JA?.>2<GG)VXZ$U9\?Z2VC_#GQ-;C59[
MJ*6XMIX8)FWFU1IXQM#$DE<JQ&>G2@#T^BN$@BET;XL6ME!?7TMM?Z5--<1W
M%R\JF5)$ < G"G#$84 >U:_C*9$M=-A:_N;=I[^-1;VH_>7F 280=R[0<9+9
M  4YX- '245Y?I\FOS6?C?2["<Q7-K?0BSAFNV8('2-FB64\KNR0,?=+<>M;
MG@?6+;4-0U6W-KJ6FZC"L0N=+OI&<0GYL/&Q)!1O48'RYQS0!VE%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 5C>+DDE\':S!##+---9311QQ1EV9F0@  >YK9JA
MK5_+I6B7NH0VZW#VL#S>4TFP.%!)&[!QP/2@#G_"'AR!?#GA^2]6]:>PMH_+
MMKLL!;S",*Q"D DC+ $YP#\N!6SI7AVQT>_O[VU,_G7\GFW/F2E@[XQG!X'
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
M*2*Z=)(E(PR!P0=I  QFK^B>&=+\//>MIL4D?VR8SRJTS.N\]2 20,XYQU_
M5KT4 82^#]"30H-%6P06$%PMS'%V$@D\P'_OK]#BK&O^'K'Q)8K9:CYS6ZR+
M)LBE,>64@J21SP1FM6N?U[Q%/HVMZ%8+9)+#JER;<S&7!B(1F^[CG[OJ* )-
M5\*Z?K%S875S)>)=V.X17%O<M%)M;&Y2RD9!P/RJH/ .@+I&IZ4D-PEGJ<S3
MW42W+@.S')QS\HX'3&<#.:Z>B@"*V@6UMHX$9V6-0H+MDX'J>]<LOPU\-I:I
M:K%>+;Q70NX(EO90MO(&W?NP&^3DGIZUUU% '+WWP_T"_P!:;56BN8;B5%2X
M6VNI(DN548 D52 PQQSU'7-:%UX9TN[UNTU=XI4O+6+R$:*9HU:/(;8RJ0&4
M$ X/%;%% &%:>$].M#9KONIH;*4S6L$\Q=(I,$;AGG@,< D@9X J_K&D6NNZ
M3<:9?"0VMPNR54<H64]1D<XJ]10!AGPIIQO]*O6>Z-QI4;16C&=OD5@ P(Z-
MD #G/2I])\/66BW5_<VAG\R_F\^X\R4L'DP!NP>G  X]*U:* ,G4?#>FZKJU
MEJERDPN[-62-XIGCW(V"58*1N4D#@\53'@G2!8:M8YNC;ZM(TMZIN&_>LPPQ
MSVR !QCI7144 <QJG@+0]7@TY+A;J.?3D\NUNX+EXYXTQC;O!R1CUK=T[3K7
M2K"*RLXRD,8. 6+$DG))8Y)))))/))ITU[;6]U;6LLJK/<EA$G=MHR?P [^X
M]:L4 4;W1[#4+_3[VZMUDN-/D:2V<_P,RE3^A_,#THLM'L=/OM0O;6!8[C4)
M%EN''\;*H4?H/S)/>KQZ<=:P/"WB*;Q"NK^?9I:R:?J4M@567S VP*=V<#KN
MZ8H :W@K1S+>[4GCMK^3S;NS28B"=SU++[X&0,!NX-6G\.6$GB.'729Q?0PF
MW0K*0@C)R5V],$@&M>N?\4>(IO#O]D-'9)<1W^I06+L9=AB\QL;@,'=WXR*
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
M*=XQ'(N</\I&3R3DYZGUJ>W\/:=:Z[<:U$DPO[B-8I9&G=@RCH-I.WC)[=Z
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
MKLEG+?PN\EG(9()(YGC9"1@\J0<$<$=#4$?A/2(KG4[B.*X675%"7;"ZE_>
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
M\UJQ:">*5HI(R>N&4@X/I0 SPAIM[H^C/IU]JW]I26\[JLAR6C0X98V))+$
M]3VQ6!$URGQ(\66\6H2PK_9$$L333,\<#L9/F 8X4< X''%=GINFVFD6$5E8
MP^5;QYVKDL22<DDGDDDDDGDFJ+^%=)DU._U%X96N;^#[-<L;B3#QX(V[=V!U
M.,#C- ')>#[Z2U\36VD:YIEUIFN)92(&68RVVH %"TJMG[XVY.1NPQR:TO'\
MDEO<^$YH)I8G?7[:%S'(5WQL'RK 'D' X-;UCX=T^PNH+E!/++;Q&&!KB=Y3
M$AQD*6)Z[1D]>!S4FN:%I_B+3Q9:C$[Q+(LJ-'(T;QNIRK*RD$$>HH XV<RG
MQMXTM%NKI(1H\$R+'<.OER'S,LN#\I.!TQ6%812V7A_X;ZY'?WSW]Y=6MM</
M)=.RR121-N4H3M[#G&<C.2>:[^'P1H4%S=7*07'VB[MQ;3RF[E+R(,_>.[)/
M)^8\^]*?!6AG3],L?(N/LVER++9H+N7]TR\*0=V3@$XSGK0!S<5Q':>./B)<
M37IL8X].LV:Z"[C"!%+\X'<CKCVJII7GVOC7PK;QK<PV>H:7<";SIRTEWL6,
MB25<D*YW$YR3\Q!QTKM6\):+)>ZI=R6TDDNJ1"&]#SR,LR $ %2V!@$XP!C-
M5;3P%X>LKC3;B.UG:?3@RVTDMW*[(I &TEF.5&!A3P.PH \^OHM0CT;Q)X/M
M;B\DUVTOOM6FR&ZDWO;LOFKELY( 1XSVSM'!.:[3PW=V?C-DUJ#S!8BQCMTC
M65E'F.H>0'!Y*@HH/4'?73#2K$:TVKBW7[>UN+8S=_+#%MOYG--T_1['2=..
MGV$/V>VW.X2,D8+L6;!ZCEC0!X]%:1V/P.\0ZA:27$%W%<W?ERQW$BE=MR0"
M,'@X[]Z[G5)9(OBAX42.>58[FSO#-&)#MDVK'M)7."1D\^];%IX.T.RT2[T:
M*UD;3KO?YT$MQ)(&W\L<LQ())SQWYJ*T\#:%9WNGWJ174EW8*RV\\UY+(ZA@
M 026Y&!@ \#GCDT 8?@ZQCU.W\=V,TDL<=QKUU$SPN4=08XQE6'0UW-I;)9V
M4%K&TCI#&L:M(Q9B ,9)/)/'6L*7P;I$>DZQ906L[QZJS274;7D@\UVQEMQ)
MVYP,D=AT/2M/0]-.CZ%8Z<96E-M"L6\DG.!CJ><?6@#A-+W>+?#WBF_O+FXA
MU&VO[J"WDCF9&LO*'[L+@\= Q_O9.<BLVWGO?%&I?#^34KJ^A.K:5=->Q07+
MQ+*51,, #\I.XG(P>:] N/"&CW%[>71AFB:^ %Y'#.\<=Q@8^=5(!..">XX.
M:FN/#.EW.K6&J/#(MUIZ,EJ8YW18E( (" A<$ #IV% $6J1OH7@:^2PDF>2Q
MTZ3R'D<NY*1G:2QY)R!S6%X:T5-7^#6D:;#<2VSSZ5&8YX9&1HY63.X$'/#'
M/O7;NBR(R.H96&"",@BL3POI4WA[3AHA4O:6I86<V<YA))5&[AESM]" #UR
M <WX/U$^)[#0[:821W6D*W]I()&!6X0F((W/(8AWYS]U?6I]4DDM_C3X?\G/
M^E:5<Q3@?W%967/_  +^==;8Z38Z;<7L]I;K%)?3_:+AA_&^T+G\E'ZGO6=9
M:0\_BFX\17:;)/LPL[2(]8XMVYF/^TS8X[!1W)  -ZBBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ IKNL:,[L%
M102S,< #U-.K$\8V\5UX+UN*>,/&;&8E3T)"$C]10!IV-[!J-A;WUJ^^WN(E
MEB?'WE89!_(U8KR>SE6P\.?#O2HG@M;35K=&N6F5FCED%NI1& 89#$],X)4#
MGI6C<>&=7TNPU>QTS6K.>6XNK>ZM]+D1HH44$EX02[$))L;C@#!'0F@#OM1U
M"UTK3KB_O95BMK>,R2.W8 5'>2ZBEY8K9VT$ML\A%V\DA5HTVG!48^8YP*\A
M\2W6GZI\,?&$#Z//I6HV<T$ESITQ#+;R$H%:,CY2A )&,<Y..:Z_Q-:1:?XP
M\#1V;2PPF^F0Q)*VPCR7;E<X)SWQF@#9U37[W^VKC1-%MK>?48+(7K"Y<JA!
M8JB CN2K<]L#KGC;L9KBXL+>:[MOLMS)&K2P;P_E,1RNX<'!XR*X2UT;3Y?C
M-JXDM48?V5!-@D_?,LF36;9A](N=;\ .TC7%]<K)IT[L6=K67)<[CSF(+)@^
MH6@#U6JUAJ%KJ=H+JSE66 N\8=>A*,4;'J,J:<;.W-C]B,0^S>7Y?E]MN,8_
M*O$[>QBM?V=X;NT:6VN3.@,D$K(3_INSD X(VDC!!% 'N=-DD2&)Y975(T4L
MS,<!0.I)KSK7M#L_#OB3PJ^G-<HU[K1-PTER\A?,+Y!+$\$J#CIFJ.I0Q3WW
MQ5LY!OMH].@D2$L=J/\ 9Y&) Z#+ 'ZT =;K'BQ[+_A&IK*VBN++6KN*W$S2
M%619%+A@N.>!ZC'I745Y+?Z?;Q^#OAK#"&A6?4;%Y#$Q5B3;MD@]0?<5M^&M
M/M[7QUXOT*,2'3/)LYUMWE9U5W5]Y&22,[03]* -72O$FJZY]AU'3=-@FT6Y
MN)87<S;9HE1F42X/!!*_='(!'7G'4MG:=H!;' )Q7AUM9P6?[/::C;(8;P3K
M^_1B&'^F[>#GCY21]*[VZ8Q_&73HT<JLNC3O(@; <B2, D=SC(S0!$/'5^?!
M/B#7O[+M_M&D75S UO\ :&VL(3@G=MR>_&!^%=G8W!N]/MKEE"M+$LA [9 -
M>4+_ ,DG^(O_ &$M4_\ 0S6OXEA_L>R\,^,8P[1::(DU"($[7MW4*7*]"R$A
MA[9]* /1ZI7$NHKJME';VT#V#B3[5*\A#QD ;-JX^;)SGD8K,\,QQWCW^O*
M5U&;-N0>/(0;48?[^"^>X8>E9'B -'\5?!VR:8+/#?"2/S6V';&NT[<XS\QY
MQF@#MZ*\7GTN*X\(_$6[EN;YY]-U*[DLW-W(3"R1(RD'=R<^N>/QKUO2)WN=
M$L;B9LR26T;NWJ2H)- %VJNI7,UGIEU=6\*32PQ-(L;R% V!G!8 X_(UY09@
ML?A+5],EFFBNO$(B.JS2;9[R.1I=RE0/]7Q@ GHH^45ZKJW_ "!K[_KWD_\
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
M17LIVSQE1*]J7Z[0..<\'!XH ]6HKQK6]3MKCX<^)S!IMWHNJV5];/<6;O\
M\>KL\*_NF7C8R@GC .3QS777X_XO!IL"NZ)<:/<&54<KN(= "<'J 2 >M ';
MT5XQI-NVG?"[4?%<,][+K&GG4$MY7N7<1KYKKG:3AL#YLL"<CV&.KL= \K5M
M'U^QU^T@M9(71TMX'QJ"LFY2Y:0[F7!;=@GKDT =Y17F'A:XGTOQ%H^D^(--
M,.IO%(MKJ]K)YD&J )EFD/428&[YL]\8!Q6Q\4U<>%;>6*>>&1=1M%#12LF0
MTR@Y .&X/0@T =O17F[:#9Q_%AM*1[L:?>Z*US=6_P!JD*S2+,JAF);.<,<\
M\]ZYYY)8/AS=1K/-_P 2WQ2;2UD,C%XX1=*NS=G.,'')Z4 >TT5P=V[1?%VX
MBBN3;(_AMY7;/RJXG $A7ID#OZ"LWPPS6GB"RT#Q+HQM=4DLI88[RWD\RVU1
M %+NQZ^9A<_-SR>><4 >BV&H6NIVOVJSE66$N\8=>A*.4;'XJ:LUP7P>L[:W
M^'.GS0Q*DDK3!R.^V:0#\A45_ID.I?&)[*ZENGLY= ,LEN+F0(S>>%Z \# '
M P#CF@#T*BO&M-U>[MO"WAW29+F?[#/XDFTV65I#N\A9)-D1;K@D*O7H"*Z*
MYLAI_P 1FT6TB_XDVIZ/+-=60_U4;HP4.J]%W!MI P#0!W5A?VVIV27EG*);
M>0MLD7HV"1D>W%6:XCX26D$'PST26*,*\UN&D(_B.35;Q%-#X0^(.G>(;AF7
M2M1@DLKG))6&<#>C@=BP5EX]J .SU2748K5&TNV@N)S*@9)Y"BA"PW'(!Y S
M@5=KS/Q=I\FF^!M/F8RV]Y+JUM/.L4K* TLZED(!PRJ#M /85I6SQ>(?B1XE
MTC5XQ-;:?;6HL[>3[I$BLTD@'][=A=W48XQDT ;/C+Q#<^&=&CU"WM(KD&YA
M@<22E-HD<)D  YZ],BNAKQB\NK^;X6ZC:7T\MPNG>)$L;:XE;<\L,=U&%)8]
M2.5S_LUT'BU;?4-2\31PE[ZYL])4R),^R+3R5D97C(!/FM@'@# 4?,.!0!WU
MQJ%K:W=I:S2JL]X[1P)W<JA<_D%/Z>M6:\E%M#K&L?"N[U!/M-Q=:=,9Y)"2
MTA^RJW)^I)_&K4=C<>.'\4V[ZG;VE[9ZC);0RM$YFLD0#RWC(D7:#C=G')SG
M- 'J%%5=,+G2;,R70NW,";KA4VB4[1EP.V>N/>K5 !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4R:&.XADA
MF17BD4HZ,,A@1@@T^B@#G7\">&I?#O\ 8$FEI)IH8,L3R.Q4C@%7)W# X&#P
M..E26_@S0;72%TR"R:.V$RSY6>02&1>CF3=O)&!@Y["MZB@#(D\+Z/-I]_8S
MVGGPZ@,7?G2,[S8  RQ.[@ 8YX[8J-O".BLVG,;67=IS%K5OM,H,;'JV=WS$
M]R<DUMUSOC#Q!=^'+&QN;6V@G6>^@M9/-<C8)'"Y  Y//J/QH MCP]IL&M3Z
MY#;S'4I(]C2?:9/G4<A<%MN,]L8K.T*'4-8U=-?UG11I4\%NUM;6[RI+( S
MR,67C!VH .O#>M;;-J?]M(BQ6O\ 9?V<EY"[><)MPP ,8V[<\YSFKM !7-MX
M!\,MIEQIO]FD65Q+YTD*W$JJ6W;AT;@;N=HX!YQ725SMCX@N[CQWJ>@36T$<
M%K:17,4J.69][,.<@ ?=Z<_6@"[JWAW3-<TZ&QU&!YH8)%EB;SG61'7HP<$,
M#R><YYJ&S\(:#8W%[/;Z<BR7L0AN2SLWFH%VX.2<\$Y/4Y.>M0>,O$%WX;TF
MWO;6VAG$EW#;R>:Y&T2.%R !R>?45T5 '.IX&\/1VEC:I92+#82B:V474W[M
MP,!L[LD@<#/0<#BKD?AO2X=4O-2CBG2\O4"3RK=2@NHZ#[V!C)QC&,UK5SOA
MSQ!=ZOK/B"PN[:"'^R[I($,3EMX9 ^22!SSZ4 2P>#M!MO#LV@1V/_$JF4J]
MJ\TCK@DDXW,2O)SQCGFFV?@O0+&^MKZ&R<W=O&8HYY+B21PIZY9F)/0<G.,#
M&*WZ* ,%/!F@II5]IBVDOV*_D:6ZB-U*1*S?>).[//?U[U1UNWU$P+X5TW17
MDTNZM#!)J$MR&2W4Y5E*L2S$+R.H)('3..LHH CMX(K6VBMX$$<,2!$1>BJ!
M@ ?A5"[T#3;[6+/5KB&1KVS#"WD$\B^6&&&PH8#D=>.:TZ* ,$>#="%GJ-H+
M6;[/J3M)>(;N;$S-PQ/S=QP?45KV=G#864-G;JRP0H$16=G(4=!EB2?QK$\6
M^(+OP]%I4EM;03)>:E!9RF1R"BR.%R !R>O<?C7022)%&TDCJB("S,QP !U)
M- ',K\.O"B0I"NDJ(H[@7,:>=)B*3).4&[Y!DG*K@'N*Z&YM(;NSDM)5/D2(
M4948I\O3 *D$?A7-:WXODM+'PW?Z9!#<V6L7]M;>9(Y#*DW(8*!SQZD?C764
M <_<>"/#MWX<B\/W&FK+ID)!BA>5V,1'3:Q.Y<>QK(\1>$X;/P<-'T/0H[VS
MDNHY+RU-P1+-&""Q61SR^57!+#@<$8%=O5+5FU)-+G;2([:2_ 'DI=,RQDY&
M=Q4$],T <7X=\*VR:K;W=AH>LZ- FX7":AJ!E6X0J1L\OS9 1D@Y.,8XS6S!
M\._"MO':QQZ4-EI-YUN&GD;RSSPN6X7D_+]WVKIQG SC/?%5]0OH=,TVZO[@
MD06L+S28'.U02?T% %6QT#3=-U.]U&UAD2[OB&N7:>1O,(& 2&8C@<# X'%<
MWXPTFYU3QGX3F6QNYK*REN'N9H'V>7OBVH00P;[V.E:FAZIKVI36-W/96?\
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
MO$T*D21'S%VG>6.X#.0,GH!V=EX2T/3Y4>UL1&D<AECA$CF&-_[R1$[%/)Y
M'6HM:\$^&_$5_#?:MI,%S=1#:LI)4E?1L$;A['(H XZWWZCXIM/#5_JEGJ,,
M>B126TE_:F1+QM[K)(%W@%L*G/)QDCJ<U+_0?[-_X0K2Y-:N=1$6LR6QF5WC
MPGER-Y?#'.W[N<Y&,9&*] USPAH'B2&VBU;2X;A;;_4'E&C]E*D$#@<=.*?)
MX5T62/3XS8JD>G'-HL;L@A/JH4CGWZ\T <YX+M8=*\=^,])LE,5A"UG-%;AB
M51Y(F+D ],E034FNW7VKXG:'H5^H;2YK&XN%B<92XG4J &!X;:NXX/<Y["NF
MM-#TZRU2[U.W@9+R["BXE\UR9-O"Y!..!P/3M3M4T73]92%;^V$I@D\R&169
M'B?^\KJ0RGZ&@#R7Q,L^GZ%\3=%@+?V/:PVTMK&3E8'D4,\:^BY .T<#/O6]
MJF@6^@>-/"E]HWGK=:E</;:A&TSN+J'RF9F<,3DJ0#GW'M7=+H.EC3+C3FLH
MY+6Y)-PDN9/.)ZERV2QX'))/ ]*;IWA_3-*D66U@?S%C\I'FF>9D3^ZI<DJO
M X&!P/2@#S/18-&TGP!XSN)F?38QJU[;&XL$59U0S!51#VY( '09[=:V-%MG
MLOBM<6 M(-/MKC0%E>TM)#MW";:&8@ ;\$C(_,]:ZM_!WAZ1=25])MV74R3>
M*02)22"3C/!) .1CD ]126O@WP]8WD%Y;:9%'=00F&.<,V\(?]K.2?<\CL:
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
MHMZ8P#SSA0!SZ5UB"S\2_$#Q1H>M*DRVMK;K9028(6-T)DD0'^+><;NHPM=
M/!?A\:3'I8T_%A'+YZ0":3:KYW;@-W7//UYI=9\&>'O$-Q;7&JZ9%<SVZ[8Y
M69@X7T+ @L/8Y')H YEK33)M7T31(;F?7)K;392L6H2*T!C#JAGD.WYWR"JX
M'()Y Y/)6T,6I?#CX?R7Z1W<J^(8[??,-Y\OSI5VY.3MPJC'L*]8O?"FA:A<
MV=Q=:9 \MFGE0$ J$3^Y@8!7_9.1[5 /!/AM=);2UTB!;)I_M'E+D8DSD,#G
M(()/0\9H P9(8[3XQV"VJD1_V!-MA5SL&V6, *O1>..*YF$IJ_P3N?%4LAC\
M11)/=F^'$T4Z2-A >H7 "[.F.U>GKX=TI-5@U-+39>00^1%(LC#9'_< !QMX
MZ8J+_A%-$%Y-<BQ :>43RQK(XBDD'.]H\["V0#DC.0#0!Q4.FQZU\3XHM7AD
M87/AB*>YM6E?89#-A@5STXZ=.!Q6U\+'?_A"$@:1W2VO+JWBWL6(C29PHR?0
M8'X5T3:#IK:RVKF!QJ#0^09Q,X;R\YV\'&,\X]>>M/TG1=/T.V>WTVW\B%W,
MA0.S#<3DGDGDGDT 7Z*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "F3316T$D\\BQQ1J7=W. JCDDGL*?6+XO@
MAN?!FM1SQ)*GV&9MKJ&&0A(.#Z$ T 9FM>+I[:T\+WVF102V6M7UO;EYMP=8
MY06! '? [GOTKK 0>A!QQ7D-S8V2?#WX;0P0QPBXU+3'F\@>6SLT+98E<')]
M>M6FCTOPUXB\>VR-+IND_P!DP7$HL?E:-V$BL\8Z!S@<^N,T >J!E;."#C@X
M/2J>F:K9ZQ:O<V,HE@6:2'>O0LC%6P>XR#S7G.E6D=G\1="MUM+2TMKO0I4>
MVC(8R(&CV^:0 KL<GMCD\FM7X2V5E;>$WD@MK>*=[V[1F2-59E6=P 2.2 ,?
M2@#OJ*\^\91V7ASQCHOBV>&,6DP?3-18IN^61<QN1[,NTGT;%87AFS\BZU'P
M)?:?%$US>1ZDL>P$+9O^\9#Z['7RL_[8Q0!ZZ64$ D GH,]:"P&,D#/ S7C_
M (W2QNM)\=75A&LDEDL:2W-TPS;2(BE8[=0 5 R#G(^8G -:OB>+43=_VQ#I
M]EXAL5TN..^TV5@)XERY,L1.1D\Y'4[!CIP >F=:3<I)&1D=LUGZ!=6M[X=T
MRZL3(;2:UB>'S!AMA4$9]\5YUH*R:/KNAV.NZ9:WD-U))_9NOV>#]JWQN=LZ
MD9RRDG/() ]Z /5JYN'Q!>GXAW7AZ:&W6TCTQ;Z.522Y)D*8.>!]T_XUYG?)
M;Q_ SQ*K+&I@U>X6(' \LBZ  7T./3M75ZEHNG:[\8[BTU.V6YMO^$=B)A=C
ML8_:).H!Y_'ZT =OJQU,::YT?[&;W<NW[86$>W<-V=O.=N<>^*NLP498@#W-
M>(7MFUM\)O$EGOEDL=-U\0:8[N3MA%Q$NT'N 2Z_@:ZV_9-9^).J:%J3Z>47
M3X'LK>_MC,LB,7\UD&]1G.T$\G '3!H ]") &2< =S5/4M6L])M8[B\F")+-
M'!'SR[NP50/7D_EFO.+!;?3/$/A3PQJ.J'5-)%I=K;S7(&RXN$D 56SD-L7<
M%Z]N^*9XN\/Z'IV@6=G9@7,,?B:V)2?:ZVYDD4O$G&%3!'R^_- 'J]4M+U6S
MUFS-W8RB6 2R1"1>C%&*-@]QE3S4R6MJ+/[)'!"+4*8_)5!LV]"NWICMBO%K
M&6'1/A!;W%I#%:K<ZRUOJ%Q"H1Q:_:V5LL.<8POL&H ]O#!NA!QQQ5/5=5L]
M&L&O+Z41Q!E0>K,Q 51ZDD@5QVI6*:)\3/"QT2".VBOX[F*_@@4*DD2(&1RH
MXRK$ 'K\V*?\6K6VN/!\+3P12E-1M-ID0-MS,@.,],@D'VH UY]?O8?B'9Z
M8;?[%<6$MT)<DR;D95QZ ?-[_A71@@C(.0>]>>:KI&FW7Q4T33VM(38C1KH?
M9D&V,@2Q_*5'!&>QXKF8+\Z)X2FL4F2VTB'QA+82&12T4%KO8A6&1\F[:",@
M8)!X- 'M*L&&5((]0:&8*,L0!ZDUR?A_0+?1_%-[=6^I6_\ IULKO86=OY4(
M*D 2XW-@D'';=CV-1>(5L;_QOIFGF(7=^EC-,MM<L/LJ1EE4RLI!+/G@ =BV
M2.M '2ZEJMGI,4$EW*$%Q<1VT0[O([!5 '?KGZ GM0=5L_[:72!*#>FW-R8Q
MU6,,%R?3)/'T/I7C5K!;7WPS\$?:XX+HQ^)([=6D4/B+[3(NT9S\I"@8Z8 ]
M*ZZ+2M)C^-AV6%DJ1Z!')'B% %=;@J&''!   /7@"@#T/< P7(R>@H+ =2!W
MYKR&RC@U[X0ZYK>H@)X@@:]FENNDUM<1.Y15;JNT!  .WUJ>/2(?$?CO0X_$
M%J9);WPJ9+Z LRAY-\6X$ ]B?S /:@#U<LHSD@8]Z"0 23@#N:\KL_"^C7?B
M_P >:?<62S6<%K9"."1F95/DOS@GJ.QZCG'6J6CZM-<Z;\/+#4KJW%I>Z;+A
MKZ(RQS7"A BL-RY.W=C)ZGIG& #V($$9!R#17F5[\/H+CPKK>E6-[%=WD-V;
MVRC6$+%93\/Y*#)PC8&5SP&Z<BM+PYJ<?C&1/%%KIZ,]A8_9[>&0;"+E@&E3
M<1P%PB ]LO0!W=,=F,;^5L:0 X!/&?>O//%WB'Q5:^!=9N[[14TH1+$!-:W_
M )[[&D59",(I4A"3G_"M^PT;P[;^(+'5]*D2&:XLS%'#:,HBN(N&WLH'S8XP
MV?XL=Q0!7\/>(-=\2> CJEK#IT6KM+-&B3%_(&R9DY(^;[JG\:ZXL%7+$ >I
M->)7$22?LY:@S [H[J=E()&#]M8?R)KK=4E74_B9/H6H26'DG2XY+."_MO.2
M4EW$I4;U&[A!W.!QCG(!Z#D#O4-U>6]E9S7=S,D5O"A>21CA54=237E%WX?M
M+";P+IG]IS:E%#JD]L)RS*=GER$Q@@\A3\O7MCM3+O3+&RL_BOI-M:0QZ=;V
M<=Q!:A!Y<4C6K,65>@.5!X[B@#UFRNX[^QM[R'=Y5Q$LJ;A@[6&1G\ZF+ =2
M!]:Q/!]M:6OA+2DM((85:TA=Q$@4%C&N2<=SQS7#:?X2T3Q#XD\>6>JPF6".
M[B\L/*V(2T"DN.>&SGGM^= 'JI('4U1D;4CK%OY7V,Z686,I8MYWF9&W;_#M
MQG.>>E>0:/:R:W!\+3K?F3RW,=['*7=@9HA$^S=SR"N,^H)]:ZA-%T_1OBKH
M-A86XBM5T2YC$6XL H>/ Y)]30!Z+5*8ZF-8MA#]D_LPQOY^\MYV_C9L[8ZY
MS[5YQ:6<6A:_XA\#1VZ+%K4BW=B0@XAD^6<>G[O:Q4>XK7O;*VLOB[X:2VB6
M)/[+ND")PH"F,  =!C)H V?"NOWVM7FOV]]!;Q-INH&TC\DL=RA%;))ZGYO0
M5T88-G!!QP<'I7D-WJ-SI7A_XD7EJ[HR:V@=T!)2,B!9",$'A"W0@UTNGZ!:
M0>(K/6M.UBP@:ZLWA2#3K41Q7*XW+(P#MG:<?-[XSR* .YW L5!&1U%!8+C)
M SP,FO(=)\/7&O\ ASPG&++-[;7_ )VHZCN&VY@!?>1(#F02':1^!.,5H-:P
M^*_$?B_1-2N;".:!TBACN;8R20VYA4K)$2XV_,6;('!QD]!0!Z?65I^K_P!J
MZC>):!39V4IMY)CR9)@!N5?9<@$]SD=J?H,?D^';");Y]0V6ZJMW(,&< 8#G
MUSUSWZUPO@"(7GP-(NHQ+++%>M.LBY)D\V7.0>^: /3*0LHZD#\:\A!A/@SX
M4RDQFX-]9*'R-Q7RFW#/7&<9]\5(WA[2]1U?XEQWEJL\</EO$DC%A&YM=VX
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
M7G?BQ+'PQXZTWQ+<6J-8ZC;RZ;?#RPV7QOB..Y;:R>^0*R/"-CY9N/A_J-C
M)+:^6_D4)N4VK8E7D_>Q)B(Y_AS0!ZT6 (!(&>F>]+7G6@VEEXJU/QI:Z_;Q
MRW%OJ#6L:R 9@M?+7RBF?N9^9LC'//:L#P[<WMZ_PLU#5#OOI3>QM<./GEC$
M3B,D]3E0IYZYS0!ZEX@OKC2_#VHZA:1Q23VMO),J2DA3M4G!QSVI/#VHR:MX
M8TK4[A426[LX;B0)PJLZ!CC/;)K@;40HWQ5CMQ&(E!PL>-H/V3YNGOG/OFHK
M&\667X9Z+?;?[,NM($QC?[D\Z0)L5NQP"2 >^/04 =EH/B"]U/Q3XCTJZAMT
MBTMX%A:$DEQ)'ORQ/X=!725P7@JSM=/^(7CNVLX4AA$UFPCC&%4M#DX';DFN
M]H **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ ILD:2QM'(JNC@JRL,@@]0:=10!
MA)X-\.Q6EM:1Z3;I!;2^?#&F5$<G9Q@_>'8]1VJP_AK1I;J[NI;"*2:\B\FY
M9\MYL?3:V3R/:M))HGD>-)$9T^\H8$K]1VK$O/$<4EEKO]DRP37FE(PD$G*"
M0)OVG!SP,9]": '6?@WPY836<UKHUI'+9Y^SN(\M'G&>3]!UZ8XJYIVAZ7I,
M]U/I]A!;2W4ADG:-,%V/))_')_&JOA76'UKPOH^H71A6[O;**YDCCX&64$X!
M).,FM=YHHY$C>5%=_NJ6 +?0=Z ([NRMK^#R+N!)HMZ2;'&1N5@RG\" ?PH^
MQ6WV_P"W>0GVKRO)\W'S;,YVY],\U(\T47^LD1,#/S,!QTI?,3&=ZX^M &-=
M^#_#M]>W=Y=:/:2W%W'Y<\CQY,@QCGWQQGKBG'PGH7R[-/CBVP"VQ"S1@Q D
MA"%(W+R>#D<FMC>O'S#GISUJCIK:@%O#J<MFVVY?R#;!AMAX*A\G[^.N.* +
ML<:0Q)%$BI&BA551@*!T '85F6'AK2-,DA>SLEC\C/D+O9EASP=BDD*3SD@#
MJ:THY8YE#12(ZD9!5@11%-%,"8I$D"G!*L#@^E &'/X(\,W,][--HMH[WK;K
MDLO$AR"21TR2!G'7OFK-SX9T:[F@FDL(DFMX_*BEA)B=(_[@9"#M_P!GI5#Q
M#KM_I7B;PW8P);M::G<O!,75BZ[8V<;3G Z=P:Z*.6.9-\3JZ_WE.10!Q_B3
M1;[6;"3PK:Z/'::06MFCO8YD"*J2J[KY?# X7 QD$GG%;>N^%-!\3"'^V=+M
M[TPG,;2KROJ 1SCVZ5JI-%*SK'(CLAPP5@2I]#Z4YF"C+$ 9QR: ,K4_"^AZ
MQI4.EZAI=K/90X\J$IA8\# VX^[QQQ2OX9T230ET1M+MCIBXVVVP!!@Y!QZY
MYSUS6DDL<N[RW5]IVG:<X/I0LT32M$LB&1>60,,CZB@!(((K6".""-8H8U"H
MB# 4#H *SK?PSH=K%?10Z5:)'?L6ND\H8F)Z[AW')X]S6EYT6\)YB;R2 NX9
MR!DBD$\)95$J%GSM&X9..N* *6FZ%INDMNLK41N$$8=G9V5!T0%B2%_V1Q4V
MI:99:QI\MAJ-K'<VDH >*095L'(_(@&K"2QR%@CJQ0[6"G.#Z&L4ZS)H>@&]
M\275EYPG,0-ID*Y9RL: ,<[L8!]\]J +">&M'BO;>\BL(X[BWB\F&1"5,:?W
M1@\#V[TV+POHD5C>V*Z; ;6]8O<PN-RRL>K,#U)]>O J>76K"+6K;2&G4WMQ
M"\ZQ@C(12 6/H,L /7GTJZTT2RK$TB"1AE4+#)^@H SM#\-Z-X:MGM]&TZ"R
MBD;<XB7EC[D\FEU+P[H^L7=M=:CIUO<SVV?)>1,E0>H]Q['BK=Y,8;=O+EA2
M9AB+SC\I;L/4_A6-X'UVY\2^"],UF\2)+B[C+NL0(4?,1QDD]O6@";_A#_#O
M]F3:;_8]H+.:;SY(A'@-)G.[ZYJQ)X>T>6^L[U]-MC<V2>7;2>6,Q+V ]AV]
M.U:#S11NB/(BLYPH9@"Q]O6B6:.!-\LB1KTW.P H S)/#&BRWTMX^GQ>=,RO
M-@D)*PZ,Z [6(P.2">*FDT/39=835WM5.H1IL2XW'<J_W1ST]NE7V=57<S +
MZD\4B21R,P1U8H<, <X/H: ,T>'=)6[O;I;0+<7RA;J0.P:8#@!CGG X'H.*
M@N/!_AZZT)-$GTFVDTV,[H[=E)6,^J_W>_3'4UKI/%*S+'*CLI((5@2"*IZ7
M)?II[/K$]DUPLDFY[7*QA QVYW'.0,9]\T 9MU;7?AG2+.R\)>'K2>(2[&@^
MT"W6)3DE\[3NYQGOSWK1T/2QI&D0VA*-+EI9W1=H>5V+NP'8%F)HU77-/T;2
MWU&[N$6W4JH(8'>S8"J/4DD8J])-%%'YDDJ)'_>9@!^= !-#%<0O#-&DD4BE
M71URK \$$'J*R-&\):!X>6X72-+M[+[0,2M""&8>F>H'/0=*V"Z@ E@ QP.>
MM0SW]I:V4UY/<Q);0*S2REQM0#KD^U &9_PB.@?V.^D?V9#_ &<[[VM<GRV;
M.<E<XZ\_7FG:QX2T'Q!;6]OJVEP7D=O_ *HS9+)]&SGL._.*T-.OH=4TVUO[
M?/DW,23)NZ@, 1GWP:G\Q.?G7CKS0!F2^&M&F%B&T^$"PQ]D5,J(,<?(!C''
MI3H_#VDQ75]<K8Q^=?KLNV;+>>N,8?)^88XYZ#BM'>N =PYZ<]:R3J,^E6NK
M7^NW=C'96TC21/%D&.$*"!)D_?SGIUR* +FF:58:+8I9:;:16MLGW8XQ@5Q^
MB^%7G\5^*;W5])ECMM1GC:%C.N)8UC5"KJC\C()PP(P:T=6\37EMK7A6*S2W
M-CK$S)*9%)D4>4SC&#@=!ZUU,<D<J[HW5USC*G(H S[K0-*O+NTNI[-'GLN+
M9\D>3V^7!XXXX[4^71-.FU>+5I+56OXEV1S[CN5>ZCGH?3O5R26.$ RR(@)P
M"S 9/I2AU.,,#GD8- $3V5M)?17SP(UU#&T<<I'S*K%2P!]RJ_E5>;1-.N-6
MAU66U5KZ!2L4Y8[D4]0.> >X[U>#!OND'Z&J.H7KQZ3>W%A)!)/!&S+O.Y0P
M&<-@YH 9:^'])LC>&"QC7[:2;H'+"8G@EP>"2..:SK3P?I?AZPU$^%]+L+#4
M+F%@DA0E=^#MW=3MSC@5/X1UN37?"FD:C=F%+N]M$G>./@9(YP"2<5N=* /)
MK#X>P3VT=N_@:WTJ_5 IU.+4!A' QYB",AB<\@$+]17>ZOX.\.Z_>07>K:/:
MWES  $EE3+8]#ZCV/%;*S1.^Q9$9]H;:&!./7Z4&:(.$,B!B=N-PSG&<?7'-
M #E4*H50 H& !T%8NCZ,VB7E]!;JK:;=SO=*N>89'Y=<=U)RP]"2.F*N:6^H
M"WE_M6:R>83R!#:@A1'GY =Q^]C&:O;EX^8<].>M '/P^!/"MO&D<>A60C2<
M7"H8\A7&<$ ]AN.!T&>E6U\,Z.KWSK9*&OQB[(=AYXZ?-SSQQ]..E9/B#6->
MT'P5K>K.VF37EF998517V>4.5#C.=^.N#BNBMKM6TRWN[AXX]\2.S$[5!('K
M0!1;PKHC6ME;'3T\BQ8/:IN;$##H4YX([8Z5'JW@WPYKNH0W^J:-:7=U" $E
ME3)P.@/]X>QS6T718R[,H0#)8GC'K1'(DJ!XW5T/(93D&@#-N_#NE7UU)<W%
MH#-)$(9&5V3S(QG", 0&7D\'(Y-)<^&](N[@SRV2B1H1;L8W9-\0SA&"D!EY
M/RGCFM))HI'=(Y$=D.&"L"5/OZ4\G R>E #8XTBC6.-%1$ 5548  Z "L"?P
M)X6NIKJ6;1+1VNV#S@K\KMG.XKTSQR<9/.>M;T4L<Z;XI$D3^\C BA9HG;:L
MB,V,X# G&<9H H+X?TE-2AU%+&-+N"/RHI%R#&G]T <!?;I3+'PUI&FR0O:6
M2Q^1DPKO9EB)X)12<*3DY( ZGUK2EFB@3?-*D:YQEV &?QIQ90 2P / YZT
M8J>#O#L>OMKJ:-:+J;'<;@1_-N_O>F[WZU<@T33K;59]4AM52^N %FF#'=(!
MT!YY [#M5R.6.52T<BNH)!*G(S0LT3N$65"Y7<%##./7Z4 9EGX8T73[A9K3
M3XHF1VD1%)V1N<Y9$SM4G)Y !Y-*?#6D&ZDN39+OEE$\B[VV22 @AV3.TL"!
M@D9&!Z5G:'KNHZAXL\3Z1<K;"/3&MQ;M&K L)(R_S9/..!QCI6QI+7XTB!M6
MEM'O0I\][3(BR"?N[N<?6@"M>>%M#U#51J=WIEO+>B/R_.9>2O;/8X[$].U1
MIX/\/Q1V4<6E6\:6)W6HC!40GNRX/!/<]36Q'+'+&)(Y%=#T93D'\:HZIJ#P
MZ%?7NG26\LL$+R)N.Y"5&<'!H @UWPKH7B981K.EV][Y)S&TJ\KZX(YQ[5IV
M]O#:6T5M;1)#!$H2..-0JJHX  '05E>%=9?6_"^D:A=-"MY>645S)''P 64$
MX!).,FJFDZ[?WGCG7]$N4MQ;6$-M+ T:D.?,WYW$G'\(Z 4 7[KPSHU[?2WD
M]A&T\RA)V!*B91T$B@X<#_:!J74-!TS59;:6^M$F>U8/ 6)'E,.C+@\'WZU>
M6:)Y6B61&D3[RA@2OU%8/CG6K[P[X-U+6-.2W>XM(O,"SJ2I'T!!_6@#H%4*
MH49P!CDYK"'@OPV+)[)='M5M7E\YHE7:I?.0<#T/(].U:RW4:VD4UQ)'&'52
M2S!1DCWJ<NHQEASTYH S6\/Z4^H_V@]FKWGD_9_.=F9C%W0Y/*^W3/-4K;P/
MX7M!;"#0[)/LTOG0_N\[&]1GZ].@K>#H<X9>.O-96K:S_8UQ:3W.PZ;<2K;M
M*.##(QPA;L5)(7M@D=03@ GM=#TNQU.ZU*UL((;V[YGF1,,_3J?P&?7 I;_1
M-.U.YMKF]M5FFM6WP.6(,3>JX/!]ZOUS?CSQ!>>%?"%[KEG%!,UH%9H9@<."
MP7@@\=<]#0!?'AK1UDOI%LE#WXQ=L';,XZ?-SSQQ]..E1OX3T*6RL[-].C:V
MLF#VT19ML+#H5&>".Q'2JFL^(;C1].TA9/(:_P!3NXK1"%(C1G!)8C.2 JGN
M,G'2M#1?[:$=RFM&RD99B+>:T#*)(L @LI)VMU'!(XH =?:#IFI/;27=MOFM
MLB"8.RRQY&#AP0W/?GGO3+KPUHU[IL.G7&G0O90MO2#&$#9SG [YYSZ\UHK/
M$\K1)*C2)]Y0P)7ZBJNL:O9Z#H]UJNH2^5:6L9DD;J<#L!W). !ZF@!EWH6F
MW]Q:3W5L)9K,YMY&=MT1Z9!SU]^M,7P[I*75[<I:!9[Y0MU('8-,!P QSS@<
M#T'%4-.N_$VJZ?'J/EZ?8+,@DBLIXWDD"GD!Y P"L1U 5L>]:6B7MY?:1'<Z
MC:+9W6^198 ^X(5=EX; R,#.<#.<T 4W\%^&Y+2SM7T>U:"R8M;1LN1%GJ%]
M >XZ'TI__"(^'A8WUD-'LQ;7\GFW48C $K9SD_CR/0UKQS12Q^9'*CI_>5@1
M^=+O3&=RX]<T 9O_  C>C_:K*Z%A$LUBI2U=<CR0>H7!XSW]>]-G\,:+<WTU
MY+I\333[?/P2%FV]/,4':^/]H&M-YHHV17E16<X0,P!8^WK0\L<6?,D1,#=\
MS <>OZT 4IM$TVXU6+5);56OH5*1S[B&13U YX![CO2Z;HNG:0;@V%JL!N)#
M+-M)_>.>K')Y8]SU-6WGBC#%Y44+C.Y@,9Z4\LJE06 +' R>IH ANK*VOHT2
MZ@298Y$F0.,[74AE8>X(!H6RMEOWOA @NI(UA:7'S%%)(7/H"Q/XT[[3!Y7F
M^?'Y><;]XQGIUI[R)$A>1U1%&2S' % &9>^&](U"]:\N;%&N'C\J216*F1/[
MKX(WK[-D4_5/#^DZU9PVFHV$,\$#J\*$8\M@, KC&...*OB6,QB02+L.,-G@
MYZ<TGGP[9&\U,19\P[A\G?GTH RH_">@1+>B+2;6,7J".YV)M,B!0H4D?PX
M&.E%SX4T*]TB#2KG3(9;&W(,$39_=$=-ASE<>Q%6](U:SUS38M0L)/,MI2WE
MO_> 8KD>QQD>U37][!INGW-]<MM@MXVED/\ LJ,F@"GIOAO1M'NYKK3]-M[>
MXG"B65$^=P!@9/7M^)YZUJ5SW@KQ./%GAN/47M_LUTDKP75L>L,J-@J?T/XU
MO/-%&Z(\B*SG"AF +'V]: 'T4V21(HR\CJB+R68X H\V/RQ)O78V,-G@YZ<T
M .HIJ21R%@CJQ4[6VG.#Z&D$T32-&)4,B#+*&&1]10 ^BFAU()# @=3FG @C
M(.10 44SSHO.\GS$\W&=FX;L>N*'FCBSYDB)@9^9@.* 'T444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %<YX^N
M]0L/ .N76E[Q>Q6CM&R?>7CEA[@9/X5T=! (((R#VH \QURUM+?2_ VK>'(X
MX[I[^UBBDA !F@D4F16(^\"H+'/IFF:+9:?;W7Q&=+6VCF2YD2,K&H90;920
M.X!Y.![UWUAX=T?2YA-8Z;;V[KNV>6F F[[VT=%SWQC-$OAS19[RZNY=*M'N
M;N,17$IB&Z5/[K'J1P/R% 'EMEIEE8>'OA;JMK;1Q:A-<VL,MR!^\='MWW*6
MZE>!QT&.*M0VUAXLA\66.M:M:V=W;ZG,LK2Q*)X(D;,+H['*J% P0,=?4UZ*
M?"^A&"U@.DVGDV;;[9/+&(6'0H/X3]*2]\*Z!J.K1:K>Z/93W\6-EQ)""XQT
MY[X[9Z4 <*GAO2-9^*-W::E:B]@E\/6TD@G4J97\UAO8<?-@#Z57U31K/3?$
MOB#PHEC#]F\56ZSV2^4-L<P_=S'_ ("")>W0XZUZ4NB:8FK-JJV, U!EV&Y"
M#S"OINZX]JLO:V\MU#<O"C3PAECD(RR!L;L'MG _*@#S[P&PU^VTV#4+*);C
MPU&]G.#&,"Z!,>5X[(N[C_GJ/2LW1=,-UX2\5Z=8W=O82GQ3.+8RINA+K+&R
MQLH_A8@*1Z'\*]3AM+>W,YAA2,SN9)=HQO8@ D^^ /RK.7PMH*VEQ:KI%F+>
MXE$TT8B&V20'.\CNV<'/7B@#S/4M>N;/P_X@CO-'31M1M[RQ_M@VI\R"2W=P
M#*F,'#(I!!YQ77Z)HVF0>+X]8L=8MY)KJQ\LVUC$B0RQJP(D8*3R,@!O0XKI
MX-'TZWMI[=+.(Q7'^O5UW^;QCYR<[N..>W%0:-X;T7P\DJ:/I=K8B8YD\B,*
M6/;)H Y?Q]:07WB7P5:W*;X)=1E5T)(##R'X..Q[COTKE=<M9/"5_P"-X_#$
M36VFKI5O<3PVV0D$[.0Y0#[I\D%N,=CZ5ZUJ6DZ?J\"P:C9PW,:,'02H#L8=
M&4]C[CFG6FFV5C;-;VUM%%"Y)=57[Y/4MZD^IH XW2-)T:7Q'HNO:=K5J6>W
M>&*&PA6-+F(KGYP"3A2 1TP>.])\4+2WN(?"YF7!/B"TCWJQ5@K%L@,.1VZ5
MT^D>%]"T":>;2=(L[*6?_6/!$%+#TX[>W2L;Q]HMYKUMHUO;:>+N*WU2"[N5
M9T"F),[EPQY)!Z=/>@#E[_2CX5\=:O\ \(G;"V67PW/<RVL"XC\]&(A?;TW$
MY'O@^]3:!INBZS8^%=<@UNW6:$H$%K"JS3LZXDBD.2S9Y+9YX+'UKT6PTVST
M\2-:VRQ/-@R-U=R!QN8Y)QTZ\53L?"GA_3=2FU*QT:RM[V8$23Q0A6.>O(Z9
M[XZT <-X(\*Z%?0>(KBZTV":6TU[4$MRXSY2YV[5'0#!Z?X"N<M-(L%^$W@?
M4UME74/[1LT^UJ2)@K3%2H<?,%P3P#BO8K3P_I%A#<PVFG6\$=TQ:=8T"B4G
MJ6QU)]:A/A70#80V!TBS^QP/YD4'E#9&WJJ] : .6T_2]/TOXP7EA86<%M9W
M7A])9X(8PJ2.)V7<5'!."1FN.%I:M\#K,/!$RPZYM3>H.Q3?$'&>@QQ7L/\
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
MP7QN!$RQ8 1'!4G*@#D9S0!!/;KH&N^$?#NH7-G;VITR0+)+"&AFO1Y88X)
MW$;R"?[Q]:S]?\.Z9I?A^SM;6^-Y&/%-LZ[ $6U,DBEXXBOW5YS@'@FN^L_!
MNE'PO!H>IV%K=VL;M(L$@,B1$L6"H6YPH;:#QP.W2KK^&-"?3K73VTFS-G:M
MN@@\H;(V]0.@/OUH X#4;?\ X1OQGXK3PY:QVDA\+"[2&W0*&G5Y0K[1U;@?
M6M;P_9^%-4TKPIJ]O*GVI(ML)AD&^=WCQ*L@ZOT+-GN"3781Z)ID6IG4X[&!
M;XIY9N G[PK_ '=W7'M5?3O"V@Z/?SW^FZ/96MY.#OEBA"LV>2,@< GTH \_
M2R3P[K6M>!+>U5+;7Y!<Z>R1\)&_RW*YZ#8 64?[0%>F2Q&PTB2+3K=%,$!%
MO"HPN0ORJ!Z=*Q=#M=:OM075_$5E9V=S!$\%M;V\QF"AF!=RQ Y.U !V //.
M!TM 'C,B07WP'@UVW/\ Q/H=MPMXH_TC[9YH5N>N2Q*X]#CTK9G\/:9K?Q:N
M[75]/AF2;P]#)/"?NM)YS L<=2,<'M7<Q^'-&BOVO8]-MEN&D\YG" 9D_OXZ
M;O\ :Z^]2C1-,75CJHL8!J!78;G8/,*^F[KCVH O*JH@11A5& !V%+110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 445A>-+NQLO!6LW&I?:/L2VKB86S8D*D8PI['GK0!K6][:7A<6UU#.8SAQ
M%(&VGWQTH^W6F^-/M4&Z5BL:^8,N1U ]2.]>:Z=Y*?%'289FTY8IO#SQ&WMR
M&4)YD>Q&8G]YP3@X&<\"N9@TO3[?X)V^IQ6D*WUOJP,-R%&^/%^5 5NJC!/
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
MLUQ9>([P6TFP9@ P,)_=')X']!5[XE00W4WA&"X4-#)K\*.I. P,<O!]CTH
M[6WNK>[0O;3Q3(&*EHW# $=1QWIB7EM/-+;P74#W$8^>-7#,GU .17ENJZ9)
MX>\5^*CX1MA:QGPT\LT-HNU$NMS>40HX#[0QP/KWJ_H5KX=U=_"VM66O!KBW
M7;:P6RQ*[!D^>.0 ;B  2<],9H Z#P?XDN-5M-0.KSV<=Q!JUQ81>6/+601M
MM& S$DGKU-=)<WMI9A#=74,&\X7S9 NX^@SUKQ34-,L9?AEX^U"2UB>\@UJ]
M:&X9<O$5F4C8W5>?3%=3K]U87FNZ]$A@6\AT)5O)KUMT:Q-O(6./(R2?O-D
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
MEO+^ST^$2WMW!;1$X#S2!!GTR:SM4\5:/I%WIMM=7L"RZB^V &0#*A2Q?/\
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
M&?PP,\,3DZM:198#)4B3*Y]#CD5H:R)]&UWXAKX?A6WG&AV\J1VRA<.!("P
M_B"_R%>E_P#"/Z*88H3I%AY43;HT^S)M0^H&.#4T6EZ=#>/>16%K'=.,-.D*
MAV^K8R: /,M8N]!ETGX:W5A-:"%-3MQ$P9053RFW#V^8+GWZ\UM>';.T?XE^
M/K;R(3#-%8>;&%&U]T4F[([YSS]:ZJ'PUH-O(9(=$TZ-S*)BR6J ^8,@-P.O
M)Y]S5J'3-/M[R2[@L;:*YE_UDR1*KO\ 5@,F@#SWP;%,DS>!KJ-FC\/WAE:1
MER)+?(>VR?7+ _\ ;$^M07)N+#Q3\39=&B"7PTJVEB$2_,9?+E.X =6S@^YK
MU!88DF>98T$L@ =PHRP&< GOC)_.H(M,T^"]DO(;&VCNI/OSI$H=OJP&30!Y
M3J5WH<_@GX<7-I-:E8]6L-K;AN4X_>9[YW?>]^M:4=W9VOB+XFI<3PQ>;%;L
MJNP&\&UP"!WR>/K7=)X:T&.9YH]$TY9'D$K.MJ@+.,X8G'7D\^]33Z-I=U>B
M]N--LY;M8S&)Y(%9PAZKN(SCD\>] 'F?A[5-.^P> +=)+=-2316>*ZN)?W,*
MA(Q(-H(WOQC&1@;CGL<<7,#? 74X([B*3R=6 PC#Y5-^I' Z \D5[&^AZ3)'
M;1OI=DT=J=UNK6Z$0GU08^7\*'T+2)('@DTJQ:*24S/&UNA5I#U8C'+'UZT
M<IJ\,*?&7PU*L:+-)IUX'8 !F \O&3WQS66UMIWBW6&C2*&'P;X><M*^!MOK
MA.2,_P 4:=2?XF]<5Z"='TQKF*Y.G6AGB 6.4P+N0#H <9 JM_PB_A[;M_L+
M3,>GV2/_  H \]6?1]6U+QIH?B;7#ITDUT=T4K0Q[[4QKY;(TB$\#/0\'GJ:
MO>'[N"V^)+:=?SS&.+0[9=):^($DD?/FDY &\D+NXS\OM7>7>BZ5J%W#=7NF
M6=S<0?ZJ6:!7>/O\I(R/PI=0T?3-6\K^TM.M+SRFW1_:(5DV'U&0<4 <?\)G
MM!X<U.&S>$Q1:Q>!4B((5?-.W&.V.E5FT/2-3^,>L6]]IUI<QOHT$CQ2Q!E9
MC*X+$'@MC SUKO[6QM+%'2TM8;=7<NPBC"!F)R2<=2?6HUTK3DOS?K86JWAZ
MW A42'_@6,T >56IT/7--\3Z+XFUZ6PNDU.<W-N6A1RHDS"\99"Q&P(%P3T
M':ND@5?^%R6\3EW_ .*7P?.P7/\ I ^][^M==/HNE7.HQ:C/IEG+?1?ZNY>!
M6D3Z,1D4]M*TY[[[<UA:F[QM\\PKYF/3=C- 'CXG&E^ O$3PAHM.@\7RB\%N
M@.RU%PN["X(QC'&",<$8KM]%L_#UYXO;6=/UV35+RXL/*E6.2%H3$&!5G$:#
MYLG )YQD=CCJ+;2=-LXYH[73[6".;_6K%"JB3_> '/XTRST32=.M9;6QTRRM
MK>4YDBA@5%<^X P: .6^$:Q?\*ZL7C5-QGN@64#)_P!)EQ3+4.OQRU#SL_-H
M,1@S_=$QW8_X%_2NQLM-L--1DL+*VM4;DK!$J _D*IZGH_VG4K+5K4JFH689
M%+?=EB?&Z-L<X)"D'L5!Y&00#@GN-+O_ !-XTT/Q+K1TYYW4*DK0HLMH85"[
M&D0]#O/!X)SUS4[65E9>.?ATMHTLJBQO8DGN0/.EC6)-F\X&>/;O7?7NBZ5J
M<T,^H:99W4T',3SP+(T9_P!DD<5)-IFGW%Y'=SV-M+<Q?ZN9XE9T^C$9% 'F
M6GO:1>'/B?!NA2X^V:@5CR ^S[.G..N*;#8V=BOPKNK:WAAN)=JO*B@,X:T.
M[)ZG)QUKTR31M+FDN))=-LW>Y $[- I,H'0,<?-CWIG]A:.1 #I5CBW_ -2/
MLZ?N^_R\<?A0!Y=9G0]?T37]'\3:_/8WT>ISM=VP:%)=PE+1-'N0N?E"!<$]
M,#L*U[#0=(U#XJ^(8+[3[>Y4Z;9R-'<1*V7R^68="W Y_P :[R71=*GU*/4I
MM,LY+^/[ER\"F1?HQ&13X]*TZ*^:^CL+5+Q\[KA85$ASZMC- &1X]AAG^'_B
M%9HT=1IUPP#@$ B-B#]0:XJ>QLKO4?A3]HMX9?,MI$;<H.]19Y"GU&>W2O4K
MFUM[VW:"Z@BGA;[T<J!E/U!XJI_86D9@/]E6.;<8A_T=/W0Z_+QQ^% 'DFNR
M2Z1I?Q,BTN,PV\=]:&6.W&-D3QQ^<0!TRN[/XUTFM7.C/\1?A]<V,UGY31WB
MQ/$R@>48/D QVSTKNX=)TVVEFE@T^TBDG&)72%5,@_VB!S^-06GAS0[!XWL]
M&T^W:-BZ-%;(A5CU(P."<#\J .,\)Z/8:D_Q T>6",65QJLD3QHH  :%,X'8
MYY^M.\"3W>J0V>D:E&?/\+L]M<,5PLDRY2)E]1Y66/NZFNZM=,T^QEDDL[&V
MMY)3F1H8E0O]2!S4\<,43RO'&B-*V^0JH!=L 9/J< #Z 4 >-ZG)<:9X<^*;
M:,ABDCODXMQ@JACC\PC'0[2YS^-;>N76A/XJ^'-UITUF+<2S+;O&R@"(V[
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
M&7_31C..1T/Y5[B %4*H  & !VK/;0-&>%X6TBP:)Y#*Z&V0JSGJQ&.3[]:
M.(OK1=,^*<L>BVT-O/)X7G*1PH%#R+,NPD#J<FLWPT/#?B'P_P"$YY/$-S_:
M-A-"T=G&T*SK<@8D1ALWE22Q;)Y&6)[UZ<ND::EVEVNGVBW**%280J'4 8 #
M8R!38=%TJVU&748-,LXKZ7_67*0*LC_5@,F@"]1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !574M0MM)TRZU&\D\NVM8FFE;T51DU:KGO'6CW&O^!M9TNT
M_P"/FXMF6(9QN8<@?B1C\: *N@7GB#Q)I$&M-<P:9#=H)K6T%OYI$9Y4R,2,
MDC!PNW&<9/6M/2;Z^CTJ>;Q";6VF@GD5Y$.R(H&^1@6/ *E>IZYK+\ Z_8:E
MX,TY1,D5S96R6]Y;R':]O(BA65E/(Y'?M67XQU53K/@Z_8DZ"-49;B5AB,N8
MRL+D_P!S>3ACQD ^AH [6VU33KRUDNK6_M9[>,D/+%,K(I'7)!P,5%%KVCS7
M4%M%JUC)<7$?FPQ)<(7D3KN49R1[BN&U6R5OB+XBD@1&T^3PY_Q,%P"AGW-Y
M9;MNV _ACVK -CIY^&_PT<VUONEU.P5VVC+AE8,">X(X(H ];M-9TN_BGEL]
M2L[F.W.V9X9U<1GT8@\?C3(==T>XNX;2'5;&2YFC$L4*7"%W0C.Y5!R1CN*X
M*\M;1/'_ (OM4@A$4GAV)Y(@@VLP,@!(]0,?I6"='T^X^$_@FYTN" :V;BQ-
MK/$!YC2Y'F98<D!0Q(/ "^U 'KL^LZ7:WBV=QJ5G%=,0%ADG57)/0!2<\]J6
MZUC3+)Y4N]1M+=HH_-D66=4*)D#<<G@9(&?>O'O&FJZ=<>%?&\=G-;V1CU15
MF@D??<7$Z-$#( 3\B848 !^[G(Z5U<<&F:A\;#,L=K<(_AU958!6#'[0PW>Y
MQQGTH [237-(BM[>XDU2Q2&Y&8)&N$"RC_9.<-U[58:]M$NX[1KJ%;F12R0F
M0!V4=2%ZD5Y=X=\/CQ%\([BPLV2.[M-1NIM.<8_<S1W#M'CT';Z,:ZCP5J4G
MBH?\)/<6KVY,"V<,4BX*,.9R,^LGR?\ ;(&@#IKC4K&SN(;>YO;:":8XBCEE
M56<_[()R?PIL6KZ;<2SQ0ZA:220 F9$F4F,#J6 /'XUSGQ&L9I?#2ZO9Q[[_
M $2=-2@ ZMY9RZ_1DW#'TKE?MVH6WBT:O8QR):^,[?R+;$>#!+& (I6^L1=_
MHN.U 'H$U\EWJ6D26.O626TK2%K<;)#>C:<!&SQM().,]#63I.KZQ>>*?&&E
MRW4!73OLWV-A!PGF1%SN&<MSCOV[5G^(+*ST_P"(/P]AMXHXA$UW#'@ $(ML
M0%SZ=*E\/.G_  L?X@?,OR_82>>G^CF@#6\ ZQ>:_P"!=)U74'5[NYA+R,JA
M03N(X ^E:EUKND6/G_:]5L;?[/M\[S;A$\K=G;NR>,X.,]<&N<^$Q!^%GA_!
M!_T<C_QYJS=-T[39_BAXX$]I;/BSLR0Z*<;DDW'\>,T =[+?6D%F+R6Z@CM2
M PF>0!,'H=W3FJ=SXCT:UT2?69-3M6TZ $O<1RJZ<=@0>3VQUS7E/AB^DM]-
M^%<UX_\ Q*3'<1-(Q^1;@H5AW>_W@ON36MK5I*FN?$:2Q'^@2:#_ *2J?=-W
MY;_^/;-N?JN>U 'HFB:S::]I%MJ-E+')'-&K$)('\MBH.TD=QD9%8NE:SJ,W
MQ!\0Z3=W$36-G;6TT"K'MV;]^<G))^Z/;V%7/!=W;7?@S1FMIXI@EE CF-@P
M5O+7(.._/2L321%+\6_%<3A'!T^R#(V#D?O,Y'X_K0!OZ3J$=MH<$VI:_8WQ
M>5T%ZA2*.0[R HP2,C[O7J/6K(\0:*RW;#5[ K9G%T1<IB#_ '^?E_&O'H8K
M1_@7H6Y(B$UI50D#Y0;YL@>G'Z5V+Z=IP^-MO$+2V"CP^SA!&N,B<!3CU )
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
MG;O<+C;*T2EQCI@XS5FBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "L/QFB2>!M?#J&']G7!P1G_
M )9M6Y69XBL;G5/#FI:=:>4)KNVD@5I6*JN]2N3@$\9Z4 >9S:;I]YX-^'+Z
M1';_ -J"ZLI(I( -^T*#.6(YP #NSWQGFM?PK965UXC\>&W@LY+V/4E> LBM
MY;B%=K#TPV>?7-==X8T4:+H=C;3VUHM[!;1V\LUN,^9L4+G)4'G&<&M2*UMX
M'+Q011L>"R( 30!X^LD.H_ '^SN?[;@(@^SDXN%OA-D<==Y;YL^A)KI/%7VO
MPQK^A>+(X'NI'B_LK48X1S+OYB(^DHQG_;KNQ96@NS=BUA^TD8,WEC?CTW=:
ME9%<8=0P!!P1GD'(/YT >=>/[*+2_ FE0W,D;3KJMH\DIXW2M.&D89Z9)8_2
MH/%[7=AJ/B+5]&U"SNDBMD&L:)?<+-$(\AHV'*DJQ [$@UZ5-;P7  FACD Z
M;U!Q^=1/I]E)+'+)9V[21D%':)25QTP<<4 </)<1S_&#1I@BP3S^'YF,<F X
M)DC(##U'/Y&N<LI8;SX$:KI>H<ZY ;B*X@8_OC>F5F3CJ69BA!'7/%>OFUMV
MF\XP1&7^^4&[\Z:;*T-V+LVL)N0,"8QC>!Z;NM 'GNFP*OQ=L(]1\B34(O"T
M9F9L$^:)L,WUZ\^AK&\/P0WO@NPM[/6DTJ_A\0WATV8*KQB0--B-E/!5D+C'
MN,5ZXUG;/(9&MX6D/5B@)/;K3&TZQ>)HFLK=HVZH8E(/X8H Y[P+J5[J.GZB
M-2L;:VO[:_D@N'M&)AN'55S(F>0#D CU![YK,T:\%I\4?%EMJ[I&US!;2V)F
M("R6RH0X7/8.6R/5LUW44,5O$L4,:1QJ,*B*  /8"H[FRM;P(+JVAG"'<OFQ
MAMI]1GI0!XU=Q-IWP(U%)Y!'9OJH;3U<XQ;?;$*8SVP"P]B*]K5@RAE((/0@
M]:CEMX)P!-#'(%Z!U!Q^=/CC2) D:*B#HJC % 'A]WKNE76B>'[BUN;6PM8O
M%$<K:?OS)!^_??).S$E222>P ;'-=-IR:;/XY^(LC);,/LEKDL!PIMVW?0'C
M->B_8K7Y_P#1H?G<._[L?,PZ$^I]Z#8VA9F-K!E_O'RQS]: /+K+3KC4/@OX
M8U?3 )=6T6WBO+3!R7V##Q?1DRN/7%=MX2F_M:TF\1M&\9U4K)"L@PR6ZC$0
M/URS_P#;0TNM:5K5U+#9Z3=6%CI4J.E[^X;S^>,Q$$ '&1DCCKSTK>ABCMX8
MX8D"1QJ$15& H P * .*\0:MI]I\0]/M)9+?3[TZ;*XU&Y?CRS(H,4:DA2Y(
M!R<X Z'->>Z=+ID_PW\!1W+P2)#XD\FX\S&$!DN/E?TR,'![$=J]VDMX99(Y
M)(8W>,Y1F4$J?8]JYGQ9X;N]8?1%T^*Q2"PU)+^59F*B3:&!4 *1SO)R?RH
MY;6=*ME\<^)KG3H8EL_^$9DCOQ&HV&<DF/('&_8#[XQZUG-INGWWPW^'YTF.
MW_M<7%B]O) !Y@8 &8DCG  8M].:]/U/2S)X;OM-TRWM8'N()(D7_5QJ64C/
MRJ?7TJOX3T'^PO#^GVEQ;V@OK:UCMI)X!GS0BA<DE0><=* ,'0)8&^*?CE'>
M,CR-/W*2.@CDSG\Q7$Z+J2:5\./A]J=P<Z+::E(;YE&Y8\M*L;MCLK$'ZX]J
M]J^Q6N]G^S0[GSN/EC+9ZYI1:6RPO"MO$(G^\@0;6^H[T >=^)M5\(#0==U>
MSM+?4HKN:T6\N8IV\AY X$99U.,)P6QVP#UJMINH6\WQ(\1*-5M[Z6ZT.+8\
M  21E,N0@!.0/JQ'3->FK9VR6OV5+>%;?&WR@@"8],=*5+>")@T<,:,J! 54
M A1T'T]J /&(M/T_4?@QX7M],CMFUTRVIM#"%\U)UD4R,2.1A0Y;/3'-=%>-
M<2_$'QK!IT@_M!O#\2VX5OF\S$NW'ODK^8KT.*RM(+B2XBM88YI/OR)& S?4
M]33EM;=9C,L$0E/5P@W?G0!Y=X9O/"WB.Q\+@ZO=3:KISQ^3IH*)+;2JH5PR
MJH8( #G)P0.YQ76?$MU3X:>(BS!0;&0#)[D<5TD=G:PW$EQ';0I/)]^14 9_
MJ>II\L,4Z;)8TD7KM=010!YY-K.F0>)] MVFMK&[?1-ZZE.^08BR Q1*3M+D
MJ&R<X Z'/'/Z%:G4_@79S::ZRZIH=Q)?6ZC[RRQ3N^PCL63(Q_M"O8/L=M^Z
M_P!'A_<DF/Y!\A/IZ4^.&*)"D<:(I))55 &3UH \H;4-3B\36OB33X94M_%\
M'V*%-F# ZKF"5_7Y?,;V&!VKU2SM8;&R@M+=-D,$:QQKZ*HP!^0IXBC 0"-0
M(_N#'W>,<>G!Q3Z /(]+GMYOA1XLTK6RG]K12WJWD4G^L>9V9HF ZG.4VD=<
M#%3V%DI\?>$;374@FU >&G2Y68!BTO[L'.>I^_\ K7ISV5I)=)=/:PM<(,+*
MT8+J/8]12M:V[3"9H(C*"#O*#=^= %+6X[>'PQJ$12-+=+.10N %50AP,= *
M\R%O%;_ ;2=1TZT1I(K6T>[>VC4RM"LJ/*N<'/1B0>.N17KTD:2H4D170]58
M9!I(H8H$V11)&N<[44 4 <!8OX7\0:M)J^F^(+G4+\Z9) ]S$ZG[/ W/SA%7
M#;N0#SD'C@USGAVXTC7M+\$:;)K>AH='E63B\0RW "%$01GD%L@L#T(QS7J5
M]I"R:+?6.ER)IDUS$ZK<6\0!C=AC?@8R17,P>$=2O;46&L67AM;8((VGM+5C
M*RCCY=W"'WRV.U &,VI66G>)/B5;7EU%#/<1PO#$[8>4&UQ\B]6Y!'&:I0WE
MK)X1^$Y2XB;;>6J'#CAA;NI'U!X^M>LR6=K+/YTEM"\NPIO9 6VGJ,^GM2/9
MVLBHKVT+!!A08P=H]!Z4 >,^.-6TZZ\-^/[:UE@L)H[H+-:EMUQ=R*(_WN&)
MVQX QM'\.<CI75G5;!?C%8737D(@N_#S1V\F\;9F-PN A_B)Z\5WC6=L[R.]
MM"S2KLD8H"77T/J*<8(F>-S$A:/.QBHRN?3TH \:U%;F3PG\3X=(7S)AJVYX
MH/O-%MB\P #U4./SKI_$,MKKFM^!;W0)HI9A>&4/"1Q9F,^;G'13\B\]R!UK
MO8K6W@8M#!%&3U*(!G\J;!8VEJTC6]K!"9#ES'&%WGWQUH \<EBT\_#?XGR!
M+8M_:MZ-P"YXVE1GZ]/>O7M*D$VCV4H<.'@1MP.<_*.<U(-/L@I46D&T]1Y8
MY_2IDC2) D:*B#HJC % 'E<#W5UIWQ2AT:7?J#74@A6)LOG[.@^7'?@@>XIV
MJS6FN>"?!+:$\?V]+VS-HL1&^'8,2@@<@*H8,/;FO3HK.V@??%;PQMTW(@!I
M(K*T@N))X;6&.:7_ %DB1@,_U(Y- '">$[/3+KXA>.-]O:S217MJZ!D5BA$*
MG(]"&!Y]15CXOK#_ ,*ZO))@NU+BU)9OX1Y\>3GMQ7:1VMO#(9(H(D<]65 "
M?QK \=:%?^)?#,FEV#6R22312%YW90 DBOV4YSMQ^- &%J.EV)^*7A:YT>&W
M00V=T;XVZJ%^S% (PV.,;S\OT/I7-:-I_P!J^!.J2Z);POJH^W*DD* R@&9P
MP4CD$QC  Z\5Z[:V5O;V[(EG;0>;S*D2C:Q/7L,_B*FAMX+<$0PQQ@]=B@9_
M*@#SC7)[/7M-\!W'A^2-KE=1MY(!"1NC@"'S@0.BA1AAZX'6I=5BO/#_ ,0+
MFWT])!!XK@"*\8_U%U'A7D]OW1+>YCKOX;*TMI9)8+6&*24YD=(PI<^Y'6I2
MBLRLR@E3E21T/3B@#@_$\-G8^._A]!$L42Q3W,4:\#""W( 'MT%8%IK%E'X;
M^(NFZU<00ZNUS>L\-PP5I8VCQ"5!^\NT*!CT'K7K$EK;S2"26")W'1F0$C\:
M9+8V<\PFFM8))0I3>\8+;3U&3V]J /+8;FSEA^$DJ30,VT)N# GBT((_[ZXQ
MZU+!#I[ZA\5&9+8D(%)(7A3:C(^F1^8KT][.VD*E[>%B@ 7* [1Z"F_8+/YO
M]$@^;[W[L<]^: /*EU.TTS3/AAK%QJ5M'Y-@R&*YF$:.K6Z!FWG@,IP #UW$
M<<UU?P_M;!(]:OK34=.O9-0U&2[<6,ZRK 'QA"P[_+D].2?J;&N^']5FU6UO
M=);2Y+:*%HGT^_A/E99@3(I7HW '(/'IDU<T'0#IUU/?W$&GPWD\:QLEA!Y<
M8522,GJQR3R<=L <Y ,/Q0T"?%/P(6:-9";\<D D>0,5S*PZ>WAOXL/LMBPN
M+H9PN0!;J0/^^L_C7K;VMO+())((GD'1F0$C\:8+"S (%I!ANH\L<_I0!YQJ
MMW";/X8,]Q'E[N!LEQS_ *,PS^9 _&M+1+Q;7XF>+K76'2-[B*VELS,0%DME
M0A@N>RL6R/5C7:FPLV"@VD!"C !C''Z47%C:7:QK<VL$PC.4$D8;:?;/2@#Q
M:*SCM?"/@V&^$?V1_%F;))O^?0F;8.?X3P1VP177ZS9:9;?%CPA!%;6D0^S7
MS^6B*OS'RR#@=\[CGUS7>RVMO.09H(I".F] <?G2-:6SR"1K>)I%QAB@)&.G
M- 'E$$6G_P#"/?%<A+;/VB[YPO\ S[J?_0LGZU;T_6].BU'PK!)<6]E>OX<C
M?^TKA\[HR4!BC4G:7++N).2 !P<\>E"PLP"!:0 -U'ECG]*46=J#$1;0YB),
M?R#Y">N/2@#Q/2;^T3X8^ I'N8UCL_$<8N'9@!#^\G^^>B\$=<=1ZUV<L\$W
MQFM9+26$R3>&Y3&V1\V9D*GW]?I7=&TMC"83;Q>43N*;!M)SG./KS2FUMS-Y
MQ@B,O]_8-WYT >/6\L-]\ [S3+G/]MP&2&6W8_OQ?><67CKO9B"#WS70:=!%
M_P +B5;[[/)>Q^&H3*Q )\SS6#'Z\_D:[_[%:?:_M?V6'[3C'G>6-^/3=UI6
ML[5I#(UM"7/5B@R>W6@#C?A*\9\!QI$RE([V[50IX4>>Y _(U2%U]F^*'BRW
MBN(X=0NM*M19([ &1P)?NCO@XSZ5Z##;PVX(AACC!ZA% S^5*88C,)C&AE V
MA]HW >F?2@#QV22'5/@':V%L<:W T4$<&<3I?+,,\=0^[<Q/H2>E>O2K(;!U
M<[I/*(.!U.*!96BW9NUM81<L,&81C>1Z;NM3T >'I?:?<_ OPS;?:8)#%>V,
M<\>X':?/Y5AV. <CTKI-961?B7K-OI!2.]D\(N(%B(!,HE8)T[C(Q7HIL;1E
MVFU@*[BV#&,9/4_4TJV=LDHD6WA60=&" $=NM 'E_AF\\+>(['PN#J]U-JNG
M/'Y.F@HDMM*JA7#*JA@@ .<\$#N<5Z!XDU2PTC0Y;K5$C>P+QPSB0 H$D=4)
M8'J!NR?:M".SM8;B2XBMH4GD^_(J ,WU/4U*RJXPR@C(.".] 'DS:'!X,\7Z
M%/X*U-C9:M>B*[T=)O-A,1!+3(,G:% SGW SC@V5&DW/QLU]=0NHT5=,M@O^
ME&+YLG(X89ZCCWKTBWT^RM)9);:SMX9)/OO'$JEOJ0.:#I]DS$M9VY)Y),2\
M_I0!YKXQT6TUGX=:OX>\*R?;9M/F%[L23S06:5I3%NR26P6..O*^M=MI'B_0
M]8T:/4H=1MHXRH,J22A6A;NC@\@@\8-;,4$,"E88DC4G)"* ,_A4)TVP-Y]L
M-E;&Z'_+;REW_P#?6,T 2VTXN;=)A'(BN,A9%VMCL2.V>N#SZX->7Z-<VK^"
M_&^EZ^T:WZ7=XUY'*0&<.,Q. >2"NT+C^Z *]5J"2RM)KF.YEM87GC^Y*T8+
M+]#U% 'E6GV17Q1\.K37DBDOQHMPLZ3@%BVR/ 8'J0,CGT->CZX]GIGA/47>
MS,EE;64A:U@&W=&J'*+CIP,#'2K[VMO)*)7@B:08PY0$C'O4U 'CNGZMITOB
M[X>S)J5B;<V-S"EO;L#';@Q1A(MQ)9GZ#DY) ^49K/NX[#_A3WCZ6-;?=_;%
MWAU SQ."G/\ *O:TLK2-45+6%50DH%C "YZX],TG]GV04K]D@VDY(\L8)_+W
MH XKQHQT.\TCQU9QM,+,"VU!81N::TE(Y'J5?:P'N:ZCP[8S66CQFZ4"]N&:
MYNL<XE<[F&>X7.T>RBJ-WI&L7VM"&6ZL(_#B&*5;:.%A.SH=VTMG:$W '@<@
M8[DUT= '!Z/>"T^*?BNVU=TC:Y@M9+%IB LENJ$.%SV#DDC_ &LUQT,3:5X+
M\-2W,@ATR/Q@LMH\AVK':%Y-A)/1>X/3!%>S7-E:W@075M#.$.Y1+&&VGU&>
ME22PQ31F.6-)$/574$?E0!P5M+87OQKN)@T$P_X1Z%HV.#@&9^1_P$C\#[UQ
MFD:FFE^!_!M_-<RP:-::M>I=3VX5OL^YYEB8@@@*"WIQD>U>V&SM6D,C6T)=
MLY8QC)[=:46=JL+PBVA$3C#H$&UOJ.] 'D7C"'P[)X"\:ZII.H-J+WD4!N;L
MR(\+RJP"A=H"[P,9QZC/->KZ=9V%M;A[&WMXTE526A0#> , DCKQ4BV-HMNE
MNMK ($^[&(QM7Z#H*F2-(D"1HJ(.BJ, 4 .HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ JIJNI
M6VC:3=ZG>/LMK6)II&'7:HR<>]6ZPO&FB2^)/!FK:1 X6>ZMV2,DX&_JH/MD
M"@"AX>?7/$FCV^M7>I2Z8MX@FM[.UCB81Q-RF]G1BS$8)QM SC'>M72I=1L[
M&\?7[FWS!,Y6Y51%&80 0Q!)QQG.3U![8K"\$>(K&Z\(VFG:F\5EJ5A;+:WU
ME=,$="B[22IZJP&0>F#7GUNEW_PKK4]1A6>ZM(?%'GS'+2&6PCE4X7.=R# /
M'& : /9+37M*OGG2VOH9)($\R5 V&5.S$'G:?7H:;!XAT:ZTN;4[?4[66PAS
MYERDH,:8ZY;IQWKE=1:'6?B7X2U#1;F*X6WM[I[R:W<,OV=D 0,1ZOR![$]C
M5.RL;G3O&>J^$$@<Z5J4ZZO&X'RQQ$_OX_H9%48_NR&@#M[[Q!I.FPI+>7\$
M,;IY@+-_!_>/HON>*CN_$^@V!076L6,1DB,Z!IU^:,#.\<_=QWZ5PNH:OIND
M_$+Q#9^)]1GTZUU&&!K*9FVQ31+'M>/=@\ABQQ_M'UJ%K?1+#QG\.K"U016D
M5MJ @BNVRX4JGEY#<C/) //;M0!W)\:^&! \_P#;^G&-(EE9A<*<*WW2>>_8
M=:M-XBT5+>RN&U6S$5\RK:L9EQ.6Z!.?FZ]JY"R;3(/C1J4:FTC\G0X$51M&
MS$CY ],+C/MBN+L+K3V^&/@:*2>V9%\3H"C.I 47$W4>FTC\#0!ZROC/PR]K
M=7*Z[8&&U8),XG7"$]!^.#CUP:T%UC37TN/4TOK=K&10R7 D!1@>!@]\GCZU
MQEI-IX^-NJL9;;S!HD&3N7((D?/_ ([C/MBN*TG4XM.\#^$]3>>4:-8:Q>"]
MDM3N-N'>98W(&<*-WIT;CJ* /73XJT :;-J+:Q9I:0.8Y97E"A''\+9Y#>W6
MI+;Q)HMYJ%S86VJVDMW;(7FA24%D4<$D>QZ^G>O,?%Q\,S> /&>K:-=O=F^A
M@6XO'E+1S2*0%5<\%@,9QZCO6_J%SI\?Q1\%+;36RJVGWB*(V4 J5CV 8[<'
M'XT =+X:\6Z;XIBNI-/E#"&=X@I.&(4[=V.H!.<5KWMY!I]C<7MR^R"WC:61
MO15&2?R%<5\+[RW.G:OIXF4WD&KWK2PY^:,&8XW#MG/&>O..AK1\47D6I:KI
M_A>"_MX;JX;[5.KX8B*(@A=N1G<Y08[J&H C\ ^*+[Q#;:G:ZQ;BUU?3[QHY
M[?C*QO\ /$?^^3C/?:3707VM:;ICE;V\BA81F5@QY5!P7;T7_:/%>>:Q._@G
MXH:1K6HZG;O;:W&=/O,((@K+S%(1N.><J6["EUG6].T'XA:XTNJZ:G]I:9 K
M1ZC.854CS NQMI#*026'&"1UR< 'H*:YI,MBU]%J=I+:*^PS13*Z[N/ER#UY
M''7D57/BK0!ILFHMK%DEI'(8I)7E"A''\!SR&]NM>=7C67ACPWX%N(]5:]\/
MZ?(\-WJ-DP=4=HRBR?+G"ABR^P..M0>,/^$:?X>>,-4T:Z>Z%_\ 9A/>/*6C
MFE5P $SP6"XSCU'<' !ZE9^(-'U'4KC3K/4[6XO;<9F@CE#,@SCD>QX/H:#X
M@TA=02Q.HVXN7D,2H7'S2#J@/3=_L]?:N-U>>T7XI^'(["XMHY'TB[CBV,H'
M.PH..W!('L:SO!6M^';_ ,)Z+X?U6%9-?TZX4-ITJGSTND8_O<>G)8MTP3F@
M#T6QUS2M2:Y6QU"WN3:DK.(G#&(CJ&QT/M5BROK74K2.[LKB.XMY!E)8VW*P
M]CWK@?$$&H^'O&KOI,3^1XJC%J[1C_CWNU'$WT\K>3ZF.NR6^TG1;C2M $R0
M33QM'96^#EUB49 [<+CK0!J4'D=<44$X&30!PWAS7[U_%'BV#5]74:=HTT21
M-*L<:A73<2[8'3@=JZ&V\5^'[R^MK*WUBRENKJ/S8(DF!:1<9! ^G/TYK@=#
MU&P;Q#\4,WEN5+(>9%P0(""?SXK.BN-/@^'_ ,+62:VC9=3LRQ#*"#Y;A\_B
M>??K0![+))'#$\LKJD:*69V. H'4D]A5"PU[2M3N&M[*^AFF6,2^6K?,4/1P
M#U4^HXJCXWN[>Q\#ZS<W=@VH6Z6C^9:JQ'FJ1@@D<@<\D=!FN @U6*?XA:;-
M8:Q;7D]QX>N(;5[=0(1+O0K''U)QC)!)(P2<4 ='\0?%JZ;H;'2-9CAOX[R&
M%E0*^_,JJZ9((W!220.1BNJU35[#3U,5UJ$=K*\;,I."RJ.KXYX'J>!WKQRZ
MU[2)?@;9:?)<Q1ZI97%LEU:RMB>.5;A/,9E/(S\QS_M5UVDZ]9:9\3/%$>MW
MD%O]MBM9=.FG<*D]NL9!5&/!PQ8D#J2: '^&?$%QJGPZT.^U3Q-'8WUU=D?:
M&6,&YVW#+Y:J1CY@ .!D5T?_  F&E'Q=)X<^T(+J* 2R%C@!BV @]3U)]./P
M\JL[VQ7X*^%T^T0J8M=B!4L 4Q=L3QV^4Y^E=PM]:V?QKN5N)TC-WHD"VX8_
MZTB:3(7UQG)QT'/2@#HM#OK>2TU*Z_X2"'4[9+N5C,"@2V7 /E;EX(4=SSSS
M5JSU[2K^:2&VOX))8D\UTW88)V?!_A_VNE>132R7'@3QFVFXN8X/%4MQ=0P'
M<SVXEC9\ =00,^X!KK]8FMM<\=>#M0T6ZAN/(%Q-<SP.&"VK1X^<CL6VX![Y
M]#0!T?\ PF?AG= /[>T\FXE,,6+A2'<'&!SZ\?6MRO"KJ?3_ /A2?C%XY;;<
MVKW!!5ER3]I!3].1[5[!%XDT:;75T2/4(7U%K<7*PKD[HS_$#T/TSF@"EXX\
M3+X3\(ZAJH,1N8H6^SQR'AY.P]_6H--NC93OJ5SXI6]TJX18XHI8TW"<==C(
M!D$#[F">.*H_%V:*'X6:Z))$0O %4,V-QWKP/4U6UC44M?B/X7U2XGC.B364
M]M#<[@8H[AMI!+= 65=H]>10!UA\1Z(NDOJC:K9K8(Q5[AIE"*PZJ2>C>W6I
M=/UO2]6GN8=/O[>ZEM6"SI%(&,9/(!QTZ'\C7E/B6)$T_P"*.HPRQC2;NWA2
M)@P\N6Y6/$A3L3RH..I![BO4M CLAHME-9)!Y<EM$-\(&& 4 <CKB@"BOB[3
M+KQ5=^&X;H)>00JS/Z.Q("KD8) &3V[>M8G@;QI;S^'=/CU_6[9M6N[JXBC$
MK)&\NV=T4!1@=% 'KBDMKZUL/C)K,=W/'"]SI=KY"N<&3:TF[;ZX[^@Y-<.M
MSIZ? =Y$FMA+_;._<&7.[[=D'Z[/T]J /9=2UW2]'&=0OH;?Y=YWM]U>FX^B
M^YXJ]'(DT22Q.KQNH974Y# ]"#W%>77FLZ3IWCOQ)9>)M3FL+74HX9+*8OMA
MN(/*",@;!&0V[C_:-=]X:L[/3_#=C:Z?#/#911X@2<DN$S\N<\CC'!Y'2@!P
M\1:.;];(:C;_ &AY3"J;_O2#J@/0L/[O6I+76]+OKRYL[6_MYKFU_P"/B*-P
M6B_WAV_&O&[G7]+N]%\/W$%Q!I\%OXGBDDTQ.3:#SWW/.S9(8DD_PCYL '&:
M['Q']MT#QQ9ZQI,+.OB"W_LV4!>$N%!:"5AZ ;P?0"@#LO[=THV*WHOX#;._
MEI('R'?.-J^IR#P.>*AEUK3;S0KN\MM9MH+=%>-KS>N+=\8RV[@%3C@UR>MH
MOASQQX-DG8QZ'!;SV:S2'Y8IV50A<]BP!4$]R?6J-Q&@U;XC:I!+&-(GTU(V
MD##RY+A8F#$'H2 5!]SCJ* .[L]1M+/P[875WJT=S$\,86]?"_:2P&& '&6Z
M@#UXKG?#'B5[[Q3XO6XU:.XTO3C;F!W"(L"M&S2 D =""#NY&.:Y:SU:'38_
MA?J-].BZ(FFF%[@G]U#<M BJ7/0'&Y03TR?>H;_7-&BU#XG71@@U2T>*Q<P1
MR?+,OEA2V5Y*@D$D=A0!ZG;>(=(O#.(=1MR8$$LH9]I1#T8@X^4^O2H(?%_A
MRXN;2WAUNPDFO,_9T6=29>2/E]>0<>N.*X?2]8L'^+<=S)K5M>QS^'BJSQA5
MA8B?)6/'4 9/)8CG)XXYRQN-/A^"/A%UEMHW76+=R0R@AA<G)^H7]* /9=1U
MS2]).+^^AMR%WD.WW4Z;CZ+[GBG7FL:=86\<]S>1)%*NZ-MV=XQG*@=1CG(K
M@(?$&D:/XW\7:;XJGB@BU/RI+62X_P!7<VWE!"BGO@[N.Y8XJ"\U/3O#?C33
MFU&2ZT70KG1H[?3Y.42%D=B8WR#M)4H>?[H!Z4 >FV=Y;:A9Q7=G<17%M*NZ
M.6)PRL/4$55O]?TG2Y#'?:A;P,H#/O?&Q3P"W]T'U.!5#P99:38Z $T-)AIL
MDSRPO*Q/F;CDLN>0I.<=CU'!%<QX=OK.QU+QSIGB66*&:74);DBX8#SK-XU5
M-N?O *I7CH>* -SQKXKB\/V>G1Q7<44^H7L%N)"0?+B=P'D /!PN<9XR1UZ5
MIZ!;7D*7,D^M'5+.>026;O&H>-".5++@.,]#@''K7F+K/HWPT^'=IK4PANX]
M:LG9)VVLD?F,5!!Z;4*@^F*]<OS/)I-T;!@;AH'\A@>-^T[3^>* ..^('BU=
M-T8'2-9CAODO88&1 K[\R*KID@C< 22!R,5UFH:WIFE'%]>PP-L,FUFY"#JQ
M'91ZGBO&[K7M'E^"&G:>]U#'J=E<VJ75K*V)HI5N%\QF4\C)W'/^U[UV6BZG
M#8?$CQ4FKW$,27T5M<6$TS@)-;K&0P4G@A6))'^T30!V4FM:7$]FKZA;*;T@
M6N9!B<GD;#_%GVK,\0:W%_8&OKI.J1)J>FVDDKB/:[PL$9EW*<\';W'->:P6
M[Z)X.\*75ZQM],A\5&>%I?E6"U8RB,MG[JG(//9A6I)J-IJ7B;XBBRG2<W.A
MP^1Y?/G8BF!*?WAR.1D<T ==X5\7Z7J6FZ/8SZS:2ZW-80330>:OF,QC5F.T
M=^2<5;T?Q?I>N:UJ6F6<ZM+8R"(\\R-MRQ4=P,@9^M<$UOI^L>"O %IHYMI=
M5@GLI4-N5+P! #.S8^Z!@AL]6('6MKPWJ^GZ3XO\=I?W4<#I=K=LC?>$(MT)
MDQUV\'G\.I% 'H585WXT\,6*NUUK^G1!)?)8M<+P^,[>O4 \^G>M'2M5L=;T
MRWU+3;A;BSN%W12KG##.._(Y!&#7GFCMH*^(?B-%JQLPC7*^<LNW)B,"YZ\D
M9S^- 'H7]L:;]NM[+[=;_:KE#)!%Y@W2J!DE1W&.>*K/XGT**SNKN35[)+>U
MD\J>1IE C?&=K9/#>W6O,-)27PS%\+9?$$HLTM[>]BEEN6V+$7C!C1B>%.T8
MP?3%5=5U*QG\)?%,+<1YDN]\:N=I8&*,*0#ZD<>M 'K$?BC0IS<"'5;65K:4
M0RK'(&97()"X')/!X'H?0T\>)-%,=O)_:EKLN)_L\+&0 /+G&P?[6>,=<URV
MOV6F7.E>'WT_5X=&OFD5].OHD1HVD6%E".#PRE"PQ^7H><U35;RZ\'V%]K%O
M:V[Z9XKM_MEU:D_9Y521=TZD]%R<'W!H ]5BU2PGU">PBO(6O(%#RP!QO13T
M)'4#WJO:>(M&OKE;:UU*WEE9#(BJ_P!]!P64_P 0'<C(K@I->TN;XD^(+N%T
MO[?_ (1I66.%L_:0CREE0]&R.,C/?TK(TW6M-G\1_#BZBU&U-L(+F);:V&8K
M3-N L.XY8OT!#')('RC- 'I3^-/#$80OK^G!7F,"G[0N"XQD9SVR/SIMUXOT
MNT\70>'))U6[DMVG8DX"_,JJON6W$X]O<5YA/-IS?"[XE,LEJ6?5[WD,N6^=
M2GUYSC]*ZAM2M+?XIZ!=7%U&L-UX?DB@D+9$TAEC.U3_ !-CL.: .N\4^([+
MPGX=N]8OB?+@0E4'61^RCZG\NM6#KFF+8Q7C7L/D2MLC8-G>W/RJ!R3P>!Z5
MSOQ71I/A;X@5%+'[-G &> P)_05F7FM6P^)'AS6'NHY-!N=/GM;:[#9A6Y+*
MWWN@+*NT'N010!WEAJ-EJEJ+FPNHKF DKOB8, 1P0?0CN*R=0\7Z7IWBBRT"
M:=5NKB)Y26. BC  )]23P/\ ZU8_@^V;_A-_&6H6C Z3=3V_DLARCS+%B9E[
M'DJ"1W!]*B\07EOIWQ9\-W%Y,L,4FGW<*,YP'D+1D(/5CV Y- #= \8PV%YX
MBB\2Z] B6^KM:VK7)2+Y!'&0. ,X+<GWYKLK[5;'38EDO+J.)7SMR<EL<G '
M)P.>*\I^T:=)X9^++^=;,[3W0#;ER?\ 1U"_^/9Q[U,NNVFDZ_X=OM8U&:TT
MB]\/0P6]]&_[M9U.YU9L'&1M_P"^?:@#U6RO;74;.*\LKB*XMI1NCEB<,K#V
M(KCM6\3+?^-F\+6VM#3@M@9?M$.PN;AI-BI\P(XP21WR*U_!EGI%GH;#0EF_
MLZ6=YHY)&)$I8Y9US_"3G'8]1P16)'>VO_"]+B+[3#YG_"/QQ[=XSN^T,=OU
MP0<>] '066N6=DMGI>J:W:3ZJ=L#N (Q+-CD 9P&/7;G/M3?$VO6FF:7?1_V
MI%9WJ6S2(W#&/@[68$$ $C&6X->;>'[OP_J?AJ+PSXDN[[^WK2Z*RZ7YC+))
M<"0LKI@9().[=G R23CFM/3M:L["?X@:5KUS%;ZG/=SS1)<,%-Q;-$%B"9^^
M !C SU]Z .N\+Z^)/ 6A:IK%ZOVBZLXG>1\ R2%,G"CJ>IP!6C_PD^A?V?!?
M_P!KV7V6X?RX9?.7$CYQM'/)SQCK7E&DZU:Z5I_@'4M1O9K?13HS637<)^6W
MN3Y9PYP<9"$?_6S5KQ1%X:M_ <\^ER[[&^UZWN'GGDREPYE0R.F>JX!R1QP:
M /2HO%>@7%M]HM]6M)HS,T ,4@<M(HRR@#)) YX[<UA>._$,T/P[N-=\.ZJ@
MVO%Y<\(217#2JC#D'U/N"*@\3:GI.F>+M B866GR7$=Q)'JLN J9"!E3D*9'
M&WEL\+T.<5PDM_:#X'^([<W0,D6LN&$GRL";Q6&1@8. 3C QZ"@#W9@64@,5
M)&-PZC\ZX#PK>^(?$%WXDCDU]XAINJ2V4&+2(@JH!!?CD\]L5WJRQM$)5D4Q
MD;@X/&/7/I7F?P^\0:+97_C5KK5[" -K]Q(OFW"+E=JC<,GD<'GVH W_  MX
MIO[OQ%JGA?78H$U?3U699K<$1W4#='"DDJ1D C)Y-;MMXAT>[OA8V^I6TER5
M+K&KC+J.I7^\!W(SBO-9=.U3Q/K?C'Q7IEO/##)HKZ7I;.A1[EL;BZ@\@;AA
M3WS5_P -ZEX2\3R^'I8+R\N=7L,&*R+E7LVV[9-Z@#"@#'/!X SD4 7(?$%S
MXMUK6[#1_$::=-8SQQV6R-)5FP@=V=2,L#DKP1C&>M==;^(]&NKLVD.IVKW
MC,@02 ;D'5E_O =R,XKSRVE?4H?BE::/<)+?RRL(%B<%F/V95^7'?((^M6O#
MVI^$?$\^@7,%[=W.JV +1VC2%6LCMVR;Q@!5 &.>#P!UH ['_A,_#)>W4:]I
MY-S(8H<7"GS&!Q@<\\\?6KNI:K8Z<H2ZO4MY)%8IGEL#JP'/ R,G&!WKQFXG
MT\? [Q.\<ML';5YF!5ER3]K!4_ER/:NPM-=L]*^+&NG6KR&W@OK&U;2KB>0+
M&\2!O,57/&=[9QGGK0!L?#C5[S7/""7U_>"\F-U<()PJ@.JRLJXV@#& .E9W
MCJ^\2^'?"NM^((-8"-;MNMK46T;(J;U4;B1DDY)[=<4[X1SV\O@MX[=T/E:A
M=@HO&P&9R!CMP12_&2>*+X5:XLDJ(TD:*@9@"Q\Q.!ZT ;-J=1TN5=0U77HY
M=*^REIC<QQP^5)E2K;ACC&X<^U6(?%WAVX$IBUJQ?R84N),3+\D;XVL?8Y&/
MJ/45#J]U:R> +^X$\+6[:;)B3>"I_=D=>E<0E[HVF_!GPS>R6-G<(T=A"T[_
M .KMWW*?,D*X.U'RQ&1D\'K0!Z58:OI^J&<65U',\#!9D!PT9(R RGD9'/-<
MCXB\6+_PD/A>WT?68VCO-1$%Q#&%831[')(8C) 90,J<<UQNH7<]UJ/Q$@TC
M46O[^\TBU:WDB4 S*JR!S'M'( . 1GD@9)K3U;Q+X=U./X>SZ=?6GEQ:E$#&
MKC=;KY+KM8?P\X&#CI[4 >D7GB'1].N5M[S4;>"4LJ8=P,,WW03T!/8'K6E7
MCMM?:!*OB/POXOO;N"\DU*=VLBS#[9&\FZ)HP!ELC:  <_**]<M$\JS@CVNN
MV-5VNVYA@=">Y]Z )J*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@"&:TMKDJ9[>*4K]TR(&Q],U*  , 8
M'I2T4 1Q010*5AB2-2<D(H&3Z\4_:-V[ SC&:6B@!DD,4VWS8T?:=R[E!P?4
M4I1"<E5)]2*=10 WRT)R47)[XI/*C_YYK^5/HH ;Y:9SL7/TH\M-A38NUN",
M<&G44 ,6&)(UC2-%C7HH4 #\*7RTR#L7(Z<4ZB@! JJ20H!8Y) ZTFQ2V[:-
MWKCFG44 -9$8_,H/U%<G<Z!XABUR^NK*]TJZM+QU?RM1M69[?:H7:C*P!7@G
M! Y)YY-==10!F:1H\6EV4T)$+O<2&:?RXA'&SD '"<X& !C)Z<DDDUH+#$D:
MQK&BHO10H 'X4^B@!OEID'8N1TXI!#$)C*(T$K#!<*,D>F:?10!S^FZ1K!UF
M2_UO4;:Z2!Y/L,-O 8Q&K'[SDD[F"_*,8P"W7/&\41G5RJEESM)'(SZ4ZB@
MHHHH 9Y4?_/-?RH\J/&-B_E3Z*  @$8(XIBQ1IMVQJNT87 Q@>U/HH B^SP>
M8TGDQ[VP6;:,G'3)]J<\,4C(SQHS(<J64$J?4>E/HH 8(HPBH(U"KP!C@4NQ
M=P;:,@8!QT%.HH :J*OW5 ^@IL<$,(811)&&.6"J!D^IJ2B@!GE1XQL7'TJJ
MVF0R:K%J#X,D*%(E"@!<]3ZD]1[ GUJ[10 C*K?>4'ZBFO#%)$8GC1HSU4J"
M#^%/HH :(XP@0(H1> H' I0 HP  /04M% #2BEMQ4$XQDCM2>5'C&Q<?2GT4
M 1O!%+L\R)'V'*[E!VGU'I4E%% #/)BY_=I\S;C\HY/K]:<5!() .#D9[4M%
M #9(TE0I(BNC#!5AD&A8HUC$:HH0# 4#@?A3J* &/#%)$8GC1HSU1E!!_"A8
MHU#!8U ;J .O&/Y4^B@!@BC4 "-  -HPHX'I]*/*CQC8N/I3Z* &/#%(R%XD
M8H<H64':?;THEABG39-&DB==KJ"/UI]% !TJ-X(971Y(D=D.49E!*GV]*DHH
M :R*WWE!^HIP  P!@444 1?9X/,:3R8][$%FVC)QTR?:EE@AGV^;$DFTY7>H
M.#ZBI** &R1I+&8Y$5T;JK#(/X4*B(2515)QD@8S3J* (XX(HG=XXD1G.6*J
M 6/OZT2Q!XY H4.Z[=Q7/YCO]*DHH JZ=80:99):VX.Q2S$G&69F+,QQQDL2
M>..:P?#_ (;NM.U[7-0OELY4U&Z6YB"99H2$5,<CGA<Y&*ZBB@!DD4<R[98U
M=00<,,C-+Y4>"-B\G)XZGUIU% #'ABDC\MXD9#QM901^5'DQ&'R3&GE8V[-H
MVX],4^B@!JQQH<HBJ<!>!C@=!2+#$H 6- %)( 4<$]:?10 SRH\8V+^5+L3*
MG:OR_=XZ4ZB@ (!!!&0>U,>&*2+RGC1HR,;&4$8^E/HH 155%"JH50,  8 H
M*JQ!*@E3D$CI2T4 ,\J/^XOY4DD$,L?ER1(\?]UE!'Y5)10  8&!TIOEINW;
M%SZXIU% #/)B\[SO+3S<;=^T;L>F:1X(9'5WB1G4$!F4$@'K4E% #'ABDB,3
MQHT9&-C*",?2E\M-H78NU1@#' IU% #6C1MNY%.TY7(Z'VH\N/!&Q<$Y/'?U
MIU% "8&,8&/2D$48.0B@_2G44 %,2&*-W=(T5WY=@H!;Z^M/HH :(T4Y5%!]
MA35@B1W=(D5I/OD* 6^OK4E% #/*CQC8N/I2/!%)LWQ(VPY7<H.T^H]*DHH
M145%"HH51V P*&56^\H/U%+10 W8NW;M&WTQQ08XRA0HI0]5(X-.HH :$56W
M!0#C&0.WI3%MX$8LD,:L6W9"@<^OUJ6B@!C0Q-*LK1H9$X5RHR/H:?110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%(S*HRQ 'J:3:BKO8!:*C\^+_GJG_?0H\^+_GJG_?0K'ZU0_G7WH?*^Q)14
M?GQ?\]4_[Z%'GQ?\]4_[Z%'UJA_.OO0<K[$E%1^?%_SU3_OH4>?%_P ]4_[Z
M%'UJA_.OO0<K[$E%1^?%_P ]4_[Z%'GQ?\]4_P"^A1]:H?SK[T'*^Q)14?GQ
M?\]4_P"^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\]4_[Z%'U
MJA_.OO0<K[$E%1^?%_SU3_OH4>?%_P ]4_[Z%'UJA_.OO0<K[$E%1^?%_P ]
M4_[Z%'GQ?\]4_P"^A1]:H?SK[T'*^Q)14?GQ?\]4_P"^A1Y\7_/5/^^A1]:H
M?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\]4_[Z%'UJA_.OO0<K[$E%1^?%_SU3_OH
M4>?%_P ]4_[Z%'UJA_.OO0<K[$E%1^?%_P ]4_[Z%'GQ?\]4_P"^A1]:H?SK
M[T'*^Q)14?GQ?\]4_P"^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'
MGQ?\]4_[Z%'UJA_.OO0<K[$E%1^?%_SU3_OH4>?%_P ]4_[Z%'UJA_.OO0<K
M[$E%1^?%_P ]4_[Z%'GQ?\]4_P"^A1]:H?SK[T'*^Q)14?GQ?\]4_P"^A1Y\
M7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\]4_[Z%'UJA_.OO0<K[$E
M%1^?%_SU3_OH4>?%_P ]4_[Z%'UJA_.OO0<K[$E%1^?%_P ]4_[Z%'GQ?\]4
M_P"^A1]:H?SK[T'*^Q)14?GQ?\]4_P"^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14
M?GQ?\]4_[Z%'GQ?\]4_[Z%'UJA_.OO0<K[$E%1^?%_SU3_OH4>?%_P ]4_[Z
M%'UJA_.OO0<K[$E%1^?%_P ]4_[Z%'GQ?\]4_P"^A1]:H?SK[T'*^Q)14?GQ
M?\]4_P"^A1Y\7_/5/^^A1]:H?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\]4_[Z%'U
MJA_.OO0<K[$E%1^?%_SU3_OH4>?%_P ]4_[Z%'UJA_.OO0<K[$E%1^?%_P ]
M4_[Z%'GQ?\]4_P"^A1]:H?SK[T'*^Q)14?GQ?\]4_P"^A1Y\7_/5/^^A1]:H
M?SK[T'*^Q)14?GQ?\]4_[Z%'GQ?\]4_[Z%'UJA_.OO0<K[$E%1^?%_SU3_OH
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
M'>C^R,!_SYC]R#VDNYH?88/0_G1]A@]#^=5=*\1:/KDL\6F:C!=/!@R+&V<
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
MW<>])%XNU74!:V&G:=:?VP?M/VJ.>=A%%Y#B-L,%R=S,NW@<')Z8H_LC ?\
M/F/W(/:2[G5?88/0_G1]A@]#^=0Z)JD>MZ'9:G%&T:W,2R>6QR4)'*GW!R/P
MJ_1_9& _Y\Q^Y![27<K?88/0_G1]A@]#^=6:*/[(P'_/F/W(/:2[E;[#!Z'\
MZ/L,'H?SI]U=V]E");F58HS(D89C@;G8*H_%B!^-4;GQ'HUI;W5Q/J,"16DW
MD3L6_P!7)M#;3[X(-']D8#_GS'[D'M)=RW]A@]#^='V&#T/YU!+KFEP/<K+?
M0JUK"D\P+?<C;.UC['!HAUW2[@VPBOX&-U UQ" WWXUQN8>PW#\Z/[(P'_/F
M/W(/:2[D_P!A@]#^='V&#T/YU#/K6FVND+JT]Y%'8,BR+.QPK!L;<>N<C ZG
M-4IO&/AVWTZWOY=7MEMKAF6)]V=Q7[W'7Y>_''?%']D8#_GS'[D'M)=S3^PP
M>A_.C[#!Z'\ZH:AXKT'2OLYOM6M81<1^;$6?(9/[V1_#R.>G--D\7>'XM0CL
M)-6MENI'1%B+<[G 9 ?3<&7&>N>*/[(P'_/F/W(/:2[FC]A@]#^='V&#T/YU
M43Q'HSZRVD+J,!U!208 W.0,E?3=CG'7'-2VNMZ9?-;+:WL4S74;RPA#DNBD
M!C] 2 ??BC^R,!_SYC]R#VDNY-]A@]#^='V&#T/YU4O/$>C6&J0Z;=ZC!#>3
M;=D3-S\QPN?3)X&>IZ4V'Q/HD^J3:;%J=N]Y#NWQ!N1M^\!V)'<#D=Z/[(P'
M_/F/W(/:2[EW[#!Z'\Z/L,'H?SK$/Q \)B-Y/[>L]J8)(?/!SR/4<')' P<X
MQ71(ZR(KHP9&&58'((]:/[(P'_/F/W(/:2[D'V&#T/YT?88/0_G5FBC^R,!_
MSYC]R#VDNY6^PP>A_.C[#!Z'\ZLT4?V1@/\ GS'[D'M)=RM]A@]#^='V&#T/
MYU9HH_LC ?\ /F/W(/:2[E;[#!Z'\Z/L,'H?SJS11_9& _Y\Q^Y![27<K?88
M/0_G3XK:.)]R YQCK4U%73RS!4Y*<*44UULA.<GNPHHHKN)"BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** ,7Q;I=QK/A>^LK3;]J*K) '.%:1&#J">P)4#\
M:P=0U37/%5C/I.GZ+>Z:LUG.EW/J,6S8S1,J)&0WS'>02PR,*>Y%=Q10!Y5K
M%G?Z];6TT&BW&GKIFG"&:.["PB=_/MW$"$G##$+#=]WYQSR:D/G^(/&5]/'H
M]U;A+O29'CN(P'*HTQ+L 3C''7G !]*])O;*VU*RFLKR%)K:92DD;CA@:KZ3
MH>G:'#+'I]N8Q*^^1FD:1W.,99F)8\ #D\4 >?ZKHFJ1>()M45-5@M8M7GD+
M:=&CS;9+:%1(JLK;EW(ZG S\Q]ZJ7OAG4[W1=)M[72+HM8RSZK(-0=2\X:4M
M]F)0*H,GWBN,+A0<UZW10!S?BFUN]2T.ROK"UDENK*Z@OTM7PCR!3\R<\!MI
M8#/?%8^M7>M^+]*U.RL-%N;6Q^Q-D:A%Y,EQ-N4B- 3PNT,"QX)88Z&N\HH
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@#
"_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>17
<FILENAME>exhibit101-ptagreement006.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement006.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%,$L99E$B%E^\ PR/K3Z
M"BBB@ HHHH **** "BD) QD]>E+0 4444 %%%% !14%O>6MWYGV:YAF\MMK^
M6X;:?0XZ&I3(@<(74.>0I/)H =12,RHI9F"J.I)P!2@Y&1TH **0$'."#C@^
MU([K&I9V"J.I)P!0 ZBCK10 4444 %%%% !113$FBDD>-)$9XR ZA@2N>F1V
MH ?113)9HH$WS2)&F0-SL ,G@=: 'T4PS1"983(@E92P0L-Q ZG'IR/SI] !
M1110 444R6:*%0TLB1J6"@NP ))P!]2: 'T444 %%,FFBMXFEFD2.-1EG=@
M![DT^@ HHIBS1/*\2R(TB %T# E<],CMG!H ?13))HH=OF2(F]@J[F W$] /
M>GT %%%(S*BEF8*JC)). !0 M%-CD2:))8G5XW 964Y# ]"#3J "BF2S10!3
M+*D8=@B[V RQZ >Y]*?0 444R66.&)I976.-!EG8X 'J30 ^BHVGA5HU:5 T
MIQ&"PR_&>/7CFI* "BBB@ HHHH ***9%-%-O\J5)-C%&V,#M8=0?0^U #Z**
MB6Y@=)66>,K$2LA#C"$=0?0B@"6BHC<P!(G,\>V4@1G>,/GD8]:EH ***8LT
M32O$LB&2, NH897/3([9P: 'T4R&:*XA6:"1)8G&5=&# CV(HEFBMXFEFD2.
M-1EG=@ /J30 ^BBF1S12EQ'(CE&V/M8':WH?0\B@!]%%% !1110 44UW6-&=
MV"HHR68X %*CK(BNC!D895E.01ZB@!:*** "BBB@ HHHH **;)(D4;22.J(H
MRS,< #U)IEO<07<*S6TT<T3?=>-@RGZ$4 2T44R.:*4N(Y$<QML<*P.UNN#Z
M'D?G0 ^BBB@ HHZ4R*6.>)9(9$DC;HR,"#^(H ?1110 4444 %%%% !1110
M4444 %%%(S*B%W8*JC)). !0 M%-1TEC62-U=& 964Y!!Z$&G4 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!5#6X+VYT'48--F$-]);2);RDXV2%2%/X'%7ZHZRMZVAWZZ;@7YMI!;9.!YF
MT[>?KB@#RSP[?>&-4CT[PUJVEKX?\56,D+!9X]CSNCJQ9)?^6@?:<@GG/?K7
M<ZWXSM],N[VTMDM9[FRB66>.>\6 G()")D'<V!G' Y'/-8WC#1-1\;Z'!I=Q
MX=:SU 2QNNHO-$R6A# LT;*V\Y ( VC.><5+=VGBCP[XVU+5-'TF/6=-U=8F
MFB^U+!);RQH$W9;@J5 SCG^H!IZ?XVM=<@TS^Q+<W-SJ%J;Q8IG\H11AMI+L
M V#N^4  Y(/89JI<>/WM=+TN[G\/:E'+?:@-.:!]JM'+DCC.-P.TD$#![D54
MU73/%6G>*=.\56%C!JEPUB;'4+&.=8L*9#(IC9L [22.<$@=.>)?$FG^(M7M
M?#TS::KW%MK,-_/!%.F((4##9N8KO;G/3&21G % %T^,Y8?)M+W3H-/U:1))
M3:WM^B(D:MM#&0 YW=@ >ASC%8=W\1;K4]*T&[T2S11>:RFG722S -&ZDDH"
M 00P7[WH>G/&GXBL?$6G^,;3Q/H.GQZFKV7V&\L&G6%]H<NKHS?+D%F!!_\
MKAOB/3?$6KZ9H=\=/A:^LM8AOWL(YU^2)592@D. S?-D]!U S@9 -*X\5S+>
M:C9V>G1W5WID,<MU;BYVR99=V(QM.\8[G'/ YKIJ\Y\6>&+[Q#-=3C0Y+;6H
M50Z7J]E=(AC;8N5D;<&*A]W\)R.@!KO]T\%@"RM<W"1C<(\*9& YQD@#)]30
M!Y]\29]6G#WFC2,/^$9,>I31KTG?/,9^D6\D?[:UV,WB738/"H\1M*3I[6ZW
M"LHRS*P&T >I) QZFLK1/#%K=Z9)=:_H<!U6ZE>6Z$P20DL>%# D%0NU1G'"
MBN6T[P;K\_P[UOP;<6[6<*SO)I%S),CXC$HDC1]K$@@CGJ,'VY .S7Q!JBZJ
M-.GT&2.6:U:XMY5F+PY!QY<CA<(W(Z;AZ$U7^'FN:EXC\(6FJ:E#&CW&]U9)
M-V09'XQ@8   ')J7P_?^*=1,0UO18=*$*8F*W*S&X?&/D"_=7OR<]!ZFJ_PY
MTS5="\(VVC:K9I!)9;HU=9@XF!=CN '08(Z\]>!W -&YU^1M9N=(TJT2\O+2
M%)K@23>4D8?.Q=VUOF.TG&,8')&17(>,O&$FK?"+5]4T>.2!PKVMTLDFR6U<
M.$=2!G)YQP>AS6PNE:IH7Q U37+2RDU#3]8@A6>.&1%D@EB!53AV4%2I['.>
MU8NJ^#-6'PU\0Z9:6HGU77+Z6^>)95"0L\BMM+,1G"J!D=3[4 =KI6C6EO>/
MJO\ 95O8ZC-$L$A@?<#&I^4'  ./IGM7'_$#P7I+>'-1U589)/$3N'L[U7(G
M^T%P(D0YX7)"@#C'/7FO1()'E@1Y(7A<CF-RI*_]\DC]:XBZOO%[:])=GP8+
MN"W8BQ#:I%&%&,%R,'YSR,]@<#J20".ZEGU3XGZ/X=U$I/;V6C-J,\9&4FG+
MB($CH<?,1Z$Y["I_!5RRZ]XO\.9;['IMXC6R@D>5'-'OV+CH =V,=,\=!5FY
MT?4T\3:/XK6T66]6Q:QU"T@=<[&(<;"Q .UQCDC(.>V#9\+:'<:7/K>KWL>+
M[5KLW#0JP)CC50L<>>A8 <\XR3S@9H S/AE&EMIOB*)21'%X@OD7<Q.%#X')
MYZ"N?TCQ?:7UO)XT\2:?>R:7-=&&QE,2M;6,(?8KE2V[<QZN%.,@9'2NL\#Z
M5J&FV^N1:E8O;_;-6NKR/=(C!HY6R =K'!]:Q(/"6K6_P\N_ GV7?"6>"WU
MNGEB!Y"P9ESNWJ"1@#!('."2 #T=2&4%2"I&016#XJ\2OX8M[.Z:Q^T6L]S'
M;2S>;L%N78*KOP?ER>3VXXI+?4KZR\40>'SI6-,%EOM[[[0K,S)M#*4Z@#(Y
M]?KQHZWI=IK>AWNF7P!M;J%HY"?X01U^HZ_A0!5O=?CL-4GMYXU6TM;(WMU=
M&3B%,D %<<YVL1S_  GVSF2>-3:1Z3>:CICVNF:K(D4%QYP9HFD&8Q*F/DW>
MH+8/7%9GA_PW>:U\,KJUU>\\R_UFT,;W04_<V;(C@\_= <CU9O6F2:'KFO\
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
M#+$$Y)!P #T.<=^>3P_XGTKPIXH\)P:1]NM[P7;6%\ES&B[9@QV.K'<&!)Y
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
M(]#^([W27U&6R\[5(8[>XD8M]GC?>(5XPI; W'C)/J<#(&: +U%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M15#6]5AT+0[[5;A'>&S@:9U0<D*,X% %^BN<7Q0UO87>I:C;V\>F06?VM;RT
MN?/CD7G*CY5YX'UR*H6_CV(^(;#3+J"T6._C=XI[2]%P(F1=Q64!1L..A!()
M!'O0!V5%<I!XNO+J'2M0MM#FN-)U*X6*.>&0M+&C9VS/'MPL9QG.[(!&1V$%
MEXUU'4=7OK.W\./Y.GWXM;R>2\11%'M#>9C'S8!Y4'IW[4 =E17"_P#"RK7S
M=)G6"WET[4YTAC>&\#W$6_[CR0A?E4]_F)&1D=A9\'ZWK>KZWXCBU""T6WL]
M0-LGE7#,8PL:$  H,@Y))R.3C% '637-O;M&L\\41E8)&'<+O8] ,]3[5+7#
M?$*&(ZIX+G,:>:-?A0/M^8*8Y21GTR!^56?$'C>?0;?5[UM'9M/TIXTEEFF,
M33;@I)A4J0^ P_B&2"* .PHKGKCQ+-;^,+/0FL4$=]:R7%K=-.0)&3&Z/;MX
M/(/7IS[51TSQM-J>A:C?)IL2W=E?G3S:?:\EI@X3&[9QDL,<'@]J .OHJM>7
MT.FZ9/?WSK%!;Q--,V<A549;Z]*YJ7QK-8P:1?ZEI7V;2M4DCBCG6XWO"T@S
M'YJ;0%!Z$AFP?SH ZZBN.B\9:I=^(]2T>Q\-23MIUS!%<2-=H@6.1=V\9')
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
MV\RN[US7TT>XTRS6'S[S4KC[/;QE]BY"EF9FP<  'L23B@#9HKB_^$[N8_\
MA)8Y=#?SM C,EP([E2KC9YB[20#RF3TXQBEM_'-P-)CU74M%-A8W,5L;*62[
M0^?)-_ 1QL SG<?X>< \4 =G17%0_$6RBOM5M=2C@C^P6?V[S[*Y^TQ2Q9P0
M&VKAP<#:1W%26_CL/XBL](EM+:1KZ&1[>2QO5N '0;C')\H"$CH<D$Y&: .Q
MHKSU?B7='PM;^)6\..NF&Y-O<M]K4R1?OC$&5=OS\XSR.O&>M;=IXJN3XK.A
MZII/V RVC7EM-]I$F]%8!@X &QAD'@L/>@#IZ*X4_$JT#:7<)!;S:=J-PL"/
M#>![B(/]QWA"\*>_S9&1D9X#;CX@:BMMXAGMO#3RKH4S)<^9>*F45 Y9<*<M
M@_=Z<=>U '>45P^K>)]6?Q/X0@TF"V>PU:*:Y_?3M&T@6'<%;"-M W@]\D=L
M<Z,/BN6^U"\M].LH;E+*_2RN5^T[9H\LJM)Y>T_*-Q/49 )H Z>BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MJEK NVTBZ%C!%/=&,B.&8@)(?[K$]B.*NT4 >9)\.C/_ &]:Z?;RZ'I.J:<8
M6L6E5T6Z+9$J*K$*H P0",YZ#%;FB'QCJ-LNF^(]-L[.*.(QW%W!="0W?RE?
MD3;\F<Y))[8 YXZ0ZOI@U(::=1M/MQ!(MO.7S#@9/RYSTJ[0!P7A"Q\9:)86
MGAJ[L[(V5B1''JRW&3) IX418R'V_+DG Z\XYN>'-#OX=0\5C4;-H;75KLS0
MN)58[#&J$$ \'C/<5V-% '!>$[7QMH]G:>&[RRL6LK+;%'JZW/+P+]T>3C._
M: N2<#KSCG1\,Z1JVC^)?$9GMX3I^H7WVV*X$WS',:KLV8X(*]<UTL-]:7%S
M/;0W4,D]OM\Z)) 6CSG&X#D9P<9]#4] '*>,]*U'5+OPX]A:><EAJL=[.?,5
M?D574@9/)^?Z<=:YKQ)X6\4:Q!XMLWL;2[:_'_$NO9KD#R8MJ_N53!VG(.3P
M#G)/ KU"D9@JEF(  R2>U '(>)= U;6=$T>XL_)L]=T^YBGB;=O5 ?DD4G R
M-C-D=R*AT[P2^E>./MUI(%T9K:)W@)RS74:F-7/UC;)]64&NI_MG2_L*WW]I
M6GV1I/*6?SU\LONV[0V<9W<8]>*NT 9OB#2(]?\ #NHZ1)(8TO+=X2X&2NX8
MS^'6N1;P_K>N>%]'\-ZQ9) +*:W-W>+,K1S)"01Y8!W9;:N=P7&3UXSZ!4$]
M]:6T\$$]U#%-.VV&-Y K2'KA0>I^E '->'M+U*S\:^*-1NK,Q6FI20/;OYBL
M?W<00[@#QDC(Z\=<5/X]T2\\0>#KRPT\1M>;XIHED;:KF.17VD]L[<9]ZZ6B
M@#AX+'Q'<?$"T\1W.DPV]LFE26KP"[5Y%8R*_88)^7IP.?O=AB+X3\0+\*K;
MPZ=.7^T([\3M^_39M%SYWWL^G'3K[5ZG10!PUII>OZ!XVU?4;'3H[[3=;\J9
MU:X6*2TF1-I#9SN4C'*Y(QT/?!TWP?XLTCPKX9N+2WL_[:T*:X/V1[C*7,,S
M$LI;&%;E<=1QU[5ZO10!P?B;3_%'BCP!JUE/IL%M?7RI'!9)<JXA 8$L\F!D
MGT .,#U-=O;.[VT;2Q-"Y4;HV()4^F1Q4M% '(6NEZOIGQ!US58[.*XT_4K>
MWQ()@KHT2L"NT]2=PYR /7M7-P>$]?B^&.B: =/!O[*_CN)<3IL*).9>#GJ0
M<=.N:]&@U?3+J^DL;?4;26[B&7@CF5G49QDJ#D<\5=H XXZ7J_\ PL6]UN*S
MV6TFCK9Q.TB$B579P2N?N_-CZCTYJCHGA.>T\7V6MV>EG0]\,@U:WBG4P73D
M#;L12>C9.XA3[')KOZ* ,+Q7!J%[I2V%C9M<1W4BQW9$BH5@W#S ,D99ERH^
MO4=\'QMX$LM0\+R1^']%LK;6(Y(YK.>"*.%HI%8,"6XXX(XSUKNZ* ///$TF
ML:A<>&5BT>"37;;S+N6W2]6*6(! A:.3#+L+. 0P^;CC@XJRVFIW_A7Q)X=7
MPQ+I^K:C \Q=[Z.<3O)\I=W&,8P!C X' XXZ[7=%\-ZUJ-G%JJPG40&^RE;A
MH;C'5MI1@^.,D#BM'3-(L=(A:*R@\L,<N[.SNY[;G8EF_$T <OK^A:W?>'M
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
MX/\ +M#JVE>)O&'A2\@O;>VT2]S%)90K.)]LT;APSN% P2H&!G R3G@#N**
M.5TN\\77]K(=9T6UL#%"R^7;W:S-=2$8!&0 B=^23T].>;C\+:]'\._"VB?V
M>&O=+OK:><"=-I2*3<=ISR2.GXYQW].HH X;4_#5]K/C74[F:U>'3+_0&THS
M>8A979V8MM!Z8;'U'IS3_"W_  F]M;6FCZOIUE'#9*J-J<5T'-RB< +%C*LP
M !)(QSCM7;44 >8S>%M>E\!>+]'_ +/"WFKZC<W%N#.FT)*X8;CG@@#GKVQG
MMMOI.LIX[TG7;>RB:#^RFT^Y22<*T!,B/NXSN'RD8'Z5UMU=VUE;M<7=Q%!"
MOWI)7"J/Q-)9WMKJ%JEU97,-S;R#*2PN'1OH1P: ,K0M6U._U/5[/4M.BM?L
M<X6"2*;S!+&V=I/]UL $CL&6LS4=%U*P^($/BC3K?[;!/8_8;RU614D #;TD
M3<0IYR""1QZUUD<44*D1HD:DEB%  R>2:CM+VTOXVDL[F&X1'*,T,@<!AU!(
M[CTH \ZUSP7JUYX9\2FWM4?5->OX;GR?-4)#'$T9568]3M0YQGEL=!FO28G9
MXE=XVC8C)1B"5]N"13Z* .,M=)UG3?&?B>^CLHKBQU5()(Y%G"N&CA\LIM/<
MG!SD#'OQ6'#X5UZ'P#X1T<Z>#>:3J-O<7 $Z;2D3ECM.>20>!QWSCOZ9+-'!
M$TLTB1QH,L[L %'J2:2WN(+NVCN+::.:"50\<D;!E=3T((X(H X6"P\7>&O$
M>K#2=-L]3TG5;DWB--=^0]I*P ?=P=RY&?EYKMXQ/!8H)2;FX2,;R@"^8P'.
M 3@9/O4]% '*:+X:MKV"XO?$>@V3ZI<W#R2M/''/\N<(JMSPJ!5[<@G'-4_
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
M!(0$A"J=Z\<Y+J,''WO8T ;M%9'B+7H] LK>0Q>=<7=U'9VL.[:))7. "<'
M R2<'@'@UG+XEO;3Q2GA[4;2W%U=VSW%A/%*PCF*??C;()5AD'/((].E '45
M6N=0L[.:VAN;J&&2YD\N!)'"F1L9PH/4X%<OX-\4ZWXJM++4I-&MK73+A)@\
M@NBTBNDA4 +M&5..N1R#P.,W/$>LG3->\.6C:;;W,=_>&%9Y'^:!]C'*KM]
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
M=5/ X$5B3H*@7.;EOG_<^5\GR<^O./2NQU#5M/TKR/M][!;&>010B5PID<G
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
M\ZVDF,;0RQKM#*=I!4KU[@CC-5[7PA<Z;H<.F265AJUM=37%QJD$YVAY)6W
MQY4_=/ SCCGK7<T4 >9IX UO2]%TJ71;R!-3TF^GN+*VN9&DA6WER#;E\9P%
MQSCK^==MH8UN2&2XUU;2&>3 2VM'+I$!GDL0"6.>>,# ]R=:B@#DKK0=2L/'
M;^)=*6&XBO+1;6]M99/+;*'*2(<$'J00<<<U2N/!VH#P=XGLX/LK:KX@DGDE
MW2,L41D78 &VDD*H'.!DYZ5W5% %#1(+FUT2RMKQ(TG@@2)Q&Y=254#() ]/
M2K]%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 5GZY?3Z7H5]?VT$<\MM \PCDD*!MH)QD ^GI6A6?KMI<
M:AH&H65H(C/<V[PIYKE5!92,D@$]_2@#D[3QKK*Z%8ZSJ6F6<=KJ4-J+)(9G
M:1IY<9# *<*!EN,G [GBEF\:ZS9'7$ET@7*V&GM?P78BFMX90N=T9WJ<.,9
M!.1Z4^Y\&ZE>_#G2=$-W!::OI*V[VMS$QDC$L( 5CE0<'!R,<9[TS58_$[^!
M?$4_B2338W72;E$@TXNR,3&<NQ?!SQP .,G).> "%?'.NV;^'+_5-'LX]%UI
MH8%DAG9IH)95!4N",;2?0G ZG/%:#^*]2OM-UC5=%M;6>TTN:6'RI68/=&+_
M %FUAPG.0,ALX[9JCI&B:AXB\+>$(;]+6&QL4M;UFBE9WF,<8,:[2H"C)!/)
MZ8&<YJ>P\+ZWH,>NZ;I;64VFZG/+<023RLKVCRCYP5"D.H/(Y!['UH 9/X[O
M[V^\/0Z#I]K/#KME-<V\MS.R;&15.' 4X + <9SC''6F:/JOB>Y^(MS8:@;"
M-8-*@F>VB9RJ,[-NPW<Y7KCICW)F@\%WFEZYX2?3?LK:;H5I-:MYTK++)YBJ
M"P 0C.5SUYSVK0;0=4@^(4NO6DEFUE=6,=M.DK,)$*.S J ,$$-CDC'7GI0!
MA3>.]0LO WB/78M'L5N-+U*>V>!9F"-L=5+YVY8DG/1<UM0>(]6A\:VNB:G8
MVD4&H6LL]J\$K.Z&,KN63( Z,#QTZ<]:P;GP-K]QX(\4:'NTU;C6-1FNXI//
MD*1K(X8@_N\Y&,<=<]JW;_1M5G\9Z)KTBV,5KIUK/%.IN'+?O N2OR8(&SN1
MG/:@#*N_B#?IX7?Q/:6%M+IZZ@;,6TKLDFWS?)$A< X^;!V[3P>N:[E[G[+I
MS75]Y</E1&2?8Q94P,M@X!('/.!]*\JTJUUN:PDUZTLO#5_I<]W)J,;RW\T
M/S$J[1;3&K@;>3R",GYLFO3E6/7- "W5O)%'?6N)87X9 Z\J?<9Q0!REUXXO
M['PM9>+I[*#^P[@QO+$I/GP02, DI/1C\RDK@8SU.*EG\4>([CQ7JNAZ3I6G
M2-916\ZRSW3!720MG.%X; X'(X//053A\%ZS-X)B\%ZA+9R:9&R1&]21O-DM
MT<,%\O;@-A0N=Q '//2MG3="U.T\?ZMK4BV?V"]MH8$5)6,B^7NP2NP#G=TS
MQCO0!H^*=1ETCPMJFI0VL-T;6UDF:&9]JNJJ20>#V!XQS[5@7'B[4X+CPC:V
M>EVD@URW9N9R@B98?,QC:<+TYY. >*Z#Q1IUUJ_A75=,L_)$][:2VRM,Y55W
MJ5R2 3QG/2N>_P"$7UK[;X+GQI^-"B=+@?:'_>%H?*^3]W^/./3WH 2W\6:]
M+I/B5?[-LY-9T*4JT,3N8KA/+$@VD\AB#TYY'OQJV'B*;5;+P]<6)MI?[3B^
MT2\'"1!068<]0S*F#W;VQ4?AW0]2TSQ)XCU"\%IY&J3QS1"&5F9-L83# J!S
MC/!IOA#PD?"\NI*;@2V\EP_V&(=+>!F+[!_P-W_ +Z4 9,_C^^>R@U?3=,DO
MM/>Y\HV\-K,T[1;ROFJP7:>F[;Z?Q9XJ^GBZ>]\07^EV+6(NK&[CADL9R5GD
MB.PM,O/0!B0,'.WJ,XJAH/AKQ=X=\S0[._TQO#OFNUO<2!_M=O&S%B@ &TD9
M.&)XZX/2I/$7@Z_\22XNK?3DN(+Q9K'5HI66XMX@X;;@)R<9&-V.<]1R 2:)
MJ>O77Q#\56DLEI):V2VJQ1?,N R.ZX//))^8X[# XJ"P\=LGP_@UQ],@AN+B
M_:RCMHGQ&LAN#$"6QT_B)QS^-:MEH6K:=XZUO6('LI+#5(X"RNS"5'B0J%
MQ@Y!W9X]#7*W6BWV@_#B'PS?2Z0;V_U(I )7=H9=\QF*DE5*$+N^8<\#'S8H
M Z>'Q+JT?C6X\.7%C:SB&Q%_]IAD:-G0DJ%$9##=O7'+C@Y]JIV7C/4/^$@T
M'3-0MK..;5XY6:UC<^=8NL?F!9.3NR,CHO/8U5L+?Q#9ZC+87UAI=M=:K \*
MZC97\UQ/$5C8JS"5=Q0'T. S#UJ'3O!OB>WD\(R2MHL;:&TJRB)I6\\/&4:7
M)49<DY(/4Y.[F@";PUKGB"6P\87MX+*\-CJ-S$D.YHU_=H@"@X;"X![9))]:
MD'C74(M"\&W-II%HPUSRHS&)B@A9HRX"C:?EXZYX]#5G3_#.MZ;'XJM8WT^6
MVU6YGNK9F=U<-*JC:_RD #!Y&<^U4X_!^NQZ+X+LA_9Q?0)HY)V^T.!*$C,?
MR_N^^[//IB@"[9^,[NU_X2J+7+.!9_#\27+FR=F66)XV=<;@"&^4@TS_ (2_
M68M0\,0-86$Z>((V=-LSQ_9RL8D()VMO^4\'"\CMFJ^IV=[X=O/&OB2^ET^*
MRU"TACA+,TA1T1D7>A4*0S..,XJAH]CK_ADZ1->:/H5Q;PB.TAEMM2GDDC5R
MJGRED7:.Q(4C(&.@H [_ %N]NM.T6[N[&PDO[J),Q6L;8,C=AGM6'HWBF:[\
M8W?AVX>RN7BLENUN;,D*/G*-&RDGD$#G/?H*O>,=(O\ 7O"=_IFF7:VMW.JA
M)')"G# E6(YPP!4X[&LC3/#NO0^.+?7KD:3!;?V4+"2UMBY\K;(7 3( (YZX
M7'3!QD@&GXI\31>'6TQ)IH+5+ZX,'VRZ!,,)"%ANP1R2,#) YSGC!HZAXGU7
M2K?0I;JULW.HZJNGOY3MC8[/LE0]\JH.#_>Z\5K:_8WM^((8K2PO;%@Z7EI>
MDA9%(&TCY6&01WX_F.1/P_U&R\*65EILUL+FPUH:K:6LTKF&- Q(@#XW8PQY
MQU/2@#9N?%]S8ZUXELI;)9X](TY;^/R2=\P(<[,<\_)C/OTI++Q3>WNCW&JV
M+Z7JEDMDUQ'+;2M&!(N"8G^\0<=\9]0*K0>'O%">(];UL3Z7%<7^FQV\*JSL
M(IDWE<DKRN6&3C)]!5:3PB]A?:UX@6SL],\_2)H+BVLI69+B4_-YA!50",$
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
MJ622*091X\G*DJ3U)VD=ZM^(_P"T8_&G@(_Z-/?;KX*0&CCY@ZGECP/SQVH
M]%HKA+7QU>6NEZY_:]K;MJ.EZA'8*MIO\N=I=GED Y8??&1R>#C/2IXO$VOI
MJ]W9/IGVFW%DUS!>_8I[6)9%ZQ2;PW;D$=>F* .THKDO!6N>(?$>GV.KW]KI
MT&FW=DLJ+"[F82D]P?EVD9[YZ?@W6?$6NP>-+?P]IEE8/]IL)+F.>XE<!2K*
MOS #I\W09)XY'- '7T5YE/\ $;6[3PIK=S<Z79#6=$O8[2[B61O*<2.JH\??
M!#YP2.G7M6])X@UVRU2RT:_@TQ=1U2YE^QF%G=(K>- [-(#@LP)VX& <CI0!
MU]%<-<>/7T*YU^QUZ",W.E6JWL3VH*K=1,=JX5B=K;\*<DCG-:PU'Q#8:E"=
M3M+.32FM9)KBYM\J;1U&=IW,3(",@$ =.E '1T5P<'C36;AM$OK?2I;G3]2E
MC66&*PG$EK'(,K(92-C@<;L =>">M)J'C?57L[W4-#TYKZ*TNGMUM%L9W>Y"
M/L<K*HV*<AL##=.2,X !W4LL<$3RS2+'&@W,[G 4>I-9:^*-$?2;;55U* V%
MU,(()P3MD<L4 '_ @16?%X@OM9UK4=.T9;>'^SHHC.]Y$S%I9%WB,*&&W"XR
M3GDXQP:XKPKKMYH'PB\+3P6=M,+C41;2B9C^[#W3KE0!R1]1^- 'KE%<=<^(
M?$,WC6_\.Z?:Z:GDV,=W%<7#NP^9V7Y@,9^[T'USV-2T\?W%UX.\/:F;.*.^
MUB_73MI),44F]U9O4C]VQ SDY SWH [RBN6T7Q!JMYXQUC0;N"S,>FI$YN8B
MRF02J2OR'(!&T@_-Z&NIH IP:K8W.IW>FPW*/>6BHT\(ZQAP2N?J :K3^)-'
MMM2BT^:_B2YFE\F-6SM:3&=F[&W?C^'.>>E9FF:YJ%_XN\2Z,;>S@.GQ6[03
M#<Y?S%<Y?ITVC@>_-8_PP@N+WPW++J)M+F,:G=RH#"=ZRB=_GR21USCC(]:
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
MV^BNVDRZJ520R!1P222<9P/I70G0-2B\?MX@MY[46MQ8QVMS%(&+J4=F!3&
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBHKJY@LK2:ZN95B@A1I))&. J@9)/X4
M2T5Q'AGQCJOC:SN]3T2QM;;3(Y6BMI+UF+W)7J=J_<7MGYCUXJSX/\>V?BB/
M4H)X/[.U/2I&BO[660,(R"06#<97@\\8Q],@'745Q>J_$"!/A]?^+-&CCO(+
M5W55D8J)0LGED@CH">1[5O>&]:&O>'=,U)U2&:]M([DP*^2FY0?KCGK0!K44
MQI8T=$>159_NJ3@M]/6G9&<9&?2@!:*:CI(@=&5E/1E.0:\ZC\?:]<_$;5?!
MUII>GR7%A;_:%FDN'191M0@8VG:?W@]>E 'H]%<A\/\ Q[:^/-&GO([1[*XM
MI?)N+=W#;6QD$-@9!^@Z&NM$B%]@==^,[<\X]: '44Q)HI&=8Y$<H<,%8':?
M?TIVY3_$/SH 6BL#4]5UNV\4Z18V.CK=:7<A_MEYYP!@P../\YK<\Z+S#'YB
M>8,$KN&1GIQ0 ^BL#1=5UR]\0:S::CHZVFGVKJ+*Z$H8W"G.3CMV_/%;B312
M.Z)(C.G#*&!*_7TH ?13'ECC1G>155>K,< 4/+''&9))%5!R68X'YT /HI P
M894@CV-+0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %<[X]TRZUCP%K>GV0+74]HZQJ.KG&=OXXQ^-=%10!YK\";F*7X7VELIQ-
M:7$\4Z'@JQ<M@CZ,*X;PMIO]L^,?B;KBPK-H[P75NK,H:.63=N!&>#C9GVW#
MUKVFX\):%<W=Q=-8+'-<C%P\$CP^?_O["-_XYK0LM.LM-L4L;&T@MK1!M6&*
M,*@'T% '@>B6-A%^S%J5Y':VR7L\4@EF6-1)(HN. S=2!QUHTZSM]*\5?"6Y
ML8Q#/>6 ^TR*?FER@'S'OP2!Z# Z 5[1%X*\,P:;<Z=#HMG'97+!YX$3"R$'
M(R!U /('2E'@WPZ);&4:5!YE@H6T;G, !R G/R\^E 'DMI:WGC7Q9\0]'NKR
MUMM06Y1;:>Y!,EO#$[%&BY& ,*21C[P-3:]I46I_'7PC9WLPG%SHF+J:$F/[
M3\DVXY'.& QUZ'%>IZCX+\-:MJZ:KJ&BV=Q?)C$SQY)QTW=F_'-69_#>CW.M
MQ:S-81/J4("QW1SO0#/ .>!R>/<^M #] T'3_#.BP:1I<316<&[8C.6(W,6/
M)YZDUY!:6<]_^TMXGM[?4)[%VTU09K=4+@>7!P-ZD#ZX[5[C6+!X2T*VUAM7
MATZ--2;[UT&;S&^K9R1P.#0!YQ\0O!>B^#?@;K5AI<#%?-@F::8[Y'<S1KN)
MQUQQQCC/J:CU#P[#X<^$=QXKT9;@>()]!MX9;KSF+>6WE[R!G"X7ICH%&*]8
MU71]/URQ:RU.UCNK5F#-#)RK$=,CO4EMI]I::>FGPP(MHD?EK">5"=-N#VQQ
MCTH \/BW:/K'PA?18UCFOK()>^4,>=&RQER^/O8W.W/?FK"Z8_@WXMZQH-E9
M*;+Q9:DVI6,$0OD[_P#@*YD8CTVUZSIWA;0])NDN;'3HHIHXS%$W+>4A.2J9
M)V+GLN!6A+8VLU[;WLL"/<VZNL,I'S(&QNQ]<#\J /(O%.FV>E?&GX?6MC;1
MP0Q0/&JHH'RJ& %9EK]N\*_$*VBUBRAU71M8UHRZ?J\('G0W#/MV,W7C&UE/
M8$CIBO8[SPWH^H:K!JEW8137]OCR;AL[X\?W3GC\*9#X5T.WODO8M.B6=)6G
M0Y)59&SN<+G 8Y/S8SSUH \7L+B[TG6?C#<:0IBN84#1>4,%.9,L,="!D_A3
M(S)I-E\([O1T"7UY(4N&C&&G1VC,@<C[P^9CSTZU[;8^&=&TV_NKZST^&&ZN
M\_:)5SNFR<G=_>_&F6'A30M+NXKJRTR&*6$,L)&2(0QRPC!.$![[0,T >(WF
MD:?>>./BN+BTBD6WTQYHE(^5)/+R' Z;@>0>HR?6KUMIVN:[\&O!<VC7,4VI
MV,DES%97.&6Z6-V7;AN"5&, ]LXZ5ZZW@_P\UQ?7!TJ S7Z%+M^<SJ>H<YY'
M'0TY/".@QV%M91:;%';VKM);I&67R6;J4(.5/7ICJ?4T 8?PKU>UUGP<;BVT
MPZ8ZW<J7%H!A(YL@N$'9<G..V2.U=M573M-L])LDL["VCM[="2$0<9)R2?4D
MG))Y-6J "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
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
M9QUJZO@OP8UP]NN@Z.9D4,T8MX]R@]"1C(!P?RJ3_A!/"7_0MZ7_ . J?X4
M<GI_AO7K#X=WW@1M/,N5FM;74?,C\DPR,2'<;MX90QRH4\@8/<:UCH=_I?Q"
MMKN'3YY-*M=!334G\R/+.LFX?*6SC QG'7\ZUO\ A!/"7_0MZ7_X"I_A1_P@
MGA+_ *%O2_\ P%3_  H J?#[3-1TC0;FUU*R>UF:_N)U#2(^Y))&<<JQ['FJ
MUIIFJ^'/'&NZC!I\VHZ;K(BF_<21B2"9%V%2'9<JPP00>,8QWK2E\$^#H8S)
M+X?TB-!U9[9 !^.*5/ _A"1 Z>'=)92,AEMD(/Z4 <EJ7@W5[;X93Z/9V7VO
M4[[41?S)%*BI&3<+*5RY&<*-O'4BO3(Y&>$.T3QL1GRV(W#VX)'ZUSL/@OP;
M<1^9!H&CRIDKN2W1AD'!&0.QH/@OP:)U@.@:.)F4LL9MTW$#J0,9QR* ,[P?
MIFK6'BSQ7>7VF2V]MJ5VDUO(TL;954VG(5B0>/UJSXJMM;GUW1FM;!M1T5?-
M%[:).D99R!Y;/N(#H/FROOG!P*L1>#/!DYD$.@Z/(8W*/LMXSM8=0<#@\]*D
M_P"$$\)?]"WI?_@*G^% &/X.\,W</AK7-#U[3(H+6[O;IE6.9762*5B?EQT
M!&,X/L*D^'EA?V7AIKS4)CJ%TP^SP21X!DMH2RQ8R0/F&Y\D_P =6=0^&7@W
M4DB270;6(1R!Q]F!A+8[$IC(]C5L> _"0  \-Z4 .G^BI_A0!Q,7ACQ#'\)-
M'T Z/*=1M;V*66,3PX"I<>82&WX/'ZUOZEH>HZI\0)+M[">/3+C09=.>X\R/
M*.[AON[L\#/..OYUIP>"_!EU$);?0='EC)(#QV\; X.#R!Z@BI/^$$\)?]"W
MI?\ X"I_A0!A^$O^$PL;2QT'4] MXEL0D+:LMRC1S1)@ K'][>P&.< 9S[5G
M_P!@:ZWA#QWI_P#8\PN=8O;F:S4S0X9)$55)._C[IS_6NL_X03PE_P!"WI?_
M ("I_A1_P@GA+_H6]+_\!4_PH Q#I.MP>)_"^K0Z4TD=OIDEC=1M/&I@9MA#
M'DY7Y3]W)]JIOX7OIO$]GK6GZ3<:-JPU#-_<0SI]GO+4,<ET#'<S+C^$$,>>
MF:Z?_A!/"7_0MZ7_ . J?X5'+X,\&6^SSM!T>/S'")OMT&YCT R.2?2@#5L+
MO4+B^U"*[TW[+;P2A;:?SU?[2I7);:.5P>,&M"BB@#B/#FG:M9?$'Q;JUUI,
M\5EJGV8VS^;$2?*B*D$!\C)Z?KBK/@+3]3TRVUB+4M.EM&N=5N;R(M)&X,<C
M[E^ZQP:ZZB@#EOB'IHU#P;>2I+Y-Y8XO;.;&2D\?S)CZGY?^!5G:[X0U'4OA
M_%8P2Q#6X[A-1+,<1R7(?S&!_P!DDD#T&/2MZ?P]H>M:U:Z](OVJYME\N)EG
M8Q JQ/* [25;/4<$>PQL">$SF 2H9E7<8]PW >N.N* .3FTV_P#$GB7P]J=Y
MIDVFPZ299W2>2-F>5TV!5V,WRC)))QG XY..2O?#?BC_ (0+7O"MOH9DDDU!
M[B"Z-U&(YHVN!(,#.0P&<A@!P>2>#ZS!<0W4*S6\T<T3?=>-@RGZ$4-<0K<)
M;M-&)G4LL98;F ZD#J0,C\Z %B9WB1I(_+<C)3.=I],UYCI_A;6YOAC%X%N]
M->WD)\F>^,L;0^5YN\LF&W$E> "HYZX%>HT4 <AI6F:C;?$K6-1?3I4TZYLK
M>WAG,D9!:,MGY0V[!W#'';M61HEGXM\,SWF@PZ%;WVGO=2RV6IFY15A21R^)
M4/S$J6/3KTXZUZ-10!YKXET/Q+JUSXILIM*74;>ZL?*TFX>XC6* F(AAL)R)
M"Y)#8]!N44V/3/%6AZOHWB&ST07I;2(]-O\ 3ENHUDC*'<KJQ(4\D@C/Y]:]
M,HH X7Q%8>(-5/ABX;2]\MKJR7UQ%#-'B"(*Z[=S%=S?,"<#&<X[5<T;3M2M
M_B+XCU.>PDBL;Z"UC@F,D9#&(.&R Q(^\,<?E7744 <CXGM=;G\1Z2T&G-J6
MAB.1;JU2=(_WIQL=PQ&] ,_+SUS@X%<E#X7\2P^#H-).ACSH/$(O@(;F(J81
M.9"1DC Q@ =?4"O6Z* .1AT_4C\5)-9;3I4TY]'6S$S21\2"5G^Z&SC!QG'7
M\ZHZ?X>D@^)FI>1,IT?]WJCVP'W+UP\>?3!4%R/[VT^E=M=VL5]93VDX)AGC
M:*0*Q4E6&#@CD<'J*IZ'H.G>'=/%CIL+1Q9W,7=G=S@#+,Q))P /H * &^)=
M''B#PSJ>D&7ROMEL\(D_NDC /YUR$NBZWXA\+:+X>U32WM)+.>W:\NO-C:)U
MA(.8\,6)?:,948R<].>_\^'[0+?S4\\J7$>X;BH.,XZXR1S[U)0!Q]O8:FGQ
M3O=6?3)AITNFQ6B7'F1\NLC,3MW;L8;T[=*ZF\M(-0L9[.ZC$EO<1M%*AZ,K
M#!'Y&IZR]=\/:=XDM(;74DE>**83*(IWB.X CJI!Q@GB@#E? _AZY;PM?0:G
M>?:?-233+:X7K]DC+I&?J<L<]QM]*H)X;UZ]^&J>!+[3RDB!+1M162,P&!7!
M$@&[?NV#&TK][VYKT6#[):^5I\!AB\N(>7;H0"L8P!A?0<"K% '%3:=J^E?$
M:75+'2FOK&\TV*TWK.B>0\;L?GW'.TANJACQTKFK'PUXDMO!'A339-%=KK3=
M;6]G5+B+B(2R.2,L.<../8]*]:HH 0'*@D$$]CVKSC3- UW1?!^L^#TTUKJ.
M8W,=A?"6,1>7,6/[P%MP*ESG"G/;->B33PV\?F3RI$F0-SL%&3P!DU)0!P-O
MX<O_  UXHT.\L[*;4=/LM"_LEC"Z+(K!T8.0[*""$['.3TJCKGA#5[GP3XL6
M"R\W5O$%T)A;)*@$*C8%#,2 2%3)QGDX&<9KTRB@#C=7L-4O?&_A'4X=+F^R
MV"7/VIC+$#&98PJC&_G!'.,_C7+SVNH75[XCCMO#%]J&B:C?,91I^H0)#<;=
MJN2'PX8LI#;2 <8]2?6JYJ/P)HD%U)+:_P!H6L<KF22VMM0GB@9B<D^6KA>3
MU XH Q9'U?6M=TZ]AT1[OP])8;$M)I4B6VN@Y!,R$_,   " V,$@<YK'T[PQ
MXELO W@ZV?2 U[H>IK--;+<Q[I(QY@+*2=O\8.,UZI##';PI##&L<4:A41!@
M*!T 'I3Z .*FT?4[WXCOJ%QITD>G3:$=/DG29"%D:3><#.[&.,XZ]JQK?PWK
M[_#5_ EUIY\Q5^R+J2R1F!H-^1)C=O#!>-NWJ!SCD>E2W$,#1K+-'&TK;(P[
M %VQG ]3@'CVJ2@#C+'2M0L?B->ZBNF3G3?[)ALX91+&2S1LS8P6SR& R1U]
M*P]'\,7@\!Z9X?\ $'A9KVW6>Y:YC$T6^+=(SQR(P<<X;!P0>3^/I]1Q3PW
M8PRI(%8HQ1@<,.H..] '/^"-+U/1] >SU*XN)@ES(;47,@DECM\_NU=AD%@/
M<]0.U93Z?K>F^/->O+723>6FL6MNJ7"SHBP/&KJ0X)W8.X'*@_X=JT\*3)"T
MJ++("40L S8ZX'>I* /*],\.>(K7P]X!M)M&D\[1[KS;L)<1':FQU[L,GYAP
M,]*FUOP=J_B"[\>VQM6M8=9@M!97#R(59X0>&"L6 )P.G3->G44 >=7:>*=<
MU/PE>7/AJ2UETV[:2]WW4)7F)D+)M8DKDYY /MWHT2S\6^&;B\T*#0K>_P!/
MDNI9K+4VN4584D<N1*A^8E2Q^[UZ<=:]%HH Y#2=-U.W^).MZC/82K87=I;P
MQ7)DCPS1[\DJ&W '=QQ^57O'.D76O>!]8TNQ56NKFV9(E9L!FZ@9[9Q70T4
M<)>66N:AXB\&:D^AS11Z>T[72_:(F,0>'RQ_%R<\G&>.^>*K'1=;*_$'_B4S
M9UE2++]]%\Y\@1<_/\O///;WXKT">>&VA::>5(HD&6>1@JJ/<F@W$*W"VYFC
M$SJ76,L-S*.I ZXY'YT <#<^'&U+PSX>T?6_#,UU#;6"QR20S1+/:7"*B@HV
M\<'#<@GH,BNF\'V6JZ=X5L;36KE[B^B#!Y)&#/MW'8&8<%@NT$]R#UZUN44
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
MFO?'ND36DXC6]@>'5(<9\ZVB974_]]$(3Z2$5W). 2 3[#O0!Y)X>\1R>#]
M\37<.B-/IEGX@O/M#QRK&(8_-"_(O\6!VX&.]=UJ_B6YL+JZAL]+-PMI8_;9
M9YI3#$5R<(C;6!?Y2<' ''/-<C-X7UZ;X?\ B_1QIK+>:MJ-S<6RF:/;LE<,
M-QW<$ <_IFM#4=)\1WVNSF;2XKO3IM-6*T6>Y55LI\,'+*,[F.1AAG&,<9-
M&E)XY40^&+N+3V-AK[1I'<23;?(=UW*KC!Y/08/)XXZU?U#Q/%I9U6:[A"V.
MG+&&G67EY7QB,*0 #\R<DX^=??'/V_A+4;_X06_AV_A2TU2VM$6W*2A_+FB
M,;[AP/F4=,\'K5W4_"NHZM\.YM,:YCAUN<I=O/CY!=!UEQW^4,H4=<*!Z4 3
M:9XWAO/%*:!/%;"::W-Q!-9W8N(V"GYD8A1M8=<<@CO57XK7E]:> KPV:(5E
M>&*5S*5(5I44@#!SN!(/(X/>M+P]?>*]0=/[=T:VTE(5_>>7=+.;A\8^4 ?(
MO?DYZ#UJ#XB:7J.N>$)M-TNT^T7,LT+C,BHJA)5<Y)/HI'% ")/;6'B;R+/1
MK5?$FH6OG72I<%8U@C;:K.^WKEL#"9Z]A5.]^(\5EX:UC4WTF<WFCW M[VR$
MJYC8D!6#?Q(=P((&3Z5-J&DZI;^.[+Q9863W"26!T^]LO,1957?O5U);:2#D
M$;AP>*Q-?\&ZMJ'A[Q?-;V8.J>(9X&2W\U (8XM@7>V<;B%8G&>6 YQF@#NM
M(U#4+\W7V[2)-/2.0" R3(YF0@'=A?NGL0:S?^$JDN-1U"UTZQCNO[/NH[:Y
M7[3MF7=M)<1[3E0'ZDC.UL=.>AA=I(4=XFB<C)C8@E3Z'!(_6O/?$GA2^UO4
MY+ZUTI[#78+I?L6M6TZ(#"&'^M ;<WR[AMVG/'(R< '1V_BB2XU3Q%IRV"BX
MT9(G),_RS"1"XP=N5X'H>?SJ&P\:1ZIIFA36=F6O=9A:>"VDEVA$4 LSN <
M94< DEAQU(SI=*UZP\:>([NRTV.[M-:MH LYN%00/&C(0RGDYR",?0XZC$L?
M"WBO1-'\(:G9V%O-JFBVTEG=:>;D 3PN!]U\;0P*@^GO0!)X[U-]8\$R3WVC
M36=YI^M6\&V1-VXB9/GB8@;E8'@X&>177:7XHGN_%5SX?O\ 2GL;E+47D#&=
M9!+$7V'./NL#CC)^M8_BC3O$GB+PHL3Z;&EY)?6\ZVD=PC""..17.YS@,QP>
MG'0=B3>&FZDWQ1CUPV+KI_\ 8YLC(TB9$AE$GW0V<8&,^OMS0!UM%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %,EFBMX7EFD2.)!EG=@ H]23TI]8/C>&.;P)KZRQJZC3KA@&&
M1D1M@T ;<4L=Q"DT,B212*'1T8%64\@@CJ*?7F^A>,;[1-'\)6^I:$\.D7UO
M:V<.H"Y5F$K1@)OC ^56/0[C[@=*U;+QGJFH:S?V-MX<S#IU^MM=SO>HHCC*
MAC(!CYL Y*@_C0!V=%<+_P +(@+:5<QVUO-IVHSI"C078>XB#_<D>$+PIXS\
MV5R,^@GU3QS<:4KW5SHYBL$U-=/#33&.:3+!?-2,KADR>/FY S[4 =G4+7=L
MEU':O<1+<2*62$N [ =2!U(%85]XDNS=ZK:Z-IJ7\VEQJUPKSF/<Y7>(DPK;
MFVX/.!\R]><<QJ=Y--\1?".J6FD2+>W>E73&VGQ"ZDB(A9#@XVY(/!([ T >
ME45@^%/$3^([&\>XLOL=Y8WDME<PB7S%$B8R5; R""#T%;DID$3F)5:0*=JL
MVT$]@3@X'O@T 1W5W;6-N]Q=W$5O G+22N$5?J3Q4U>,ZUJFI^(_@9KFH:S;
MVK/Y\AB>.0N5*W17 4J-H & <DD=<5W]IXHO/^$NBT'4=)%HMU:O<VDPN1(7
M"$!E=0!M;Y@>"P]Z )KCP1H-QJ<VH"VN+>YG;?.UI>36XE;U=8W 8^Y%;EM;
M06=LEO;1)%#&,*B# %<3/\2K:.*SOX;>VN=,N;D09AO URBEBHE,(7[N1G[V
M0"#CJ!L>/->F\,^!M7UBV -Q;P?NLC(#L0JG'?!8'\* -J;4+*WN$MYKNWCF
M?[D;R ,WT!.35A65AE2",D9![C@US7A+P]8VGA.S2X@CNKB[MTEO9YU#O<2,
MH+,Y/)Y/?H,"F)):>#+?3= T^+S[B_NI_L5NS[%4$M*Y9L$A5!/8GH,4 =31
M7(MXUEMYM<L+S3-FJZ5:_;!!'/N2X@P?G1RH[@@@C@^M4E\?WZV_AR^F\.D6
M&N"-(6CNU:59GC+JI0J!M."-VX>I Z4 ==JND6&N:=)8:G:QW-K)@M&_J#D$
M$<@@]QS5+2_"NDZ1,LUM'<R2)_JVNKN6X\OC'R^8S;>..,5D0^-;R-O$5M?Z
M*L5_HUNMT88+L2)-$RLP(<JN#\I!!'YU2C^(UY&GA^^U#P[):Z-K/DQQW@NE
M=HI95!4,FW[I)P&S[D#I0!WU%<9K/CFXT:&ZOKC1S'IUMJ"6):>8QS39*J9(
MT*X907X^;D GC%3W?BO4AXLO/#MAH2W%S!9I=QRRW8C1U9BO/RDKRI[$].!U
MH ZRBN$;XBR'PCH_B./1Q]CO+D6UWYMUM^QL9#$68A#N0,",\=N.>.H&IS/X
MD;2X[9&ACMEGFG\TY0LQ"KMV\YVL>O;Z4 :=0S7=M;211SW$43S-LB5W"EV]
M%!ZGV%9.N>(X](U/3-. M_M.HF00FYF\J/Y "1NP?F.X8&.>?3GD_&%Q<37?
M@G4+G2O*U!=;,9@5PS<)*  Y ^4X!SP.: /14ABC>1TC17D(+L% +'ISZT^N
M0L_&ETR^(X;[1)4U#1%21[6SE^T>>KH638=JG)P1C'&*L:=XHEN_%3>&]0L(
M(;EM/%\/)N/- 7<%9'!52&!8>Q!H W1J>GFUFNA?6QMX6*RR^<NR,CJ&.< C
MWJRCK(BNC!D895E.01ZBO'1;0?\ "H/'\7DQ^7%J6I&-=HPF'.,#MBO5M( .
MB6((R#;1_P#H(H GM[NVN_,^S7$4WE.8Y/+<-L<8)4XZ'D<>]35Y)HFO7?A/
M2O&=]9:*EU8V?B"ZEN,3B'9'B//EKM.X@<X.T>]=QJGB6ZMKAH['31-"EA]N
M:ZN93!#C.%C#[6&\X)P<8&.N: .CHKBW\?,=*\,ZM#I8.GZW)%"99+C8;9Y.
M@8!3D9&,Y'..F:U=2\3II4FK374"C3].A1WG67YFE?I$%( !Y7DM_&OO@ WZ
M*Y+3_&GVCQ3;:)<6UJ?M<+2P7%C=_:4#+RR2?*NTXY'4&D\>ZUJVCPZ(-+2
M_;-6MK65I)60X9P=HPIX;!!/8'H<\ '4"[MC>&S%Q$;H)YAAWC>%SC=MZXR1
MS4U>;SO?6GQAEDL=+MYM0F\.(SQ"?RX]_P!H;):3;DCC&=I)XX';7LOB!:W?
MAK3=3DMTM;J_N'M%MI[@*J2H7#[I,8VCRV.<<\#&3B@#L:*YOPUXK&O:EJFG
M2VT<5SI[)F2WF\Z"9'&0R/@9]",<'UJ#7?%E_IOB:WT*PT,WUQ=6DMQ QN5C
M5BF,J<@X'/7]* .E%W;&\-F+B(W0C$IAWC>$SC=MZXSQFIJY/3-;%SXY?3[S
M0(K+4QI$=U)<^8LC["^/*W <@,&[X.,XYJA)\1)/[!T[7K?2!-IFH7HM(#]I
MVRY9RB.RE< %AZY (]P #M4N[:2ZDM4N(FN(U#/"'!=0>A(Z@&IJ\UBFO[+X
MJ>(7TK2(KB\ETJTD:)IQ"F[=)G<X!Y[=#GVZU)J'CC4M1T'P?JFC6L,4.LZA
M%!,D\Y5U/S$ID*>"8R"WIVYX .NE\+Z-/XCC\02V2OJ<<8C29G8A0,XPN=N1
MD\XSS6Q5>9[M=/=XHH3=B/(C:4B/?CINVYQGOM_"N&\+^-;YO .D:MJT$4MY
MJDZPVB13',TLCM@'*@(H /=L*OX$ ]!HKG;3Q-*/%7_".ZK9):WDMN;FUDAF
M,L<Z X89*J0P],=.<U3\>:UJVCQ:&NEI;D7FK6UK*TDK(<,X.T84\-@@GL#T
M.> #KJ*Y34_&)LKFYL88].:_M+=);B*XU#R5W,"1&C%"6.!U( Y7UXSU^(LU
MW_PCHT[09YVUR&=X5FF$1C>)<LC @X&>,^F2 > 0#NZ*XN#QCK<VN_V$?#*Q
M:G_9J7Q22_7RU)<H5+*IX!!Y .>..XHGXE7@\*KXC/ATI803^1J :\&^%A+Y
M;>6 I\P \\E: .\:[MENTM&N(A<NA=(2XWLHX)"]2!D<^]35S%UJ\$?Q#L]*
M?1XGN7T^6>&_++O"JRAHQQD DCN.E8<OQ*OXM U#6SX;_P!!TV^DM;PF]&Y0
MCA"R#;\Q&<D' ]">P!T#^!?#YOYKV.VN+>6=S),MM>S0QRL>I9$<*2>_'/>M
M^&"*V@2""-(HHU"HB# 4#H *Y[7/$UYID]\MMI8E@LK(7<ES<S&")\EL1HVQ
M@6^4YSC&1Z\8M_XNU6\U3P0^CV]N++6D>X*3SLCMB!G",0C  9!R,Y('0<D
M[^BN,UGQ\FGIJ;V<%G=?V8^R>%[X132, &81)M.X@''.,D$#UKJK*^CU#3+>
M_MU<Q7$*S1JPVMAAD @]#S0 ^WN[:\5VMKB*=4=HW,3A@K@X*G'0@]14U>7Z
MIXMNK?X9^(=6T/2;73+BVU":VF428(?S CRC:N"Y)SS]<G&#U=UXFN+76;/1
M'MK%-4N+=[@1R7K+&P#;0J-Y>68]2-HQ[T =+156PN9KK2[:YN+5K>>6%9)+
M<G)C8@$KGCD'BN'E^(VK?V9JVHVOA.2>VTB\FM[W_355@L6-S(-OS$#)(X&
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
M\6%XV?,MEF$P3!('S@ '(P?QJ[0 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %9^O6$FJ^'=3TZ%E26[M)8$
M9^@+(5!/MS6A10!P<'AW5=5T+PYHFI62V<&DR6\MS+YRR"<P ;1'CG!8 DM@
M@#&#G(N^'=$O[?5_%3:A:>5:ZM<^="RRJQV>6J$,!T/&>]=-<ZA964D$=U=P
M0/.XCA620*9&/15!ZGV%6"0H))  Y)- '!>%+'QMHEI:^&[JVL'T^SQ%%JZW
M'SM I^5?)V_?V_+DG Z\XYR-5\)^*[_2]7MI;&QN;R34TNH;Z2ZPTL"S*Z1
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
M[!P3CBJUQX=N/$FOIJFJ6[64$%A/9P6YD5I"TP D=BI*@ *  ">I)QTKKJ*
M.%\*6WC;2[6S\/ZA:Z>;*Q"QKJL=QEIH4QM41;>&( !).!R>3UI?\(SKA\+^
M.-.-BHGUN[N)K7]\N LJ*@WG/!&W)QGKWKT>B@#SR71O%.C:OINO:+8VUY(V
MFQ:?J&G3W(B),9)5TDP1P2W7L>F3Q<\5:3XBUSPK:VWV:WDU!KZ&ZDC28+%"
ML<BOL#$ L<#&<<G)X&!74C6=+.IC31J-H;X@D6WG+YAQU^7.>*+;6=+O;V6R
MM=1M)[J(;I(8YE9U&<9(!SC/% &!K&F:G?\ CCPOJT-D1::<MR+C?*H8>:BJ
M,#/.-O//TS3O"^CZKHVO>(A/!;FPO]0>^AN%FRQW(B[-F.,;3SG\*ZNB@#D_
M%NDZI/KOAS6]*M8[R32IYC);/,(BZ2QE"0Q&,C@X[USUUX5\2W.F^.H9+.T\
MS72OV;R[GA3Y2H<Y X&.O4X^Z,UZ;10!Q5UHVK7'B+P;?K8XATF*9;O,RY!D
MB$8V\\X(R>G'OQ7._P#"(^*K'X?ZQX'M[&UNK5A*MC?&Z"9C=R^UT(SN!)]O
M?CGU>B@#S^XTKQ9HOB2/7M'L;*_%Y916VH:>]V8]KQYV.DA7D88@@C_ZUK6]
M)\0:A>>%[N2WAGFL+XW=V(I0JHI1EV)G!8@,.3C.,\9P.VHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ K,\17MWIWAO4KZP2%KFWMGEC$Q(3*J3SCD].G?U'6M.J>KV3:EHM_8HX
M1KFWDA#'H"RD9_6@#S'5;O4+SP7\.]1OX(Y[Q]5T^16CDW/+F)CDE@NTD]1R
M/>NPTKQ-J5YJVMZ-?:7;1:AI\4<T:PW1>*9) V/F* @@J0?EK#;PSXEF\+^$
M-.EM+!9M$O;6:79=$AXX4*Y!*#YFSG'0>M;%MI&KV_CK6];^RP-:WEE#!"OG
M_/NCW?>&, '=ZGI0!0TSQS9Q^#O#5\EE9Z7%J\AAAC=]EO;<.<%@ .=N ,#)
M-=AI5S>75F7OK5+:<2.FR.0NK*&(5@2!D$8/3O7&:+X8U73O >C>'M2TK3]1
M@MU>*^MGD#+(N259"R_>!/0X[\]*W/!'AZ?PSH<MA)(WDFZDEM;<RF3[-"Q^
M6+<>N.OXXYZT 2^+)3-I\6CQ3&*;59/LV]3@QQ8)E8'L0@8 _P!YEK$^%U_,
M-"NO#E[+YE_X?N#8NV?OQ#F)_H4X'^[6L=&FU3Q3<W6LZ;9SV$4"PV(D82E<
MDF1BI7 +80<$\)[UE+X7U#2/B2FM:%86,.DW%F+:^@63RR[!B5D5 N,C..3R
M,T .U'Q[-;Z1X@UBRTZ.XLM#NVM9T>8I)*4V^85^4@ ;N,]<'IQ3[[QCK,.L
MZ;I5KH-O-=:A8RW4)-[A04Q\K'9P/F'/X8'6N;6RU;5;O6KW3]!TS5]'O[YF
MPFJ/;I,(R$^>/:5)W(<D_>[Y&*Z""WU37/%GAWQ1%8Q0V45C-#-&\X+J9"O*
MX&&4;.N1D'(H =>^.;J&"]6"RLS?:=$ANK66Z(+3&,2-%&0IW$!@-QX).,=:
MF/CJ*[6TBLHX8+J>Q2]=-0<Q>4')"H0 26RK ^F,\Y&:LNC^*]!\6ZG?^'XM
M/OM-U=TFF@NYVB:WF"A"P(4[E(4$CKQV[IJ>A>*=-\2VWB+1'LM0N);-;/4;
M6Y<PK+M8LLB$ [<%F&#GCU- #8OB)=SV'A^XCT"17U2\:RDBEGV-#(H8\97Y
ME.W(;C@].U3VWBOQ%=:EK.C1Z#8_VKIHCD)-^WD/'(I*X;R]V[@C&W''4=UU
MG1/$.IS^&[F5;26>QU'[;=*DI5$78R^7'E<M@-U.,D'IG L6&D:M9^-_$6LM
M:PM;7\%O' !/\V8@P^88X!W>IZ4 16OQ M;[0-!OHHHX;C68V>.*XEVI$$'S
MEF Y . ,#G(Z<D9]S\2+RT\/:K?OHJR3Z;=QVT@2<B*99&"K)&Q7YAEN1QC'
M6L^Q\$^)])\,>%Y+!K$:[H!F0PR2DP7,4I^9=V 0>%QQU%:_B31O%/B;P9=6
M=Q!80W]S- RVR7!,4"1R*YR^W+,<'H !QZ$D T;7Q-JK>+)M O=*MK>:2Q:]
MLG6Z+A@K!2LGR#:V2#QN'N:A^&VKZMKGA./4-5$!>6:<J\<C$G$T@QM(^4#
M Y/ J672-4F^(UCKWV>%;*+39+20&;YPSNKY Q@@;<=:H^'-)\5>&/!EQI=K
M:Z9/>6TTALR]P^V=7F+DO\HV85CQSDCM0!W-4[S2K+4)[::\MHYS;%FB610P
M5B,;L'OC(_$U<&<#/7O2,2%) R<<#UH \R\$:'IFJ7GCRSO+&WE@?6I8MK1J
M=JE%X''%+;7.I:;\0?'<FC:;;W4RP6,C":?R4P(G.,A6)8]N,>I'?=\%Z'JV
MBZIXCFU""!8M3U%[R$Q3;RJD ;6&!SQVS3;71-7MO%7BS4S;0-!JD,$=L!/\
MV8T9?F&. =V>,]* 'Q>/+6[TK0KBW2**XUBV-RB7,NU(D4+NW$ DX+*  .?;
M%7_"GB23Q%;7OVBR-K<6=RUN^TEHY0.DD;$#*D>W%<A:^#O%&CZ)X6N],^PG
M6=$MWM)[:64^3=0OC(#XR#E01QU_7O=%_M=[5I]96WBN9#D6ULY=(5]-Q +'
MJ2< = .F2 <\FLZT_P 5+K266U_LVWTV.<+YS @/(07/RX+?)TX '?DU6;XC
M;H].O[:SBNM-O;A8ML,K-<1HQPLI0+C;T)&<@$?2M"?0M37XBOK,$=K+IUWI
MJ64_F2LKQE9&;(4*=V0V.HQ_/,\+Z/XT\/VT/AMFTZ71[9MD&I^:WGB#.0GE
MXP7QQG.!UYQ@@%R'Q;KM[XCU72+'P_;R?V9=013R/?;08Y%W;A\G) .=OL>3
MQ6?-\0M87P_K.LQ^'[8P:->S6UVC7QW,L1 8Q_)R>2>=O;KVV= TC5+#QAXF
MU.Z@A6UU.2%X-DVYAY<80AA@8SC/!-81\):\W@GQ=HYM[476LWUS<0'[0=BK
M,<C<=N<C'8&@#;C\67Z>*=)TV]TJ*&SUB.5K*9+C?(#&@<B1=H"Y7T9NE48_
M%TEIIOC+4(M!MHY]&G?SDCGQ]IVQ!RY8)UVX'(/3K4]YH>L7/B'P?J"VUN(M
M(2870,_)+Q>7\G'..O.*H/X6UU],\=6WV>U#Z\TAM3]HX4-$(_G^7C&,\9H
MT+/QCJ3:UH%K?Z1#;V>N0LUM*ESOD1UC\PAUV@ $9QACTYQ3+[QQ=Z;-:27F
MEI;VUUJHTZ.*:8I<,I?8)@A&"I/. >A!SVJ.;P_K4E]X)G%M;A=%5OM0,_4F
M$Q?)\O/KSBL6?P=XLFTMK:6'3)[R'68]0^W27+![Q%FWJK?)\FU<#J0 , 4
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
M_;+=].+2I<CH8P2HQ)G''.0<^U-U+PKJVH_#_2-.AF@L];TK[--;N6+Q>="
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
MRRG:W<$9R.PK/B\?ZU_8_AK6I-%M38:S+#;^6ER?.624':0"NW;D8ZY[\=*
M/0V 92#G!&.#BL_2M"T[1!<#3X&A%Q*9IAYKMOD/5CN)Y/<]ZPK+Q==VVMZS
MIGB"UM;8Z?9+J(EM96D0P'<#G<H.X%#VY]JJP>-[^2_T?_B5B:SU-@A\A)"]
MH6&4,A*[2IZ$C&/>@#N*S-0\.Z/JNHV>H7^G6]S=V1)MY95R8R>>/Q /M7%3
M_$+78_#^M:TNAV0M]&OY;:Z0W;%G6-@K&/Y.3R3EL?2M*?5]9D^*MCIMN]M_
M9K:1)="-BP+9EC4L?<#@#W//- ';4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !69I?AW1]$N+NXTW3K>UFO)#)<21KAI&)S
MR?J3QTYK3HH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !112,RHC.[!549))P * .:USQE:Z)XKT30YHR3J3E&F
M_AA)!\L'W=E8#_=-/\<Z_>^&/"\^K64%O,\,D2LLS$ !Y%3( Z_>]17(ZUH6
MM^+?"FJW=O86?FZA*E]87#7CI-$L>#!A/*(!P,XW=9&Y&:;XJ\01^*_@.VKI
M\KW M1,HX*2BYC5Q[88&@#U/-&1ZUYQ=Z#:^'/B=X<FT)9+<ZBETNI(LC,)H
MTCW"1\DY8.5^8\DM5#PZ]SH6M:-8:OI5O<7,L<O]F:[8D;;[]VS8F!^8,5^;
M))R>G>@#U;(SC//I1D>M>1^'M/B\3^$]$\12:U9VNH6]PDUQ=PVA^U&?=AX7
M;S,D,3MVXY&T 8P*BE\/Z;?0_$W[5;F;[+*\D D=F$3BV#!UR>&![]: /820
M!D\"BO,-*U-=4\1>$M,UQEGM;GPW'=0QW'S)<71V;B0>&8)DC/3<32:JECX=
ME\/:#::@/[%GU.XCF:^'FPI)L+1P$ J"@9N%S@%1G.* /4 01D'(H) &2<5R
MWA708] U768H=1CE2Y>.X-C!!Y4-H2""4&YL;\9(SVSWK.DDCU;XLWFCZM#'
M-:0:3'-9V\ZAHW+.1))M/!;[JY[#/J: .NU;4H='T:]U.X#&&S@>>0+U*JI8
MX]^*RM$OO$%[<VMQ=V]@=+N[-;A7A++)!(<'RV!)#C!^\-O3I7!&V+?#CXA:
M;=1K<Z?I<]XFFF<;_*419"J3_<+$ ]1T[5Z+X3LK2Q\+::EI;0VZR6T4CB*,
M(&8HN6..I.!S0!CGQ/K<OC>_\-VFGZ>[6MHET)I;ATWJQP%P$.#D>]7O!_BQ
M/%5G>E[-[*]T^[>SN[=G#A)%Z[6 &X>^!7':E::O>?%CQ)'H>H_8=1&A0F"0
MQHZEM[8#!@>/<=/?I5KPK?VMG\+=;N-#M9+;6K6*YDOH)F,DPO@A+%R>6)(!
M'J,4 >DY&2,\BN7\/>(-6UR#Q)&;>RBO=-OI;.V4,QC8K&K*7/7JW. .*YW0
MM&LM0A\+^)K76;*%EV#S+2U*RWA=0&BE8R,7.<DY&003QS4-E$DWAOXH*^[
MU"\8;6(((MT(.1[B@#TFR:Y_L^W:_P#)6[\I3/Y)/EA\?-MSSMSG&:L5YG9?
M8KS3O &GO&UW>G21-%9S,!;,ODQ@R2@@Y*YPH SECT'(YGRQ-\+K>)YB?LOB
M<00F)V4(GVO "C/ QT]* /<LT9&<9YKRZ\@'A?Q[X@70(!"S^%WO?)3)$MPD
MC!7(/5NV>IK2\-Z;X?U'0_"GB**Z9+U40_:(7'F74KIB1)3@E_FR2.VTG@"@
M#O\ (SC//I17D&DV*>+_  DVK7>L6=AJEI>R2W-VEH3=VLJ2GY"_F=,84+C&
MT@ 5ZXLL;2/&LBF1,;U!Y7/3([4 /KE;;Q+J$WQ"N_#+6ELL-O9K>?:1(Q9E
M9MH7;C@]><UU5<!9J'^.>L(W1M"A!P<?\M30!W^1ZT5X1<:39Q?"37-76-O[
M0T_5YVL[@NQ> K=@#82>..OKWKW20XB<EM@"GYO3WH ?D>M4M-.IE+G^U%M
MPN'$'V8L1Y.?DW;OX\=<<5YSX7$VC>(-$TG7=+MWN)HI4T_7;!OEOEV%F\X?
M>#E1NR2<G..]4[:*[3X8^.H=-NOLTT>MWJ1NTI7Y%E4% W4%E!4>Y% 'KX(/
M0YHR/6N"L_#BWOCRVU:VTN33]*BTWRY8F'D[YRPVX12,E5R"W3D $]N%ETJS
MA^$6IZRD;?VC8:O*UI<EV+P8O /D)/&1U]>] 'M3G4_[:B"+:?V7Y#>826\[
MS<C;@?=VXSGOG%7<CUKA;N!!\:[$_-^^T*??\YYQ+&./3CTK@;K2;.+X3>(]
M66-O[0T[5[AK.X+L6MRMR -ASQQU]>] 'O!('4XHKAM8B\SXDHNH6W]HZ8^C
MLJ6JH)3#)YG+-'_MC"AO]DC@9J_\/-!N_#_A"UM=1#"_8N\P:4R$ L2BDY()
M"[0<<<=^M &X=5MWU.?2X)$DOX8!.T9; 4,2%W'G&2#V[5E^"=?NO$OAB'4[
MV&&&=YYXC'"3M&R5D&,\GA:P=,TW3A\9]?F:RM1*NGVDJN8ER)"T@+ X^\>!
MGK7$IIMI#\(8=>2,C5+36"UO<[CNBS?[2%] 03D#KGF@#VDG4_[;4!;3^ROL
MY).6\_SMW''W=FW\<U=R,XS7"F)(OCAO4L/,\..S?,2,_:$&<=N /RK&\,&;
M1?$.A:=KFF6\TLXD_LW7[$@B]!C9B)@?F#%?FSDY/3O0!ZG7,VGC*UNO'U[X
M6$962WM5F28])&S\ZCUVAD_-O2MC6-232-(N;YD,AB3Y(QUD<\*@]V8@#W->
M8>*-,U[P[HVB^))+&R-SH%P;J[FM[MY)+B.4_P"D?*8E')8M][@#O0!Z[1UK
MBO&$S7DOA2[MW6[TR6^5YK5"";I#$Q5@O\87[Y7VSVK!N_#+6?A[X@ZE);26
MMG<VTSZ? 7*&-5ARS;0<*&D&X#KZ@9H ]3R#T- ((R#FO([VRL/#?@WPUJ<
M2V.K2:?;ZK=S,[JT7EDCS!N V[MH/08.#QQ4_B/3Y/!^E>(]6TW5(HY+JSB=
M[*PMC%'$HD56G4!SM;8S<@C.,]J /500<X/2C(]:X33_  UI_P#PD&G:Q;:I
M8I!=VSP?9M-MC%'>QE=P9B';.WJ&]\9YK@[72K1?@SX<UI4<:I#J$0BO!(WF
MH&NRI"MG@$$Y X)YZT >[YHR,XSSZ5YI):1^'/B;?)H=L(3-X:FNGA3)$TZ2
M@(S#^)OF(R>3FJWA[2K77-"\+^)8];LX+F*2%Y;FWM2+BXD;"R0ROYA+;F)!
MXZC(P* /5,CUJG-JEI!JMMICRC[9<H\D<0Z[%QEC[<@?C7C\^A:?/X+^)%U-
M"TDUCJEY):.TC$P.D4;*R<\'..>N!CI70/9V5]\2O"MU>VEM-+-H<LLLDL2D
MLRF(AB2.HR<'M0!Z914<<\4Q<12HYC;8X5@=K>A]#7#>.[2'1-8TCQND"L-/
MF$.H?+G-O)\OF?5"0?IF@#O: 0>AKRSQ%<M9>%1KR+]GBU[6;;[;,@VLEBSA
M1DCD;D52?>1JU-2TZ+2/B;X<ATBUB@M-3M[J+4;6) L4D<:*4=D'&0S!<XZ-
MB@#OZ*\1/E+\!K=FV"6'5MD1/WD/V\@@>GRY_"O8]5N(;31[VYN9W@@AMY))
M)8_O1J%)+#W YH MY!)&>11D>M>1Z5#%9^*OA]+9PI:VU[9W2[RX-Q=1>0'5
MYV7 +$X;'."2<TF@Z+:1Z1XPUN&V>;5=(U?4GTYC(Q\IE3"@#.#GISG/'H*
M/7<C.,\T5YEH.CV>IVGA?Q-;:U90NACS+:VI$MV7 #Q2L9"7).<Y&003Q@UJ
M?%^)9/AEJSG<&C\IE*L1@^:@_D30!W.:,C.,\UYU<:?!H'Q5L6TFWV2WFD73
M7"AB3<NC(4+DGYFR3R>>:Y\K%J'P.'BE'QXBB0W7]H*,3BY$N"N>N,_)MZ8P
M,=* /61JEH=8.E+*&O!!]H:,?PINV@GTR<X^AJY7G.FV%I)\8[FXN]/M$NSH
M=M</F)<K,97!8'^]P!GKP*N?%N!9? S.6=72]M=K(Q!&9T4_H3UH [K(]:Y[
MQOKUYX:\':AK-A!!/-:Q^8$F8A2,X[=>O3CZUR^OV&G>'/$/A_2+1+:RTS5K
MJYFN?M2O-#+<A$"!P7'7YB 3@L <9JAXIT*/P_\ #?QQ:PZDD\<J"?[)##Y<
M5H6(RJ#<V <9VYXZ]Z /58F+PHYZLH)Q5?4SJ TRX.E"V:_"'R!=%A%N[;MO
M./I7$^,K2'0]0T/QND"E;!U@U'Y<YMY %\SZH2#]":H>*;&"Y^%?BK76A"3:
MG&]VA7Y2(P L6<>J ,0>[F@#TV,OY2>;M\S W;>F>^/:G@Y&17FVL:;:WWQ!
M\%Q7",\4^FW8F3S&"N%2/ (!Z<G([YYS61%;W-I\/_'^FZ1.+1+/6)8[9/,V
M*D7[IFB0_P .[+* .[4 >P @]#FBN$T_P\+CX@V^M6FF/I^EPZ<(WB9?)#W&
M\%?D!Y*KD%NG( SCA_Q31/\ A&+.<JN^+5+,K)CE 9E!P>V1Q0!W%&1G&:X*
M6&WE^-%S;X4++X<)F5&VECYX&3CG.,<^E<!%H5NOP.TCQ39F8>([3RWM+H2L
M7+F?9Y8&<;3DC;W)SW- 'OA('4T5Y_H\-MXG\8>,;'7K6*Y>TEA@@@F7<(H&
MCR&3/0LVXEASP/05R5FMUJ>@> 6U2>XFD&MRVB3F5@\T"B8*20>I"CGJ<=:
M/;<YZ4$@#).!7!^#+.WTGQ_XRTNPB6WL(_L4T=NG"([QMO(';.T9JWXD6ROO
M&6D:<T7VR^6UGF2TN& M0F54RR @EF'10/5N@YH [&C.:\.@C%U\,?#"2SNQ
MA\3I C1RLNV/[6R@#GH !CTP,5UFGZ'IMK\3]<T2"T1-,OM%AGN+89V/(99%
M+D?WL#KU[T >BT5Y5X<A#QK\.;R!9)=+OO-F=D_UMFI$D4A[$L2B'VW5VWC:
M)7\!Z\IW )I\[+L8K@B-B.GN* -_(]:,CUKQR?0+;2]#\ >(M)$L>M37%A!)
M*)6)N(I$&]&YY4*,^P'%:.@>'["ZU_QA=O:/=76FZOY]BC2O\DHA1@1SSDGO
M0!ZED9QGFC('4UXU(L5Y\#X?%-N__%11(+H:@H_?FY\W#*6ZD$Y3;TQ@8X%;
MD6CV>J_%;4[?5+59HYM#MY9[>1BT9<R.#E2<'&!QTXS0!Z3D<<]:I,=3_MN,
M*MI_97D-O)+>?YVX8P/N[=N??->+?V;;1_!2/6@KMJ>FWX2SNGD9I(%6^\L*
MA)X&WC KO98EC^.%JZ[@9- F+98D9$\8Z=J .YR,XS1D9QGGTKRKP^T^B:]H
MEGK6F6]RUP\ATSQ!9$?Z66C=MLX(W!BI)SR"1]:K:!81^*_"&FZ_<:S9V>I6
MUR)KB[BM#]KCG#D-$S>9D@YV[,8(V@#I0!Z]D9QGFBO*]3,VB:_+?ZMIMOJF
MB7&KI)%JUL1]IL91*JK'(",E Z[/E/3COBNL^(VHZAI/P\UN^TLLMY%;$HZ=
M4!(#,/<*2?PH ZC(/?I1D>M>;Z_96FDS>"]5\-1I%-<ZC!:NT(Q]JMI$8OOQ
M]_ 7?DYP033/!GAO2K[Q%XFNKJ!Y9=/\0/):EIG_ '3"*/D<]\\YSG ]* /2
MZ*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH *S==LYM0T>>TAM[:X,HVM%<R
MO&CJ>H)4$].V.:TJ* .6M[?Q3:V"V4&GZ(ENB;%4:A/E5] ?+R,=N>*S+7PK
MJ%GIMUIL'ASPTMC=',]L;N9HW/J5,>,\#GKP/2NZ61'.%=6. >#G@]#21RQR
MJ6C=74'&5.1F@#D=/TGQ!IC,UKI.AB1D$9DDU"XD?8.B[FC)"CTSBHM/T#6M
M+>!K/1M!C^SJ5@4ZA<.L(/!"*T9"9_V0*[,2QLVU74MC=@'G'K2F1 VTNH;.
M,9YSUQ0!P4/A"\M]?;78?#'A=-39BYG%S-G<>K8\K ;WQGFIAX<UA5OP-%T(
M#4,_;!_:-S^_SQ\WR<\<?3CI7;>;&93$'7S ,E<\X]<4>;'YAC\Q=X&=N>?R
MH X2^\)7^IZ3:Z7>^'/#D]G:X^SQO>SGRL< *?+RHQ@8![58N/#^K7>A+H<_
MAWPP^EJ %M3<2[%QT('E<'WZUV;2QHZHSJK-]U2<$_2E:1$SO=5P,G)Q@>M
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
M73FT^]MUFLW 5H22%8#L0.H]JNT4 97_  C>D_;+.\-J3<V2>7;2F5RT2GJ
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
M(D7<(F^S*VY0?NMGN.:5;"UMM-^&.MQ0JNJ7=Q:I<7G6699+9BRLYY8' X/
M[5Z0OAK14%Z%TV "^_X^@%_U_P#O_P![\:1O#&B/!9PMIEN8K(AK5-O$!'0H
M/X<>U 'EGBR2SF\->(M4TW:##K\0:\NG#7!N%FB1EBQ@HBC(&23C=P <UU>F
MS6NN?$_Q38:M'#<"SMK9+&"90R^2Z$R,H/!RY )]E%=%/X-\-W,M[+/H=A))
M>\W+-"I,IR#D_B ?J*EO?"N@ZC-:S7FD6<LEJFR!FB'R)_='^S[=* /)M OD
MT_P3X)M);B&WTB?5;Z*>2=-\6X23>4KC(R"W/)QD ]J]&\*:)::+K&M?9-22
M?[6T4\EI!&$AMV((RH!."V,D9[ ]ZTAX4\/KI$NDC1K(:?*=TEOY*[7;.<GU
M.>_6K6DZ+IN@V(LM*L8+.V!+>7"FT$GJ3ZGW- '%ZQI5AK/QCMK34K9+FV/A
M^1C#)RC'[0OWAT8>Q[X/:L/3_!B:SX7\7>'[10;2QU20Z(\GS""155BBD_P!
M\J?JU>G:AH>F:K/#/>V44L\.1%-C$B ]0&&" ?3-5=4_M/2--M8?#.CV=QME
M"- \_P!G2./!RPPI[XXQW- &!X0U&'QK=VOB![)8O[.M?LH1X\&.Z;!F49_N
M[44'_::KWCB6Q*Z):7:2RS7&IQBUMQ($CFD4,0)20?D'7&"20N*VM$TS^R=*
MCMG9'G9GFGD1<!Y78N[ =@68X]L4_5=&TW7+5;75+&"\@5Q(J3(&"L.A'H:
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
M(]B#0!I4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 5%<R/%;2/'"\S@<1H5!8^Q8@?F:EJM?Z=
M8ZK:M:ZC9V]W;L03%<1"1"1T.",4 <+X$M=:\+^ ;+0;_P -W%Q<0"4/Y=Q;
MF)]\CL!DR XPV#Q5N>PURZ\9>%=6N;$%;.VN1>-'+'MC>8)A5!8%@NW!..>O
M-;/_  @OA'_H5M$_\ (O_B:/^$%\(_\ 0K:)_P" $7_Q- '-6FCZS#HGCFW;
M3'$VL7-Q+9KY\7S"2)8QN.[CE<GV/>FR^'=8&C^"M0M[0#5?#BK'+9O,@\]#
M$(Y0C E<\97)'OBNG_X07PC_ -"MHG_@!%_\31_P@OA'_H5M$_\  "+_ .)H
M Q;S1+[4M;U;Q$UC)#,^C'2[2T:6/S&W,SLS$,5 R5 ^8\ GT%4Y_"^LWGPK
MT32X5CM-<T<6LT*32*R/+!C@E2?E.#_6N@@\'^";KS/L_AW0)O*<QR>790ML
M<=5.!P1Z5-_P@OA'_H5M$_\  "+_ .)H R+NTU_QIX7U/3M6T^+0Q<VC0I']
MI6=C*<$.2O 4$=,Y.3TP,S^'M0\97:PVNM:1::>T"XFO%NUE%RP&!L0<J"<$
M[CP!@=<C0_X07PC_ -"MHG_@!%_\31_P@OA'_H5M$_\  "+_ .)H X.+P]XK
MFM?#T]YHMO+JVGZLMQ?7<E\A>Y4"0;E.#A!N'R\$= M=%I]EK>AZSXG:'2Q=
MC5+D7-K.EQ&(T/EJF) Q##!7/RJW%;7_  @OA'_H5M$_\ (O_B:/^$%\(_\
M0K:)_P" $7_Q- ',?\(C>Z-!X%T^P@:\@T29I+J<2(F=T;*2 S _><G'I6MI
M=CJ-G\0/$NK2V$AL[V"V2W=98R7,2N#QNR,[AC/XXK1_X07PC_T*VB?^ $7_
M ,31_P (+X1_Z%;1/_ "+_XF@#BK;PKKT7PLTC2C8+_:FF:E'=FW-PF)56X,
MF%;. =I[XY%;_CNRN[[P[8:E:M%::]8W<,MEEMX$C,$,9(ZA@Q![?@*UO^$%
M\(_]"MHG_@!%_P#$U3'PS\%+JC:C_P (UIQF9 A0P@Q >HC^X#[XS0!?>*]T
M#P[:6NBV(U*:$QQ,CSB(LI(WR%CU/5CZFMRL_3-"TC1?-_LK2[*Q\W'F?9;=
M8M^,XSM SC)_,U;FNK>V:)9YXHC,XCC#N%WL>0HSU/!X]J .3^)^CZGXA\#W
M>CZ39FXNKEXB,R(BJ$D5SDL1V4],TGBRQU75KKPQ-9Z5,PLM22\N5:6)2B!7
M4C[_ "WS9XX]Z[*HA=6[736HGB-PB!VA#C>%)P"1UQD'GVH @U);V;1[M=/=
M8;][=Q;M)@A)"IVD]>AQZUYUI_A_Q&NK^$-3E\/Q17&GB=-1EDO4>69WBV&5
MFYW#/(Y)YQ@ 5ZC10!YA)X:UZ7P)XSTK^RG%WJ^HW-Q:J9HL%)6!4L=W!&.1
M^6:V/&FG7-SX/T^\M@+36].G@EL?,P?WVX)Y9VDY#;BIP>X]*[>L=_"^CR>)
M!X@>SWZF$"+*TC$  $ A<[0<$\XSS0!;TG3UTK2;:Q5R_DH TAZR-U9C[DDD
M^YKC/M5Q:_&?4VAL)KM3HEN&$+H&7][)C[[*,=>_I^'?22)%&TDCJB*,LS'
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
MM;Z&&9"[%A'() R'  (P<C<><$5Z/6!J'@W1=1U1]3>*YM[Z0!99[.\FMFE
M& '\MEW8''- '/V>N7?A_P (11:5X1E@_LVY6VNK&6[3=%&5#EU<$B1CO7C.
M26KOZIVVEV-G;Q00VT82)MZ;AN(;^]DY);W/-7* /-)OAS=75EXFTR65!822
MR3Z*H/,$LFV1F]MLBX7O@MZUT0TK4T^'MY9SQ"XUF]M)3<*C*H:>53D9)QM4
MD <]%%=);W5O=HSVT\4R*Q0M&X8!AU''<5+0!YU)X?UV+1/ <D.FB6[T-HUN
MK8SHI(\@Q%E;)! //KCM6CI^G:O:^-?$^J3:7(;>_M;:. I-&=S1JX;JP(!+
M<$XZ<XKM*9++'!$TLTB1QH,L[G 4>I)H \NT?PAK^D:3X+U!+'=J.@I-;75E
MYR9FBD&"4;.W(X(!(SSTK9O?"=[KEUXHU.6+['/J>DG2[6&5U+*-KY=]I(Y9
MAP">%]\#N8I8YHDEB=9(W4,CJ<A@>A![BG4 >:P:7XIN[CP3+-H26HT5BER)
M+Q&)_<&/<-N?ER<CJ?4#ON^%=+U71]?\2)<V:?8K[47OH;H3 [@R(NW9U!!4
MY)P/3-=3<7$%I \]S-'#"@R\DC!54>I)X%/5@RAE(*D9!'>@#E/&6F:CJ.I>
M&I;&R>XCL-36[G82(N$".O&YAD_-^E1VVGZI;_$36M8;396LKBPA@A=98\N\
M98G@MD [N,^G.*["B@#RN+POX@B^%>@Z"=*<ZA97L,LR">+;MCF\PD'=SD<#
MWKI3I^I_\+077/[-E^P#1C9[_,CW>9YHDQC=TP,9]?;FNOJ);JW>Y>V6>)KB
M-0SQ!P64'H2.H!H \Q3PGX@/PVDTS^S@NHPZO]OC@:=,2I]I\W 8$@';QSCF
MM?4]/\2:AXD:6YTB&[TV:P"6\3W:B.SGRVYG7'S$@KA@#C&!U)KMY[JWM?*^
MT3Q1>:XCC\QPN]ST49ZD^E NK<W36HGB-PJ[S$'&\+ZXZX]Z /-+#PUXDL_#
MG@8MI4;7FA3D3VPNDRR&)DW;ON]3G )X]^*V)O#^H:CXZU>YN[-XM-O]%73C
M.DJ'#[G+$#.[&'X..W05V=O=6]W&9+:>*9 Q0M&X8!AU&1W%2T >:CPSKNH_
M#F'P-J-AY?EB*UDU%94,+01NI#*,[]Q50,%1SWQ6S8:=J=GX_P#$.JMILK65
MW:6\-NRRQY=H@^>"V1G<,9].<5V-% 'G?AU_$'@KP/X;TV?0O.=)Q:WI^U(/
M)5Y,*Z@$[\EQQP>/QKK/%<&KW7A74H-!F6'5'A(MW)QAO8]CC(!['%7V>REO
MTA9[=[R)3(B$@R(IX+ =0.<9JS0!YUI>B:S:>-]/UN/PW'9V@TJ2UGB%XCRK
M(9$?<Q_C8[2 <G/4D5GQ^%O$*?">R\/G2G_M&&_6=U$\6W8+HS9W;O[IQ]?;
MFO5:* .(\>Z3=7S:%?Z7<?8M92Z%M$Y&6,4RE95XX)507_[9UV-K:PV5G!:6
MZ!(((UCC0=%4# 'Y"LVU\+Z/9^(+K78;/&I7/^LF:1F[ ?*"<+P . *V* "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "L_7-3.C:%?:F+9KG[) \QB5@I8*"3R?85H5B^,?\
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
M3NSD<GIQ7H5DTK6<)FA:&0* T;$'!^H)%<3%H&NV<GC2W2RAFMM7DDGMIA.
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
MUID\KG3C-B)H95"M$),#+84'<1C)/8"@"KXXU"XUCX9^+H=3T9[.>Q1D4O\
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
MM+ :DLL%P9E:#<RMNRJD,"O3FJD/CYWU#1T-C!+::HP1#;7/FRVS$93S5"X
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
M?E"\Y.3["JL/A#6;*Q\&:A;QP'5/#]M]DGMC+A+B)HPC[6QP?E##('O7HE%
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
M<26DC\OA0,.,\@9'U%:,NA:J/B#9:W&+>6RMM,>R8R3$2NS,K;L!<?PXZ]Z
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
MW5QXQ'AZ\-C-(^GF\,EHQ_<NKA6B<$G)&X<Y'TJO\,0!H>K =/[;OO\ T<:
M.VHKGKC7;FZ\37.@:4+=;BTMDN+F>X4LJ;R0B!0023M))SP,<'/'.W'Q'O4\
M-M?0Z3";^TU9=*OK9ISB.0N%RAQ\P.X$9V]>^* /0Z*SM'DUB2VF.M6]G#.)
MF$0M)6D4Q\;22P!SUSQVKFU\8:@=&\771MK;S_#\TJ*/FVSJD0DY[J3G'?'O
M0!TFG:'IVE7%S/96_E2W3[YV\QCYC?WFR3D^_6M&N)F\8ZNVI^&;*TTRT?\
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
M1ZDT <Q#8^,=0T:^AUN32$N)+62WABLWD$;LPQYCLRY&.R@=SSTQGGPAK?\
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
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
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
M[ 4+R--GKM"G[O7@<=:==^)-9T&UU:76K"&2*"6"*PN;?*K=M*0H4IEV4JQ
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
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% %*31M,EU--2DT^U>_086Y:%3(H] V,BKM%% !11
M10 4444 %%%% !1110 4444 5(=+T^VOY[^"QMHKRX $UPD2B20#IN8#)_&K
M=%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !115>^^UBQF-CY7VH(3$)@2A;L#@@\^M %BBO.X/'6M7GPJF
M\6VMI9-?6HE:YLF5P$$;$.N=V=P +>_IWKH+G7;Q_".GZIISVDUU>_9_)#(W
MER&4J!@!LC ;)//"F@#I**@:XBMQ$ES<0K*_ R0F]O8$_IS5>\.H#4M/^S3V
MB6A=Q=),I,CC:=HC(. <\G.>* +]%,6:)L[9$.!DX8<4U[F"*$S231I$.KLP
M"C\: ):*9YL817\Q=K8"MG@YZ8^M+'+',@>)U=#T93D4 .HHKB?%OC:Z\&Z]
MIHO[>*;0[L/Y]Q$C>9:!2B[VY(*YD4$\=?S .VHK%UK4[RVCTV73I+1XKNYC
MA+2*7&U_XE*L,_U]:U9+B&WV">:.-G.U=S!=Q]!F@"6BBH_/AY_>IQU^8<4
M244SSHL*?,3#<+\PY^E-%S ;@VXGC,X&3'O&X#UQUH EHK/B>_36;O[1<6?]
MGB*,P1J")5;G<7).,'C&!ZU=\Z+9O\Q-N<;MPQ0 ^BHI+F"%XUEFC1I#A S
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
MM^$O$FOO;Q2QZC92"!GC&3;HC>6>?5MSCV8>E8UM9ZI<>$? MUHDMC-J%KI
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
M#DHD 0?.//0#/KQQ0!V9U&Q#QH;RW#2.8T7S5RS#JHYY(]*=<WMK9(KW5S#
MK' ,L@4$_C7A\NEZ=#\%M;OXK2!;NVU:0P3A!OAVW@"A&ZJ ,\# Y/K7<:M=
MQ:=\4)9KEX+R&?11%]E:>-&A_>'G$C*"K\@X)/R<C&* .^#!AE2"/45!/?V=
MJ'-Q=P0B, N9) NT'IG/3.#7._#KPZGAGP58V'^B-/AGFEM@"KL6)'S#[V 0
MN3_=KG[#P_H>I_%3QE;ZAIUI<1FVLI/*EC!4EED#/MZ;O]KJ,]>: /1)KNVM
MK?[1/<110<'S)'"KSTY/%(+RU-I]K%S#]FQN\[S!LQZ[NE>0^%)8;/2O!^GS
MDR7)O;]M'ENI2(4@3<H=A_&=K?(..O4"LR]^QW'PA\;1-+:SFWUZ9XC&  @,
M\?S(,G:#DXP>_6@#U_5/%.CZ2UNEQ?P>;<72VB1B1=WF$C(//& <G/3\16C%
M?6<\OE0W4$DF,[$D!/Y"O/O&V@Z+I,_A5[33K.V6?Q';&=EC4;_W4@^8]^@Z
M]34GB>2W\'^*-/\ &EI;B73[V'^S[];9 2V>8)%QU^8;,^C+0!Z!#<07 8P3
M1RA3ABC!L'T.*EK#TB.V\.Z-:1:C<6UO=7<VZ5F<();J4EF5<]26) '7 'I6
MY0!DZC_;TFH11:9)806HB+2S74#RDOGA5"NO;)))]*Y?PIXB\6>)=!M]80Z1
MY9O3!+;+:R!O+678[*_FD9V@L 5]J[ZN!^#A!^'\>"#_ *;==/\ KLU &CX3
M\37%_P#VVNM75E')::S+I\!0>4KJJH5 #,26.X]ZZ:ZO+6QA\Z[N8;>+.-\K
MA!GTR:\=N]+L+OP1\3[NXM(9;B'5+TQ2NH9HRL<9&TG[ISZ>@]*VVU2(^.K.
MUUG4Q9Q7.A0M923+&8Y&);SAF0$;B-F1W % 'IJ.LB*Z,&5AD,#D$5R.I^([
MB\\47'AO2-0L[2ZALA<>?,HD#2LY58\9']TY[\C&*N^"=,T[1_#<=CI-]/>V
M$4L@AFE96&-Q)"%0 5!R!]*Q+6"T7XSZN[01931K>7[@)#>;(2WUZ<T =;IV
MH"2.&TO;NQ.K+$IN8+:7(5\#=M!^;;GID5'&=2;5-307]DT7EQFUA\HEX#@Y
M,GS#<"1QTZ&O*$O]/;3_  %?6$UO;:>^N%X(Y9=]SL82[WD?/<GE<<9&6-=C
MX7B@@^*?C@01QHK1V#L$  ),;DGCN: -'P-XEEU[P9I.IZI-;1WMZ')13L#$
M2,H"@G/85TB7-O)*\23Q-)']]5<$K]1VKQ?3S&OP?\ 3R%0D.O6SM(W1!]H<
M$D]JZ61M/O?BIXCMV-M.DF@1+)&=K!B'DR".Y Q0!Z##?6EQ((X;J"1RGF;4
MD!.W.-V!VSWI+:_L[TR"UNX)S&=KB*0-M/H<=*\>M-/M-,^ ]GKME9(M^;"%
M+JZBC!F:V,R&5<]2-@/!X 'H*['1[/P_=^*[#7-.U\WMX]FT*Q6QB"/!US(J
M*#@' &>A(% ':RRQPQ-+*ZQQJ,LS'  ]2:BBOK.>U^U174$EO_SU20%/SZ5Q
M_C>Z>W\5^"X[K_D#RW\BW);[AF\L^0&_X&21[@>E-LK(P_&#5XK6-3IESI$4
MU]$!E/M)D94)'3<8U.?7 H E\/Z_J_BE+/5],O-/6P:ZFCN+&529%@5V17#
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
M9479O'0@.P ^M<]X3\-Z'<?"_4[V;2[.6YA.I)'*\09HUWR#:I/08'0<=^]
M'JB:A92S1PQW=N\LJ>9&BR LZ?W@,\CWI]O=VUXKM;7$,ZHQ1C$X8*P[''>O
M()-(TU?!GPON5LX5N)[RQBEF"X>1'MWW*S=2#@#'3 QTK5<:9H/B_P =CR#;
M::NB03SPV2A"<+*"5 QAL=_I0!Z/;ZA97<LD5M>6\TD?WTCE#%?J >*'U&Q1
ME5[RW5FD\I095!+_ -T<]?;K7EVGSVT7CCP-B:PBMY-(N(H[>%PQ2+9'L1W)
M^<GZ 9SC/6L:ZT?3%^%OCZY6RMQ-;:O>BWD"#=#ME4J$/\./;% 'MEU>VMC$
M);NYAMXR<!YI @SZ9-+-=6]O;&YFN(HH ,F5W"J!ZY/%<%#JUFOQ/OK/7YH4
M2;2(#IQN6 1D);S@I/&XG;GN0H["LV:?2-#UOPE86^H/9^'/LUU'8W,K+)&9
MPZX^:0$8*[PI]&XX- 'J4,T5Q"LT$J2Q.,JZ,&5A[$5%=7UI8JK7=U!;ASM4
MRR!-Q]!FL#P7I>EZ3!J<6D:C+>V\MZ\SDE#''(P!98]@  Z' Z$GWK+T61;W
MXF^,+'5HTDD$%L+2.900UJ4.[:#U4N3N]\9Z"@#=\8>)8O"WAJYU/]T\JA5A
MC=L!V9E4?4 L"<=JET?^V/MMVUW?V-]IKA6M)8$*R!N0ZM@E2,XP0<]0:\JN
MH'7X%7B76);:WU01Z?)+\Q^S"\14P3VP#CVQVKVN**.",1Q1I&@Z*B@ ?A0!
M"-0LC>_8Q>6YN@,^1YHW_P#?.<T3ZA96PD,]Y;Q"+;YGF2A=F>F<GC/:O'+G
M4-/N-'\,7VG2P6]B_BI)(DFDWW3$S.)'=B1M!R?EP>"N3VK:L]&T>_\ &?Q$
M$UC:3Q>1:NH:-64%K=B6 Z9/7/6@#TN2]M(I4BDN84D< JK2 %L],#O3A<0-
M<-;K-&9E&6C##<!ZD=>XKRF.PGN/A'X3\36D0GU;0;:*[BR,M+$JXECS[IG\
M0*[CPK)%JXNO$ZH0NI%1;%EPPMDR$_[Z)=_HX]* +VH>(],TS5[#2[FZB2[O
M=YCC+@$*JDECGH. /<GZU=GO[.UFBAN+N"*64XC220*SGV!ZUQ7BM+-/BAX-
MENE@6,PW^]Y0 #B-",D^G-8:'2->N/&>B^)-;6PG-]()(I?)1OL^U?)=&=2<
M!<$8/!Y[\@'J4]]:6N[[1=00[5WGS) N%SC//;) S[TV;4;&W5VGO+>)8R Y
M>55VYZ9R>,]J\WA\/Z/J'Q2@M+VT6]A?PM&S_;(P7F(FV[Y!@9?'?'!]*;I^
M@Z/+XD^(UN^FVC01+!LB,2[4S;9)4= 2>XH ],-Y:BZ2U-S"+AUWK%Y@WLOJ
M!U(J>O&(+*T@\"?#34HX(EOY-3T]7NMO[U@RE2I?J1C QG& !VKT+XA3:C;_
M  ^UV;2MXO4M'*&/[P'\1'N%R10!NPW]G<SR007<$LT7^LC20,R?4#D4-?6B
MRB)KJ 2%_+"&09+8SMQZXYQ7GFO16LNF^ =1\.K&D_\ :%M';-#@%K9D)E4X
M_AV D_2G^#/#^C7'BKQ;++IMK))::TLEN3&#Y+")#N3^Z<\Y'7 ]* /2****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ J*XMX+NWDM[F&.:&0;7CD4,K#T(/!J6B@
M"A;Z)I5K#+#;Z;:113*$D1(5 =1T!&.0,GBN?\2>&)I+/3K?1-)T:;3K:9I;
MC2KF,10W&5P""JD @DGE2"<>E=);ZKIUW<R6MM?VLUQ'R\4<RLR\XY .1S7,
M>&_%3O=Z_#K^I6,/V35FL[9CB!641HP #,<GYCW- ":'X,LX[YKVY\-:+I2M
M \#VEEB19E8J?WAV(I V\#!ZYSVKH#X<T,PP0G1M/,5NVZ%#:IMC/JHQP?I6
M3XAUG4M.\7^%K&WEA%CJ,\T5PABRYVQ,XPV>!D#M^-:]F]PVN:DLFIVT]NJQ
M>5:1H!);<')<YR=Q&1D#H: %NM T:^U&'4+O2K&>]AQY5Q+;JTB8Z88C(Q2Z
MAH6D:O+#+J6EV=Y) <Q/<0+(4^A(XJ1-6TV2=H$U"T:9<[HUF4L,'!R,YZ\4
M3:MIMO>)9S:A:QW3D!87F4.Q/3"DY.: 'V6GV6FPF&QM(+:(L6*0QA 2>I('
M>H+W0M(U*Y6XOM+L[F=5VK)- KL%],D=/:JK>*M(7Q0/#WVV#[?Y/FLAD VY
M8!5_WCDG'7 ]Q4^DR7#/J)N-3MKU5NW$8@0+]G3 (C?!.6'7)QU'% %;75\1
MM):VV@KI\=O*KI<3W#-O@X&UHU PQ'/!QVK4L;*#3M/M[&V39!;Q+%&OHJC
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
M#Q4=OI6GVEH]K;V-M%;R<O$D0"M]1CG\:4:G8&VEN1?6QMXCMDE$J[4/H3G
MIJ:MILFGG4$U"T:R&<W*S*8QCK\V<4 +8:7I^E1&+3K"ULXR<E+>%8P?P %-
MN-'TR[OXK^YTZTFO(5VQW$D"M(@] Q&0.34UO>VMV\R6]S#,\#[)5CD#&-O1
ML=#[&N5TWQ1+#XN\46.MZC906.GM:BV=\0@>:C,02S<G@=^W04 =396-IIMH
MEK8VL%K;IG9#!&$1>_ ' KD?#OA+R]:\07FM:392"_OS=6[MME94VJ K9'!R
MN>XKK)=3T^"6**:^MHY)@#&KRJ"X/0@$\U(+NV-V;07$1N57<80XW@>NWKB@
M"&]TC3=1FMYK[3[2ZEMFW0//"KM$?521P>!TJN_AK09(O*?1=.:/S3-L:U0C
MS#U?&/O'UZU;O-0LM.B$M]=V]M&3@//($!/IDFIH9HKB%)H)$EB<;D=&#*P]
M01UH KW6EZ??K MY8VUP+=P\(FB5_+8="N1P?<5CQ66NZCX@\S6(]/CTRRN&
MELEMW9I)C@JK29&!@,QP,\XZ8YU[K5M-L?-^UZA:6_E &3S9E38#T)R>,]JD
MEU"R@M%NYKNWCMF *S/( AST^8G'- %BJJ:;81:A+J$=E;)>RJ$DN5B42.HZ
M MC)'M2#5-/-@+\7]J;,_P#+P)E\OT^]G%9>J>,]!TF2WBGU.T,T]TMH(UG4
ME7S\V[GY=HY.?;U% %^ST+2-/N6N;/3+.WG8DF2*!5;GKR!W[^M6;NSM;^V:
MVO+:&X@?[T4R!U;Z@\5';ZIIUU.8+>_M9I@,^7',K-CUP#4MO=VUV'-M<13!
M&VL8W#;6]#CH: (UTRP73CIRV-L+$KL-L(E\O;Z;<8Q[5'8:+I>E63V6GZ;:
M6MJ^2\,$*HC9X.0!@T^\U33]/9%O;^UMFD^X)IE0M],GFL;QEXIA\,Z3%*)K
M=;JYN(K>$2N !O=5+D9Y"@D_AVH S;_P@+3Q1X:N] TBQM;#3IYY[E8 L.XR
M1&,84#DC.><<5T<WAS0[F[N+N?1["6YN4\N>9[="\J?W6.,D<#@^E1:$NI[[
MM[O5+74;"1E:QFB0!]N/F#E?E.#T(_&KD>K:;->M91:A:O=KG,"S*9!CK\N<
M\4 ,;1-):XMYVTNR,UL-L$AMTW1#T4XROX4^RTC3=-DEDL=/M+628YD:"%4+
MGW('--GUK2K4.;C4[.$)((G,DZKM<\A3D\'VJ5]1L8KM+22]MTN7QMA:50[9
MZ87.30!7M] T:TU.74[;2K*&_ESYES';JLC9ZY8#)S5V>"&Y@D@GB26&12KQ
MR*&5@>H(/44V.[MI;B2WCN(GGBYDC5P63ZCJ*YB[\0W=A\2$TR[N[6+1SI,E
MX2ZA"CK*B99R<8P3Z=>] &VOA[1$-J5T?3P;08MR+9/W(]$X^7\*EM]'TNTD
MN)+?3;.%[@8G:.!5,O\ O$#G\:?_ &G8?8!?_;K;[&PR+CS5\LCUW9Q2?VKI
MWDW$WV^U\JV<QSOYR[8F'4,<_*>>AH CTS0])T195TK3+.Q64[I!;0+'O/OM
M S6!XST"\UW4?#[0V4%S:6-[]IN4F< .NQEV@$')^;/.!Q721:G83V!OHKZV
MDLP"3<)*IC '7YLXIUG?V>H1-+97<%S&K;2\,@< ^F0>M !9V%GI\316=K#;
MHS;F6) H9O4XZGWJK9>'=$TZ:XFL=(L+:6Y!$[PVZ(9 >H8@<BI8M4LKV6:U
MLM1M);N-3N1)%D,9Z990<XS]*YSP/XJ;5?#MI-K5_9KJ5S<W$,:!EB\W9*R
M(A.3P!ZT =%:Z-I=C;2VUIIMG;P2\R110*BO]0!@T6NC:78VLEK::;9V]O*"
M)(HH%1'!ZY &#UJ]51-5TZ2^:QCO[5[M<Y@693(,=?ESF@".RT32M-BDBL=-
MM+:.1=KK#"JAE]#@<CD\4D.A:/;6<UG!I5C%:S?ZV!+=%23_ 'E P?QKG]7\
M4++XN3PQ9ZM;6$QLI+A[DE'*R;U1(]K<9.22.N ,8ZUH7VO?\(KX/_M/Q/<V
MHN((?WQ@RJ2R=E0-SD^G]* +S>'=$:&"%M&T\Q6YW0H;9-L9]5&./PJ0:+I2
MW<UVNF68N9E*2S"!=[J>H9L9(^M<[J?B:XA\:>&;:TOK-]'U%+MIF4!N8H]V
M?,SC&3Z#IUK=N;^*^T"YNM*U6S0-$XBO=RRQ1MC&XX." >O- !;^&]"M!;BV
MT;3H1;,SP".U1?*9N&*X'!.!G'6@>&]"%M+;#1=.%O,^^6+[*FUV]2,8)]S4
MBZA;66FVTVH:E:#>B@W#.L:2MC)*Y.,'DXR>*MPSQ7,*S02I+$PRKHP93]"*
M *-[X=T34K:"WOM(L+F"W_U,<UNC+'_N@CC\*FOM)T[4['[#?V%M=6G'[B:)
M708Z<$8XK,\9Z[<>'?#%W>V-O]IU#:4M(,9\R3!/3N  S'V4U?T+5[?7]!L=
M6M#F"[A651G[N1R#[@Y'X4 6K2SMK"UCM;.WBM[>(;4BA0(BCT ' JO?Z-I>
MJ21R:AIUI=/%D(TT*N5!Z@$CH:>^JZ<EU]E>_M5N.GDF90_3/3.>G-)<ZOIM
MGN^U:C:0;%#MYLRKA2< G)Z$D#- !>:1IFH6R6U[IUI<V\>-D4T*NJXZ8!&!
M5F*&.")8H8TCC485$4 #Z 56N-5TZUNHK6XU"UAN)L>7%),JN^>F 3DTM[JF
MGZ:$-_?6UJ'.$,\RIN/MD\T 5?\ A&= /GYT33?W\HFF_P!%3]XX.0S<<D'G
M)J7^PM'\VXE_LJQ\RY&)W^SIF4>C''S?C5B6^LX'1)KJ"-G4N@>0 LH&21GJ
M .:K'7]&%G'>'5K 6LC[(YS<IL=O0-G!/M0!E:GIFL0"#2O#EKI5CI,T;I<2
M@%)(">-T:*-I.,]>^/QZ&VMX;.UAMK=!'#"BQQH.BJ!@#\J;=WUI86YN+RZ@
MMH0<&2:0(OYGBF_VC8F""?[9;^3<,%AD\U=LA/0*<\D]L4 )>:;8:@T#7ME;
M7+0/YD)FB5S&W]Y<C@^XJ"\T#1M0OX;Z]TJRN;N#'E3S6ZNZ8Y&&(R*4Z[I
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
M?]9N_$FO741(XU2-55%&%51@ >@JI%H^F07SWT.G6D=VY)>=(%$C$]<L!DT
M<FZPGXY1J53=_P (ZS8P,Y^TKS4GQ;4-\+==^7.(5/3I\ZUU)TG36O?MK:?:
M&ZSGSS"N_/\ O8S5F:&*XA>&:-)(G4JZ.H*L#U!!ZB@#@/$7]G:G\0_ B*;>
MZM6&H<*0Z,1$I^AP:PY+:U7PG\5[40PBWAN+B2.+:-J,;93D#L<\_6O4!HNE
M!X'&F6>Z !86\A<Q@= O''X4@T+2 DJ#2K$+-_K1]G3#_P"]QS^- '$W%KJ4
M]IX4N_#^I6D6LVVDDQV=XI,-W"RQ;QD<J00G(]?2ND\#ZA%JG@^QNXM/_L]6
M\Q3:[MPC9796"GNN0<>V*TI=#TB>&&*72[*2.$$1(UNA$8/7:,<?A5V.*.&)
M(HD6.- %5%& H'0 =J .5G^VZWXLDETVYLU@T=3;GSX6E!N)%#-PKK@JA49Y
M_P!8P[5B?#IY/#FOZYX&O)8BUM)]OL/+!53!+RRJI)("OD=3UKO;73;"Q>1[
M.RMK=I.7:&)4+?7 YJ*71M/:X>\2QLTOCDK<FW4NK8X.<9/YT >2VMO9ZUX4
M'AB34],EDCUQYS?RW46747#.S&,G?YAY3!&".<X-=$="T6[^,=[9W&F64MN?
M#\)\AX5*$^<ZYVXQD# SV%+9^"]2:V6QU;P_X2O7P5DU62,O+*3UD:,Q\L2<
MG]X!FNTL=!TRP%NT5G ;B")8EN6C4RD ;<E\9)P* /,K=]#U>W\6:#XGUZ33
MIQJ<QGM6,,;/%N!A:,LA8_($ P21@8ZBK:7E@/&7B#1O$&M3Z:EQ96RVOVPP
MK]HMO*PX+2(1N#E\@$<D\<5Z//I&F75]%?7&G6DMY#_JKB2%6D3Z,1D4M]I&
MFZH8CJ&GVEV8CNC-Q"LFP^HR#B@#S5-&T>W\7_#RTM0]W9K9WR12W85GFC54
M,9)P-RXY7CIBH;?2M,;3?BBK65L5AFN/+!C!$>;96.W^[\W/'<>U>I2Z983W
M4=U-8VTEQ']R5XE+K]"1D5$-#TA5F5=*L0LW^M MT_>=_FXY_&@#S*TUA+/5
M/!3:MJLFGV-SX<C6VNSY>PW!"%P6D5@"5QSQZ9YJ+6-#\/VFC^'X=,G:_LY?
M%L!$TQ1E)<DR)$5 'EYR,#C.X=J]3FT32KBP6PFTRRDLE.1;O IC!]=I&*67
M1],GAAAFTZTDB@&(4>!2L8_V01Q^% '!?9;:U\?>,K6T@BBBDT*!VBB0*"P\
MT X'?&*T? >O:+I_PX\-?:=2LX"]K;V_SRJ,RE.$_P![@\>U=='I>GPW;7<5
MC;)<L,&985#G_@6,U0U+POI>H:8NF_8;.*S\WS&C6V7@]RO96.2-W7!..>:
M+'B)+:3PSJJ7D[V]JUG,)ID^]&FP[F'N!DUQ.C7.KZ?K9T77HK*\E&D2O9:Q
M9C;YL"E 5D3H#DJ01QUQU->BRQ1S1/%*BR1NI5T<9# \$$=Q52'1=*MHI8H-
M,LHHYAMD1(%4./0@#D4 >0V%G9VWPX^&M[%!#'<MJ]D&G"@.=Q8,"W4Y'&/8
M>E2^.-1T^YT'X@QVDEO:NDJ1W2W#[YKF943:44GY$  QP<X8\8KU<Z#HYACA
M.DV)BC;<B?9DVJ?4#'!I\FCZ7-/-/+IMF\L\?E2R- I:1/[K''(]C0!QM[<P
MW7Q,\$S13)*KZ??$.C!@W$??\#^56?!!!\4^.,$'_B:I_P"B4KJCI&FF>&<Z
M?:&:$!8I/)7=&!T"G'&/:G6VF6%E-)-:V5M!+)]]XHE5F^I YH XOQ;8V5S\
M4/! N+:&0R"^#AU!WA8E(!]0#S@UR&K-+8>'_B!%81[;*'787NH8!T@*Q&;
M'8C.?;->QSZ987-U'<SV5M+<1_<EDB5G7Z$C(I+?2]/M'E>VL+6%I>)&CA52
M_P!<#F@#CO$$23^/O!5[I#1M(XG$SPD;7L_+!^;'5=VS';)&*7X8S6PL=:ME
MDB^TKK5\6C!&\#SCU'7'(_.NOL=)TW3-_P#9^GVMIO\ O_9X5CW?7 YJ6&RM
M;::::"VABEG.Z9TC"M(?5B.I^M $]%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %1S3Q6T+S3RI
M%$@RSNP55'J2>E25A>-8HY? VOK(BNO]G7!PPSR(VQ0!<@U_1KJ^2QM]6L9;
MMXQ*L$=PC.R$9#!0<D$<Y]*#K^C+<K;MJUB)VF^SK&;A-QEQG8!G[W3CK7F,
M^DZ?/X.^'-QI$$"ZK]JLGBE@ WLH3,Y8CDK@$MGTK6\+:987'B/QTT5G9R7<
M&IJ]N6C5O*<0J589^Z=V>1WH [L:UI3:B-.&I69OCD"V$Z^9QU^7.>*6VUC3
M+T3FUU&TG\C_ %WE3JWE_P"]@\?C7E?ABX\.Z_X7\/V.I:Y=_P!L:=<Q'^S-
MT27"7B'#';L#D9W$DG&"2QX-;6II=^'?B!=6U@CK#XK@ C>,?ZB[CPKO[?NC
MO]S'0!W$FMZ5#8)?R:G9I9R?<G:=1&WT;.#T/Y4[^V-,\FVF_M&T\JZ(6W?S
MUQ,3T"'/S?A7":Y?6GASXB:5;WNHOH^D/I'V:QN (Q$DJR?,A9U8+E!'SQ]T
M5CZKI/AZUTSPK#I<AO-/F\51LLLY5TE#*Y<1D  QEL\ 8SGM0!Z6?$^A?V9=
MZDFKV,ME9Y^T313JZQD=B03S[=:=X?UVR\1Z+:ZG8RQO'/$DC(KAC$64-M;'
M1AGD5PLD<47C+XAV]LB)OT6W8QQ@#+>7*,X'?&/TKI?AU>6UW\/= %M<1S&'
M3K>.3RV#;'$:Y4XZ$>E &S=:WI5C<BVN]3L[>=MN(Y9U5CDX'!/<]/6G76L:
M98RO%=ZC:6\D<1F=)9U4K&" 6()X7)'/3D5Y+XWU33KG1OB#;VTEO8S(RI<1
M2ONGNY%C3#*I.$0  # .=I.16]"--U+XMZ+<*+:Y#^'I)%D&UMS"5 #GN?O<
M_6@#N&\0:*EE!>MJ]@MI<<0SFY0))_NMG!_"K+W]G'<PVSW<"SS@F*)I &D
MZE1U/X5YIX=\/P>)? 7BC1HV2/;K=[]D=>EO(LNZ,KCI@X/'8GUK>\$:E=^*
M2NNZA:O;SVD']G^4ZXQ."/M##V+*BC_<- '775Y:V,/G7=Q%!%D+OE<*,GH,
MGO5=-=TB1('35;)EN)/+A(N$(E?.-J\\G/&!6'XTLY;V31UL=733-7CN6EL'
ME0/%*XC8-&R]\HS=.1SBN*U/5I;OPOI5UJ=C;Z=-I_BZ!+]X7S 663YY58]%
M);G/0YS0!Z5JFJQ_V?J<6G:A:_VC:V[2%,B1HB 2"R Y[=ZR_!WBJUU7P_HB
M7^JV;ZU=V,5Q);^:BRL64$D1CG'T%<W)J5C>?$KQ*+:[AF,OAU%C\MP?,*M+
MG;_>QWQTK$72M.O/A)X-_LN"V_MPS61M)( OF"4,IE)(YP%#EL],<T >MS:S
MI=O=BTGU*TBN694$+S*'+-]T8)SDYX'>B^UK2],D2._U*SM'?&U9YU0MDX&,
MGUXKSO59[W0[_4-4L)[;6=!EU>/[=ILPQ<6MSYB*&B8=?F",%/;&.M1/?Z2_
MB#QEH/BK77TPW4^X1S-"B7%JT2JNQG0DD888!X/3G- 'IM[J5CIL2RWUY;VL
M;'"M-*$!/7 )-0+K^C/!'.NK6!BED\J.07*;7?CY0<\GD<>]<#H^IZ=H'C];
M/5+IK2T&AVR:1)J+A#Y8)\P%FP-Y^3(Z_*/2N>D>%?AIJ]RFU;6+Q<92^,*D
M8NUY]AB@#VA+^SDOGL4NX&NXUWO L@,BKZE<Y Y'-0QZUI4VH'3XM2LWO1G-
MNLZF3CK\N<\=_2O/M2U2&\^*5[_9%[!+=OX6EBM6CD!#3><2JJ>A/?BJGAFX
M\,>(M'\*I-KES+J>G2P^5IBF))H9E&UPR! ^P?-NR<$#)YH ]&E\2Z%#M\W6
MM.3=,8%W72#,@P2@Y^]R..O(JM>>+M'L?$UMH$][ E[-$TI5Y NP J #GNV[
M@=>#7F4EEIY^'?Q/D%O;%UU2]4-M&5P$*@>F#R/>NC:^M[;XD^%[F[N8XTFT
M"54DD< 2.7B. >Y/I0!Z,S*B,[L%51DL3@ 51M-;TF_6=K/4[.X%N,S&*=6\
ML=?FP>/QKGOB;-<6W@B>XA65HH;BWENA"H9S LJF3 ((/R@Y!!&,YXK/L1X6
MUO6WUFRUQ]9O#IKPRE7B,:09W 2JBK@[N@;GKQP< '71>(=%GNK>VAU>PDN+
ME2\$27*%I5YY49RPX/(]*YS5O%4=UXR_X1>SURWTZ06+3&Y5HG;SS($2+:^1
MGJ2N-QXP1WX>P@LX/A7\.KF..&.8ZS9$R@ ,278-D_3CZ"NU65/^%Y2('7?_
M ,(XORYY_P"/@T =!9:O!:16FGZQK&FMK!54E1)%3?(1_"A.>>H%6;S7-)TY
MY$O=3LK9XX_-=9IU0JF0-Q!/ R0,^I%>7:=)#>_!#Q#8:M@ZS ]XMY&W^L^U
MF1FC..I))CV^O %7[+38KCXF:);:[;V]Q>MX5Q=+,BMYDOF(&R#U_B_6@#T*
MZUS2++ROM>J64'FJ&C\VX5=X/ (R>0:??ZMIVE1+)J-_:VB-G#7$RH#CKU->
M<Z7J?AZWU#QKX>\5S6MJT]X2(KA_+$UF8U6)8^A( ! "\@GCDTKZI8Z5X]N;
M/5]3FT.RNM)M5TXW'E!#&H8/$S2JP# L,C//?/% 'HLFK:=$;<2:A:H;A2T(
M:91YH +$KSR, G(["JG_  E7A[^S_P"T/[=TS[%YGE?:/M<?E[_[N[.,^U>>
M'2-#L=6^'%GIX:?3UNKQ8'NL,TD?E.00<<ID@K[$5=TZRTY_%OQ*5K>V952#
M@H"%#6V7^F2.?7% 'HL]]9VMH+JXNH(K<@$2R2!4.>G)XYJ!==TAK"._75+(
MV<C;$G$Z[&;.,!LX)SQBO)K#5QIFA?#2]U#4)K+23820/>($*PSE$$>\NK <
M!U!QQD\@9J7Q58>'H_!>K7>E7K:A%=:Q:3373.C1-,9D#^65 7.,;MO'X@X
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
MENEQ:SQ3P2#*21.&5A[$<&I:BMK>*TM8K:W01PPH(XT7HJ@8 _*I: "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ K+\1V-SJ?AO4M/LQ#Y]W;20*9G*JN]2N20">,^E:
ME-DD2&)Y975(T!9F8X"@=23V% &+X6T)-$T2P@FL[*._AM8[>::V&?,VJ!G<
M5!.<9YK4@L;.VD:2WM((G88+1QA2?Q%4U\1Z*T<\@U6T"0())BTH'EH>C-GH
M#@X)X.*F.M:6&LU.HV@:] -J/.7]^",@IS\W'/% $JZ?9)>M>I9VZW;C:TXB
M =AZ%L9J=HT=D9D4LARI(Y4XQQZ<5PNA>,HK+4?$,'B;7K2);?53:VAN&2'Y
M/+1MHZ9P6Z\]:["[U;3[!8VN[R"$2 LA=P-RC&2/89&3T&: );NRM;^#R+RV
MAN(LY\N:,.N?7!ILNGV4ZQK+9V\BQC:@>)2%'H..*BEUG38+&&^DOK=;6=0T
M4OF#;(",C;Z\<\=J6/5]-ETL:G'J%JU@5W"Y$J^7C./O9QUXH ECL;.*<SQV
MD"3-G,BQ@,<]>>M206\-K$(K>&.&,$D)&H4<]>!6=%XFT.=;AH]7LF%LN^?]
M\H,2^KC^$?6ICK>E 69.I6F+['V4^<O[_/(V<_-GVH G?3[*66662T@>25/+
MD=HP2Z_W2<<CVIITVQ,HE-E;>8  '\I<@ 8 SCTXJ"^U[2--G6"^U*UMY6*@
M++*%QG@9STSVSUIEYXDT/3Y9XKS5[&"2W023)).H,:D@ L,\9) 'K0!7U6PU
M6VMHAX6CTBUG:8?:#=0-M,>#G 0@ELXQGCK6AI6GKI>F0V:R-*4!+RL,&1V)
M9W/NS$G\:R=9\:Z)H^FZ=?O>P2P:A<10VSQR J^]@I;=TVJ"23[8[UN"1;NS
M\RTN%VRIF.9,,,'H1V- "75E:WT?EW=M#<(/X98PX_(TAL;-K+[$UI ;3;M\
M@QC9CTV],5QO@/QM:ZAX8T9=<UNS.MWOF$1/(D;R8E=5P@QV  XYQ727GBC0
M-.EFBO-:L()(2HE62X52A8X4$9X)P?RH OPV=K;MN@MH8FV"/*(%.T=%X[#T
MID&FV-K<R7-O96T,\O\ K)8XE5G^I R:@NM>TBRO$M+K4K6&X=@BQR2@'<>@
M^I[#O1?Z]I.ERF._U*UMG"AV$L@7:I. Q]!GC)XH G_LS3_M@O/L-M]J!R)O
M*7>/^!8S2W&GV5W-%-<V=O-+"<Q/)$&9#ZJ2./PI+S4K+3X4EN[J*%'.$+L!
MO.,X'KQSQ7*^*?$4\'_"+7NCZI"VGZAJT-K,T81TEB97)PW./N8X]Z .LNK*
MUO C7%I!<-$=\7G(&VMZ@D'!]Q7/>$?#MYI.GZM::O'92QWVH7%V%B<R*5E;
M=M8,HZ=.^:VM+UO2M;CEDTO4;6]2)]DC6\H<*WH<5?H KP6-G:E3;VL$11!&
MICC"[4SG:,=LD\4D>GV4-W+=Q6=NES*,23+$H=Q[MC)JS10!3&DZ:$9!I]J%
M8@LODK@X]>*E%C: 0@6L \@DQ8C'[LGKM]/PJ>B@ (!!!&0:J0:7I]M!)!;V
M-K%#*<R1QPJJN?4@#!JW10!3.DZ:8PAT^TV*20ODK@$]3T]A3QIUB)Q.+*W\
MX'(D\I=V?7.*LT4 57TVQDO5O7LK9KM1A9S$ID ]FQFG&QLVN?M+6D!N,Y\T
MQC=^?6K%% %>:PL[BYBN9[2"6>'_ %4KQAF3_=)&1^%%W86>H(J7MI!<HK;E
M6:,. ?49'6K%% %>6PLYY$DFM()'085GC!*CV)IG]EZ?ES]AM<R<.?)7YN<\
M\<\U;HH K'3K%K1K0V5N;9_O0F)=A^JXQ2'3;!K>.W-E;&"+_5QF)=J?08P*
MM44 5ETZR299EL[=95 "N(E#  8&#CTJ6&W@M]_DPQQ;V+OL4+N8]2<=3[U)
M10!6O-/LM0C5+VTM[E%.Y5FC#@'U&13IK.UN(EBGMH98U^ZCH& ^@-3T4 ,A
MABMXA%#$D<8Z*B@ ?@*@CTS3XKLW<=C;)<G.9EB4.<]?FQFK5% %633;":>2
M>6RMI)I(S$\C1*69/[I..1[4ZYL+.\MUM[JT@G@4@B.6,,HQTX(Q5BB@"O-8
M65P$$]I!*$&$WQAMH]!D<41V-I%.T\=K DS9S(L8#'/7GK5BB@".:W@N559X
M8Y55@ZAU# ,.A&>]17&GV5W-%-<V=O-+"<Q/)$&9#ZJ2./PJS10!7:PLVN?M
M+6D!G!SYIC&[\^M-.F6!>1S8VVZ3.]O*7+9ZYXYJU10!3.DZ:8Q&=/M2BDD+
MY*X!/4XQ["K8 50J@  8 ':EHH JQ:;8V]W)=PV5O'<R_P"LF2)0[_5@,FG1
M6%G!.TT5I!'*V<R)& QSUYJQ10 C*KJ58 J1@@C@BJ]GI]EI\;1V5I;VR,=S
M+#&$!/J0!5FB@"JFFV,=ZUZEE;+=N,-.L2AR/=L9IS6%FUQ]H:T@,_\ ST,8
MW=,=>M6** .?\0>'Y;S1GMM$-E8SM+'(ZO!F*=5;)CD"X.UNA]LCN:S].\+W
M$NH6MYJ>E:!926LGFHVFQ$R.V"/OE5*CGD '/3.,Y["B@"JNFV" A;*V7,OG
M'$2C]Y_>Z?>]^M/:SM7DDD>VA9Y%V.Q0$LOH3W'M4]% %=+"SCMWMTM(%@?.
M^-8P%;/J.AIL.FV-O:&T@LK:*V/6%(E5#_P$#%6J* *9TG32BH=/M"BDD+Y*
MX!/7M5P  8 P!110!5M]-L;.>6>VLK:"67F22*)59_J0.:=!86=K(TEO:00N
MPP6CC"D_B*L44 ,EBCGB:*:-)(W&&1U!!'H0:CM+*UL(!!9VT-O"#D1PQA%S
M]!4]% %:'3[*WNI;J&SMX[B7_62I$ [_ %(&35AT61&1U#*PP5(R"/2EHH J
M6VEZ?9;/LMC;0; 0OE0JNT'KC XSBG+I]DEZUZMG;K=L-K3B(!R/0MC-6:*
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
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4$@ DG %%% %"SUS2=1NI;:QU2RN;B(
MXDBAG5V3Z@'(J_7F.A7<^FZ[\3K^U$1FMKA)E6125;;!NP<$=<=:VV\87HLO
M!EX+>W\O7VB29/FS$7B,F5.>0,8P10!V=5-/U2QU1;AK&YCG%O.]O*4/W)%^
M\I]Q7)Z?XD\4:MXAU6PM=/TI(=,U"."=Y9Y,M$R!B4POW\'N .W/45X/'=Q;
M^%=:U:\LK>W:PUA["0PAGCC42*C3/C!8#<6.,9QCCK0!W]49-8TZ+5H=*>]A
M&H3(7CMMV7*CDG'85ST_B^33O#]UJTTECJ,+2Q0Z=)8MA+IY"%4'YFV_,<'D
M\#/M65?KJB_%OPH-0>SD_P!"O3&UO&R<[8]RD%FX'&#WR>!CD [FPU2QU,W0
MLKF.<VL[6T^P_P"KE7&Y3[C(JW7"V7CF:+1-=O;RPMTN+/66TR""!SB:0F-4
M)8CNS\G' '3BM*XOO%-M<7]O);V30+8-<6^HQH0B3 X,3QERS<<A@0.U &[J
M>J6.CV37FHW,=M;*RH9'/ +$*!^)(JW7F-IXGUK2OA!I6NW"6>H2RK;%S,&4
MXD=5W$<[FW-G^&NLFUVZO?$]WH.DFVCFLK9)[F>X1I%4R$[$"AE.2%))SQQP
M<\ '145YU/\ $74!X=6\ATNW%_;:RND7\#S'"2;PI*''S A@03C&>];FD^(-
M6;QI>>'=7M[)76R2_MY+1F(V%RA5MW4@CJ,9]!0!U-0W5U;V-M)<W<\4$$8R
M\LKA54>I)X%34A 92K $$8(/>@"GI^KZ;JUNUQIVH6MY"IPTEO,LB@_4$BBP
MUC3-5,HT[4+2[,3;9/L\RR;#Z'!X-><V;WWP[\3S^%K"W\[3];9Y]#!^[;S\
M>;&W^PH._P"@(&2:ZW4+NU\">%8_*C-Q,\R0QACM:YN97QN8XX+,Q8G'K@=J
M .FHKE)O$.I:3XJT[1-4%HZ:M')]CNX(V4),B[BCH6.01R"",XQCO61)X]U)
M/AQ<>)OLMI]HMKQK>2'YMK@3^3D'.0><]_2@#T*BFR,4B=E0NP!(4=6/I7#V
M?C/4QX@T#3=0AL5EU991+:1$^;8NL9D"NVXAL@$'A>>: .ZI"0 22 !U)KSB
M?QSXF_L/Q+JD.FZ6J:#?30RH\LA,L<:JQ"G PV&)R>.@QWKHF\23:AKMOHVD
MB%)VL5OYYKA"ZQ1L<(NT$98G/<8 [Y% &SINKZ?K,4TNFWD-U%#*T+O$VY0X
MQD9[XR*N,P52S$!0,DGH*X7X7^>;/Q-]J6-;C_A(;SS!&3MW97.,\XJ62^UI
M_B^NFK=VXL(]'^T+"8FSAIE5LG=RWR\'H!VZD@'4Z9J^GZS;R7&FW<5U#'(T
M321-N7>O49[U=KQ_3-?UCPQX8\4ZQ96EE+8V7B"]>X29V\R13, 0F.%(!ZG.
M?3U[;5/$]P=8N]*TH*)[2WCFDEDLYKA2TF[8F(ON\+DDGN, \X .JJG?ZMIV
ME^7]NO8+<RG$:R. SGT4=3^%5/#&K7>N>';34+[3+C3+N53YMI.A5HV!(/!
M.#C(]B*Y+X:3-KNL>+/$-Y\]Y_:LFGQ;N3#!$!M1?3EB3CJ>: .XL]7T[47*
M65];W#@998I Q49QR!T_&KE86M'2_#PO_%MS'M>VLF6=D S*BG<H]R#D#_>K
M)O/%6JZ(NAWVK6]H=/U2>.WD6 ,'M'D&4RQ)$BYX)PN.N.U '9T5P,GBSQ+/
M)XJBLK'2T?0Y!@S22,)5\H28XQR0>O 'OV='XUU@KX6U.:PLDTC7I(H%C61F
MGB:2,NK$\*1P1C&??M0!WE%< WBGQ??WGB*UTC2M*,NCSA,3SN?.!C#A5P!\
MQSU. ..O46K'QI=:WHNBZI80V]E87]L\UQ>WAW1V[J0HBP&4L2V<'(X7ISP
M=K17G2_$+4YO!^@:U;Z;:M+J&J+IT\;2L I\UHR4X[[2>>F>]:MCX@\02^(-
M9T"YM]-&H6]G'>6<D1<Q.KEEV/GG(*XR/7..U '857OKZTTRSEO+ZYBMK:)=
MSRRL%51[DUR>E>+[[5_"6FWT,5LFK7=X+.2U9&Q%(&(E4C=G**KM[A?>MKQ>
M,^"=>!Y_XEUQG_OVU &I:74%]9P7=M()+>>-98W'1E89!_(U-7G'AWQ#J^E6
M/@:SNK6S_LO5+2*VC*.QFC<0;E8_PD':>!T]35J_\<:HUE=ZEHFFO?06MT\
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
MHVB,@ZY(("D'^E '=T5P!\8^(H7\,3RZ?ISVVNHL:1I*ZO%*T7F ECD;>#D
M$CU-2Q>.KG2D\5IXB@MO,T".*8O9;@LR2J2B@-R&R,=<<B@#NJ*X^]\3:KH-
MWH;ZQ!:-9:K<):$VX8-:S.,H"22'4D$9PN.N.U94_C3Q.VG^*;JVT[2E&@7$
MBN))9&\V-(U<@8 ^;!/)P.@P>M 'HM%<C)XKO!KWAR+RK>/2]<MV>*5U8O'*
M(PXC/..1G!_V2/>JFE>-+^_T[Q$K+8_VGIE_]AAA16V2,6"QL3NSAR<>V#UQ
M0!W-%<;J?BK41=ZG8Z7$DEWID:"7-C/,L\S('V+Y?W!@KR2?O=.,EP\3ZQ=6
MFG3G3X]&BN+(SSS:HIQ%/D*(-FY6W'DY]!TYH Z+4=8T[23;C4+V&W:YE6&!
M9&P9'8X"J.I.2*N.Z1QM)(RJB@EF8X  [FO+];U]O%/P\\):T\ @>ZUJQ9HP
M<A6$^TX/ID&MRVOM:F^+6H6#7=N;"WTZ&5(?*;(5W8'G=][Y1STQCCN0#JM,
MU6PUFR%YIMU%=6Q9D$L1RI*G!P>_(JY7CWA[Q!J_AGP"^JP6ME)I=OJ\Z7*R
M.WFNKW90E,<#!8=<YYZ=_6KR[AL+&XO+AMD%O&TLC>BJ,D_D* )ZI:CJUCI,
M(EOK@1*02!M+,0!DD* 20!R3CBN1N_&VI:=X6T_Q==6MK_8MR8GF@4-YUO#*
M0$DWYPQ&Y<KM'7@G',=T=4?XU6L:3VOEKHDKHKQ,<(9XPW\7WC@<]..E '<6
M5[:ZE90WEE<1W%M,H>.6-MRL/4&IZBM[:"SMTM[:&."%!A8XD"JOT X%2T %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !6-XKO9]/\-W<]IJ>GZ;= *(;G46"P*V1PQ/J,C\:V:BN;B&TMI+
MBY=8X8QEW;HH]30!YSI=[X4BL_$;WWB[0%O-?9FG$&HQLD(,8C 4D@MCDY('
M7VK$@N8GT_PI:W/C3P<@T"XC93'?AO.C2-D#')&&((^7IU.>U>M:=J.GZO8I
M>Z==07=K)D+-"P93@X/(]Q4=UK.E6.H0:?<WMO%>W +0V[,/,D ZD+U- '$^
M'=>T/2M>\0WUUXJ\--#JEPMQ&L6J(60J@3!SCKMSFJ.CZO8:/INJQQ>+/";3
MWFKR7X5M34QM'(P+Q-QGID9P>O3CGU/:O]T?E1M7^Z/RH \8N-)\(7&FZ[%:
M^+?#NDR7US!=VD%KJ$;PVLT7(< [?O'J !@ =:TEUR&_\5:!K>I^+?!L)TV&
MXBFCMM1#^9Y@094DC'W>AZ>K9X]5VK_='Y4;5_NC\J /'FAT"^\/>)--N_&G
MAVWFU+5&U2TN+?4D<P294J"#C."@Y[Y/2MW2O%<%U;2IXE\:^$P?(:%4TZ]7
M:Y88,CEFZ^B@8&3UXQZ)M7^Z/RJAJ.LZ7I,UG#?744$MY,L%NC#)DD8X  %
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
M6VEZ?;2?-YD,2PQRX]&P _X$T 9NG> [D_"L^#=3NHDD5"J75J6.&\SS$;!
MZ-CCOCJ*OZ1I?BJ\MGM/%=[IDML(6A(T]75KC<I4M(6X'!/RJ.ISGC%=910!
MP_ACP_XPT6*UT:[U;3I]$LBJPW"1N+N2)3\L;?P#@ $C/''4Y'0^*-';Q#X6
MU32$E$3WEL\*R,,A21P3[9K7HH XF;PWK]U>>%;JX?33)H\C/,L;N ^8C'A<
MJ?7.3CTQWJGJ?@C7+\>,?)O+2V;7&MW@97=MGE*JE'^495PI!QT!(YKT*LK5
MO$FDZ$&.HW?DA%#R$1LXC4G 9]H.Q201EL#@^E &#I_AK74\:QZ]=S:7' VE
MBPEMK9'_ '>'+#83C(YZD#TQWJ]X%T'4O#/AFWT;4)[69;0&.%[<,"R;B<MG
MOR.!TQU.>.C1TEC62-E=& 964Y!!Z$4Z@#EY] U./X@?\)#936AMIM/2SGBF
M#;QLD9P5QQSNQSTZ\]*P)? FMR_#O5?#9ET\7%]>O<K-YKE4#3"4@C9G(QC]
M?:O1ZH7&MZ;:ZO::3-=QK?W88P0<EG"@LQXZ  'K0!R]_P"'?$]GXKFU_P .
M76F(VH0QQZA9WWF-'O085T91G('&"!G^776$%Q;V,4=U<?:+@ F27;M#,3DX
M'.!S@#)P,<FK-% ',06GBBR@O;;9I5_#-<3R0M/-)&8XW=F".H1@^ V.J\<>
M]8S?#^[TSPEX:T[1KJWDO-"O!=H;H,D<Q._>ORY*@^8<=<8%=AJNNZ5H<:2:
MI?P6<;MM5YWVJ3Z9/?VJ.T\2:'?W2VMKJ]E+<L,K"LZ[V'J%SDB@#B]6\/ZQ
MI]CX^UO4+FR>/4]'*F*!6RC102# )[?,>>^,\=*M:/H>H>(/"_A"+41:16-B
MEK>YAD9GG:.,>6""H"#)!/+=,=\UU6K7&CRSVNB:IY,KZD)%AMI4W"8(N7'3
M' />KMG9VVGVL=K9P1P6\8VI%&NU5'H .@H XJQ\,>+-!U2_MM%U/3?["OKE
M[D?:HW:>T:0Y<1@?*PR21N/'OWU+#0-1M/'M]K;M;-97-E%:JOFL91Y98ACE
M<'.[U_$UU%5=1U&TTC3KC4+^80VMNADED()VJ.IP.: .1D\#W&IW?C)-3>W%
MEXA6()Y+L7A,<80$@J >@;K[<U*OAG6-4LM#L->DLF@TJXBN&FMW9FNGB!"9
M4J G.&/+=,=Z["*5)X4EC8-&ZAE8=P>0:?0!S/AG0M1TG6_$%Y=FU,.IW8N8
MQ#(S,F$5-IRHSPN<U9\7>&+?Q;H3:=-,]O*DBSVUS&,M!,IRK@=_IZ$UNT4
M<_9?\)=Y"VU\FD"0#:U[#-(2?]KR2@ /MOQ_*J=SX:O[+QA%XCT>6&:22S%E
M>6]W(R"95.4D#JK8<=#Q@@]JWM2UBQTB(/>S,N59@B1M(Y5>6(5020,C)Q@9
M%1_\)!I']B1ZS_:$ TR1 ZW1;]WM]2>WXT <KJ/@&YN_#&KP17-NFL:CJ":D
MTC F)9$=62/UV@(%SUY)QVJU;:#XC/C>+Q+=RZ7D:6UD]M$9,!C('X8CIP.<
M=_N\9/66EW;WUI%=VD\<]O,H>.6-@RNIZ$$=:K'6],75_P"R?M\!U'8'-J'!
MD"GN5Z@>] '-:'X/O[/X8W/A*]GMA-);W%NMQ"69?WI<Y(('3?T]JWO#5EJ.
MG>'[.RU-[5[BWB2+-MNV850HY;DDXST'7';)UJ* ./L?#FL>'M6UQ]&>REL=
M6G:\V7,C(UM.PP[#"D.IP#C*^F>]5+OP+<VWAOPQHFCR6QAT:^@O'DN793*8
MR68853@L6)SV]#7=T4 (A8HI< -CD Y /UKS9O 6O?\ "N;SPBMWIK(UP6MY
MB7!V>?YV7X//\.!QWR>E>E50NM;TVRU2RTRXNXX[V]+"W@.2TF 2>G08!Y-
M&'>^'=0O_&UCK,RV8LXM/ELYH?.8LWF%22/E P-N/?/:J'AGPWXOT&*#0Y-6
MT^;0+5@()Q&XO#$#D1G^ <?+NY..G.".ZHH S]=T6S\1:'>:1?H6M;J,QO@X
M(]"/<'!'N*Q=%M/%VD6$.ESMI6H16ZB**^>:2*0H. 7C","P'HXS[5U5% ')
MZSX6OY]5T37-/O(GU;3#(K"YRL=S'(/G0D E,=5.#C'.:K:AX0OM1M_$UW(U
MHFJ:U9?8$42,8K>(*RCYMN6.6+'@=AVR>UHH XJX\,:Q,?"#*;$'0V#3 S/^
M\/E&/Y?D]#GGZ>]1W7A/6)KWQI,C6(7Q!:I;P@ROF+;$T>6^3G.[.!Z8]Z[F
MB@#B)_"NL26G@^)38[M">-YB9GQ+MB,>%^3C(.>?I[TR]\"W&L:GXN_M&2W6
MPUZV@A3RG8R0F(,%8@J >2#C/;'-=6FMZ;)KCZ*EW&VHI#]H>W&2RQY R>PY
M(J_0!QP\-ZQJUOH=IK[V1BTFYCNFEMG9FNI(P0A*E0$&3N/+<C%5E\):R-+\
M9VA:PW:_)*\3"5\1;XA'\WR<X SQ]/>NQU#4+32K":^O[A+>VA4M)(YP%%4Y
M/$NCQ+IA>_C7^U-HL@0<S;AE<#&1QZXH Q=3\)7FI^!=,TC[3%:ZKIWV:2WN
MHR66.6+ W#('50PP1_%3H? \%IXRLM8M9C':062P2VV?];)'D1.WJ0KR?CM-
M=->WMMIUE+>7DZ06\*EI)'. HI+&^MM3T^WOK.42VUQ&LL4@!&Y6&0<'GH:
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
M5C%=VS%67=O#DJ_)SC9U&*Y7Q#XB\97OPHN?$!ETJRM;K3(95$$<C3AI"H<
MEL*"&R#R1TZ\UT:>$]=_MG7]3FOM/>35K".U,2Q.JHRAAD').!O/J3_L]I)_
M!=Y>?"D>#Y[J!+A+..U2X0$H=FW:Q!P1G:,B@#KK5;E+=5NY8I9^=SQ1&-3S
MQA2S$<>]>=Z5-=VWCSQY<:G=V<MC:P6K7:&T;YHA [87,A"X!.<AL\]*]!L%
MO5LHQJ$D#W6,R&!2J ^@!)./K^G2N;L_"UW_ ,)%XGN]0-K+8:['%$\,;MNC
M5(S'U(P=P/MCWH S;OQEJNE^$--\77%O9?V-/Y,D]I'&PEMX)2 C!]V&(W+D
M;1U.",<SMX@\57WC#6M#TR#2%73UM94EN3(=R2;MP.W^+"\=ACOGAD'@G4Y?
M"=OX0U&[M9]'@>-?M"[A-+!&X98RF-JGY54L&/ Z G-:VF:#?V7CC6=;DDMC
M:ZC%!$(U+;T\H, >F#G<>.WO0!5^*%YJ&G_#C6;O3;I;::.#ERFX[2=I"\C:
M>>O./3N,KQ(-2C\;^ QYEK/?9OPK^6T4?, Y*[F/ [9YQVSQU/B_06\3^$M2
MT5)Q ]W"460KD*<@C(],BLNX\/:Y>>(/#6K75Q8-)I/GF9(PZB0RILPN<XP.
M<G.?:@"C:^.;ZTTO6QJ\%M)J.FZE'IZ?94=8YVEV>6=I+,/O\@9/!QFM/2=<
MUN7Q0VFWED9].>V\V._CL9K81R X,;+(3G(Y!!]L5EW/@"[U*W\3P7=Y%!_:
M]W'>6TUN27M98PNP\@;N4![=Q[UN>'K+Q2CK)XDU*PG,2;(TL(6C$A_OR%CR
M<=@ !D]>, &'\7/^17T[_L,6?_HRKOQ0TJUU'P!JT\P"7%A;O>6LXX>&6,;E
M*MU!.,?C5CQUX<U#Q1I=I964UM!Y-Y%=-)-N.?+.0N ._KG\*CUWPWJ_BNS&
MFZM?V]II3L#<P62L9+@ YV&1B-JDCG"Y/J* ,W1O%^K7$G@*&X@MF37+)Y;B
M5@?,#I 'RHZ $D>M6M,\87.KZ[<Z=;W.GQ75I?O!/ID\;+<"!6(\U6+@-E</
MPN,''4<W=3\-W,_BCPUJ-C]EAL]%691 20662,1X7 P H'X].*I7_@^^UF_T
M^?4OL!FT_4?M<&HP[A<"(.66'&.F"%)W8P.F: ,W1M6\0Q3>.;V2\L[HZ==N
ML<3P,@PD*,H!#G"X[8))R<C-*_BOQ;'\/YO%<UKHIMVTF*\BA'F[@Y4,V[G!
M4@Y R",X)/6M-?">K6USXJ%M>6;6FM,TJ)(C!XY&B$9R1QM&,\#)Z<4Z;PIJ
M,WPL'A(SVHN18+8?:,MLVA0N_&,YP.GZT 6SX@N[S6;+1;$V\5Y+IXU"XFFC
M+I&A(50JA@22V>_ 7OFN<\1ZGXL&F^&1>?9=,N[C78K2XC1#*DJAF9'!#Y"G
M8"4SGG&1WT=2\):X-3TG7M$OK*WUBTL_L-Q%<JSV]Q#G..,,"&Y'U_.SK?A?
M5]6TG3"VI6[ZM9:G%J1=XF$#,H(V!0257!XY)XR>2: .ENKM=,TF:]OI%*6T
M#2SNBX&%7+$#)QT/&3]:XN]\::MIGA/3O%]U!9MI%P89+BV1&$UO#*0%8/NP
MQ&Y<C:,Y.#QSV=Q9+?Z3+87Y65;B PS[1M#AEPV!DXSD]ZX^#P3J<OA.V\(Z
ME=VL^CV[QK]H7<)IH(W#)&R8VJ?E52P8\#H"<T 17*ZH_P :[=([VU$8T21T
M5K9FPAG0,/\ 6#YC@?-TX^Z:Z#Q?!##\/]>@BB2.)=-N $10% \MNU0R:%J+
M?$.+Q$KVOV5-/-CY)9MY!D#E\XQVQC]:T?$NGW6K>'-0TVS:%);RW>#?,3M0
M,I4M@#G&>G'UH XOP;J$7@RZ\0^$]1D*6NDAM0L&;DM9/EL#UV-E?J:I^$K.
MXMOC+J$]ZI6^O-"2ZN5)SL=IN$^BJ%3_ (#75ZUX-A\0ZYH6LWC"&YTYV\Z.
M%B5G0\A"<#(#JK8(]1WIL/AS4T^(USXE:6U^S36"V(A5FWJ ^[?G&">O'ZT
M9DGC35[+4-%CU"&PC?4-2-E-IZ M-:JV_P MFD#E22%!QM&=W'0U:@\87-]X
MEO-'M[G3[>]M+Y(6TZZC99I;?*[I48N ?E+,,*>G-9-OX \1PZ+HNG-J^FM_
M9&J+?1S&W<M<<OEI/F^]\YZ=?6M76?!]]X@:*+4C8,UO?K=6NHIN%S!&)-_E
M@8QG VYW8P>A(Y %B\87-[XFO-&M[G3[>]M+U(CI]U&RS36^5W2HV\ _*68
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
M?*8(^;*XYX^O2L;_ (0K5F\->+-*:>R#Z]=SW"R!GQ")552"-OS8V]>,Y[4
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
M6C:"?;E>K-N5L$>H]33/BK=7]E\-]7N-/NA;2+&JNVS<2C,%(!S\I(;KS_4
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
M<L(HE+.54L0![ $G\* .7\/Z)XKL%BAUCQ!;7T%HA%OY=L8WF."%,S;CD#T
MY."3Q56]\$ZA.VE:G;7]M#XBM+IIY[[RF*SHPPT17.=A 4 9^4*,>M;J>*M)
MDT&RUJ.:5["]>-('2!V+%VVK\H&0,^HK:H XJZ\)Z[:>*KK7?#VKVEH=2CC7
M4+:ZMVFC+H-HD3#*0<<8/![U;U#PO>W&N>&[^*^1ET<RN_GJ2]PTB%&.1@+U
M)Z8[8 KJJI/JMK'K,6DL9/M<L#3J!$Q78I .6Q@')'&<T <E>^"M7>7Q3!8Z
MI:1:?KZ.[K) 6ECE:+RR V<;3@'H3U ]:NQ^&M5BTJUTN>;3=2L$T^.SFMKF
M!E1V3($@&6QQC([X'(Q76Y!SSTHH X>+P+=64/A&WM-0C>+P^2Q,R$M.2A0@
M8/R@!CCKV':M77_"<.N:[HNJ&9H7T^1O-5?^6\1&?+/MO5#] ?6M;5=6M-&T
MY[^\:00(RJQCC:0Y9@HX4$]2*NT <IXG\+ZCJ&LV&O:!J<=AJ]G&T!\^+S(I
MX6()1P"#U&01_P#JV--AN=-TV2;6-0CGN#F:XG"^5$@ Z*"3M4 =R>Y/6M.D
M95=2K %2,$$<$4 <5IS1ZC\6;K4[*6.XL?[ @C$\3!D+-/(P (X/ S68/AWK
M:^%X_#B:U9)86E\MS:/]E8R;1-YN)/FP<9(XQGCD=#Z%:65I80^39VL-M%G.
MR&,(N?7 J>@#FM/\/ZA:^-]0UZ:ZMGAO+6*W,*1LK+Y>XALDGJ6/'ZU5M_#&
MKVNI^)K^WU*VBGU>2*6%A$Q\AHU"C//S @<]*Z^B@#AKKX>6^L7>LW6HK;6S
MZII_V*9+$$!SNW><V<9<'&.. .2<\1'PAXGNX_#R:AK>G2'1;M9DE6T?=.JH
MR N-^-Q![?7VKOJ* .-;P0][J/BQ]1N(I++Q#%%$T<2D/"$CV @G@GOTX([U
M/X:T+Q+IRVUMK6NV][:62[(/(MC')-@;5,K%B#@=@.3@DG%;VK:M9Z'I<^I:
MA(T5K I>1UC9]H'?"@FK%M<1W=K#<PDF*9%D0D8R",B@#B8? VIP>#=;\-+J
MEJUM?-<"W<V[!HEF9F;?\WS$;B!C'^%N;PC>QW^AZS97=O'JVFVOV*8.C>5=
M0D#*GNI!&X'G![&NCU75;71K,7=X9!$9$B_=Q-(=S,%'"@GJ15V@#A]7\"7&
MJZ'XCA-Y FIZ^8Q<3^62D2(H5%5<Y. #R2,EB>.E:%UX=U&[\5>']9>YM572
MX9HGB",3+YH4$@YXQM&.M=110!A>,?#[^*/"]WI,5R+:64QO'*R;@K(ZN,C(
MR,KC\:H7'AC4AXBL/$MM>VO]K1VK6=XC1,L-Q$6W #!)0JW0\^]=95'4=7M-
M+\L3F1I9=WE0PQM)))M&3A5!)P._N/44 4]!T$:1+J5Y-*LU_J5Q]HN9%7:O
M"A511Z*H YZG)[X&1J_A76%\6GQ'X;U2VL[FX@6VO8+N RQ3*I.U\*P(89(Z
M_P!<])I&KV.NZ5!J6FS^=:3@E'VE>A((((!!!!&#Z5=H Y*_\(7;ZAHVLV>I
M ZSIHD5Y;A/DNDDY=& ^Z,\KC.W&,&H-2\$W&I:9XD+W5NFIZ]$MO+*$)C@B
M5=JJHSEL98Y.,D]!C%=I37<1HSMG"@DX&: .4G\,:C/K7A?4#=6J_P!B1RHZ
M!&_?;X_+)!S\N ,]ZB;P?>:AJ&BW>K36<ESI-QYR7T,96>50& C;/0<C)R<X
MZ#-=-I>IVVL:9;ZC9ES;W";XS)&R-CW5@"*L3SQVUO)/*6$<:EFVJ6./H.3^
M% '$S?#Z34=/\5V&I7D1@UZ<7"F!"&MW4*%ZGYL%%/;O3O\ A%O$][J?AV^U
M/6=.>71Y7;=%:/F<-&4);+\$@GIP#Z]!U6CZO9:]I-OJFG2F6SN%+12%2NX9
M(S@\CI5XG R>E '":?X,U_1;V[LM*\00Q>'KJ=Y_(>W+3V^\DND3[L $DX)!
MQGIGDZ^E^'[VP\::SK;W-N]OJ4<,?DJC!H_*#!3NS@YW'/%:][JMKI]U8VUP
M9!)>RF&'9$S L%+<D#"C /)J[0!@>,- N/$F@_8;6\6UG2>*X1I$WQL8W#!7
M7(RIQR*Q_P#A$-;;6M8U235K)Y-4TY;22-;5E5&4. 5^8G: ^><DD=0*[>B@
M#ACX*U/^P?">F"^M,Z!<0S^88V_?^6A0#&?ER&//-1:S!HGC+Q?HR6%_'<7>
MESRF^^S2!@L(ZQ28]9!'P>H#^AKOJ@BMK2S\Z2*"&#S&,DK(@7<>[,>Y]S0!
M/7$1^#=271/%NGF]M"=?FGE#B-OW'FQA",9^; &>W-;MCXKTC4=4BTZWFE^T
M30?:8-\#HL\7&61B,,.1T]0>E:L]Q';0232D[(UW-M4L<?09)_"@#DYO">I2
MGPF?MEH#H)#-\C?OR(S'QS\O!SWYK)G^'FM2:/>Z6FN6GD/J@U*"22T9I"WF
MB3;*V_Y@,8X )XY XKN='U>RU[2;?5-.E,MG<*6BD*E=PR1G!Y'2ECU6UDUF
M;25,GVN&%9W!B8+L8D##8P3D'C- &-;^&[^U\;3:['J,)AN[2&"ZB:W.]FC+
M8*'=A0=QR"#_ %&+'\.;L^#Y?#TNLJBV]V;O3+F" K);R>:TBLV6(8@L1QCC
M/X>@44 <K:Z+XFGTJ]CUK6+*XNY;9[:$6]NT<2AA@NXW$LW Z8 YQUI^FZ#K
M&D^#M*TBUU"V%WIZQ1B8Q-Y<L:#!5ESD9''7CK[5O0ZA:7%]=64-PCW-J$,\
M0/,>\$KGZ@&K- '.>&O"\>A:EK&H*EO ^IR1N]M:@B*,HN,CIEF)))P.WIDI
M=>'[V;Q[9>(4N;=;>WLWM# R$LP=E8MNS@$%1QBNDHH XF?PGK^G^)[_ %/P
MWK=M:6NILLEY:W=L90D@ 4R1X8<D <'C/Z7KKPQ>2^*?#^JQWJ-#I,$T++,"
MTD_F!0S%AP#\H/3N>E=110!YP?AYK8T9=+77;,PV^K#4K>1[1FD=O-\S$IW_
M #=2.,$X'(K>'A6[7QA>:N+Z![/4+**UO('@)=]F[!5@V%!W'/!]O4=310!P
M_ASPCXCT%8=);Q%%/X?M7!@3[.1=; <K$9-V-HZ9QDCCCM5;P%K%IIGB'1-+
MU:S71M6\]TCN(&:2V>4$,JD, 5R<\C(]Z]"HH HZ+8S:9HEE87$Z3RVT"0F5
M(R@;: ,[23CIZUR1^';W.C^(]%O=11]-U6\EO(?+A*RP2.XD!+;L':PXP!GO
M7=Y&<9YHH Y>/P[J6HWFCSZ_=6LYTIS-&+>-E\^;:5$C9/RX!8[1GDYSQBKO
MB_0#XH\*:AHHN/L[74859=NX*00PR.XR!6R[!$9SDA1D[02?P Y-8MMXOT*]
MTR\U*VO6DL[-BEQ*L$F(RO+ _+V[^G>@#/G\.:Q>>(_#VLW5_9/)I:3B5(X6
M42F50IV_,=H  ZYS[52;P5J3Z7XNLS?6@/B"21PPC;]QOC$9'7YN!GMS73VN
MOZ;>Z)_;%M.TNG[2XF6)^5'4@8R1[@4Q?$6FR-I8CDF8:IN^RL('PX"[LDX^
M48Y!.,]J ,PZ#J@L+2QD?3KVR2Q6TN;2YC;RY67@..N..H(.?7BM'POH2^&?
M#-CHR3M.MK'M\QAC.23P,G YP!DX %7[V]M].LI[RZ<K! A>1E0N54=\*"3^
M5,TS4;;5]+M=2LG+VMU$LL3E2NY6&0<'D4 4=$TR_LKS4[K4)[>>6]G$BM"C
M+L0*%5.2<@8SGU8G'-8]IX>O=!\8Z[XD6\MQIE_&LEQ9I"Q8-&N/,!!^\1G(
M YKL:* /&=%GU"+3HM:L=:\'WAE=[M%N8&%R9').T['.)<';\JY[<UW^FZ%J
M,?C2Z\1SR0)%>V45NUJ%)>+9E@=V<$Y8@\5MQ:1IL%XUY#I]I'=-G=,D*AS_
M ," S5R@#A;3P=X@T;5+Z+1O$$,&AWUP]R\$MMOFMV<Y<1-D 9.2,@XST/>2
MZ\(ZY8>)[O5_#.M6UI%J"QB]M;VW:9=Z*%$B88'=M R">>_MVU% '*OX8OO^
M$LT;6%OHY8]/M9;=Q,I,DQDVEG)' .5Z 8^E44\&:FNA^+=.:]M,Z_//*'$;
M?N/-C"$8S\V ,]N:[BC(&.>M '!W7@K6H)]&U71=7MK76+&Q73Y_-@+P74*\
M@%<@@@Y/![XJYJ?A75M2CT-Y=4@EN;#45U&>1XB%E<*R[$4'Y%PWN>,G))KL
M* 01D<B@#DO^$2NYM?\ $E]/=PBWUJS2T,:(=\0174-DG!SO/'%4QIWBGP_X
M8T+3K+5;&6YM)(;=D6T.)X$4)MY8D' RS< >V.>YHH BN5E>VE6$H)64A2^<
M ^^*X2#P%J5OX2\-:(NH6A;1+Z*[\XQ-B81L2%QGY<[N3D]*] HH Y&?P?+?
M^)-:OKZ:!['5=.73Y+=%(=5&[Y@W3)WGMZ4WPSX<\2:1%:Z?J>OP7FF6("VX
MBMC'-*JC""5MQ&!QP!S@9/4'L** .(C\"W,NA>+-*O+Z'9KUQ-<J\49S SJJ
M@8)^8#:#VSS2P^%/$$^N>'-5U'5K RZ2DT;106K!9%=%7C+YW<$YZ#CCKGMJ
M* /-G^'6LP>%-6\)6.L6:Z'=%S;>=;LTUNKMN*9# $ DD'&>?RWY?#6I2^*=
M"UA[VU<:9:RV[H(64R^8%!8?,=N-HXYKJJS;;7M.N]<NM&AF<WUK&LLT9B90
MJL2 02,'H>F: .4;P-J3^%O$^C-?VF[7+R>Y\T1MB$2XRN,_-C'!R.M9GB$S
MW'BBPTQ-9T2VO=,T\%HM3A/ER-(<;XCO5LX3!Y( 8#G)QZA56]TRPU$(+ZQM
MKH(<J)XE?;],B@#A8K[Q-_PB=U!I=SH<5S9RHEK-IUNSV\ZX),*(3PV0 2"0
M,]L''H2;C&I< /@;@.F:(XTBC6.-%1%&%51@ >@%.H Y0>!;%]=UZ]GD,EKJ
M\'EM:XPJ,R;)7'NRJG/L?6I])\-3:/X%708[L3W?V9HGNI@3O=A@L>YQV'H
M*Z2B@#ACX'U!?"WAC3H=1MDO= N(I8YG@9HY0B,F"NX$9#=CVK1L_#VIVGC'
M4->-W:RBZLXK81E&4@Q[B&)SW+'C'%=0"",CD44 >>V/PZO+#P]X?@BU* :M
MH%Q)+:70B/ER+(27C=<Y 8-C(/8'VK;_ .$4-_?:KJ.JRQF\O[#^S@( =L$'
MS$@$\L2S$DX'0#'&3T]&0,<]: //K?P/XA-IX8M[K6K#&@3H8?+M&Q+&D90;
MLO\ >((Z$ <]>,;NC^';W2/%&M:@M]"]AJ<RW!@\D^8L@0(1OW8V_+GIGW]=
M>'5;6XU>ZTN,R?:K6-))08F"X?.,,1@]#T-7: "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "H+W_CQN/^N3?RJ>H;R*2>SFBA=4D="JLZ[@"1U(R,_G0!
MY?HNMZCH/P>\'W6GM;CS9;6VF$L98E)) IVD$8//<&NCN=6\0W'Q O?#MI=V
M-O;KIB7D4S6S.Z%I&3!&\!C\OL.>AJO_ ,(!>CP+H_AI=7@']FW$,PN#:$^8
M(WWJ-N_CGJ<UL)X=O4\;S^(_M]N1)IZV(M_LYXVN7#;M_JQXQTH XX^-/%*_
M#\>*I)M.7[#=&WNK9;=C]I"S^4S!MWR>H&#TZ\X'5W&M:G'\2+;0E>V^P3Z9
M+=+^Z.]9%=%Y.[!'S'@ 5E/\/+U_A_>^%CK%OBYN6G-R+,_+NF\TC;YGKQG/
M2MN3PY>R^-K+Q$]_!BWLGM&MQ;GY]S!BP;?QRHP,&@#EO"M_XBC\(^(K^*\M
MKV]CU.ZC0W8$2 K+M+LVX#:%&=O'3&:T+/Q+J-WKFNZ+#?K*D.FI>6E\;7:P
M+%E/!PKK\H*L!CZTR?X=WLF@ZSI$>NK';WE^U_;8M<F)S*)2LGS?O%R,8^7@
MG.>,:-IX2U)?%<VN7VL13&YT];*X@AM/+!PS$%"6)4?-T.3GOCB@#E['7M>T
M3X)Z9KL-Y;SW#);EO/@).))%5N=W+9;.2/PKKY=:N]3\87OA[3[A+46%I'/<
M3F,.Q>0G8J@\8 4DGOD 8K(;X?ZD_P .T\)/KD!2)HEBG^Q$;8XY Z@KOY8D
M $YQCMW.O<^&+N/Q4OB33+R"&]EM1:WL,L1:*=0<JPPP*L#GUXX]Z .8N?'N
MNCPW-+''8IJFGZVFDWBM&WERYD50Z<_("&!YW8YKH-*U?6H?']UX>U6XM;J)
M].74()((#$8_WA0H06;(Z$&J]]X >YT)K&#48X[FXU1=4N[E[<L)90X? 4,-
MJ_*JCD\#N>:T)?#M\/&4GB0:E;Q_\2PV B^S$[?GW[]V_P!>V.E '35Y]XQ\
M5:UH$&NWB36L7V!8Y;.T6/SC<1X!=I=O,8)W*#\HX[UTWA/^V/[ B&NW(NKT
M.X^T"#R3*FX[6*?PY';TQT-<YJGP^U"_C\46D6NI%8Z\WFLKVF^6.38%QOW8
M*?*.,9QT(ZT 6;W6]?F\>6VAV%Q8P6MUI+WBR2V[.\3!T7GY@&Z\#Y>O.<8.
M4?%GB=_A_J&K0?9)=1T:^GM[P+;DK<112;7=%W?*VWYL9(X-;]MX6U&+Q58Z
MY+JMO*]MIS6+1_92N_<P8L#OXY4 #!X[D\U7TZ+3_A_IM\/$.M68@U/49KA&
MDB,2[Y269.6;(X- &K;ZO+J>N64>G7,4NG&Q%W</Y>2P<XAVG/&0)">#]T>M
M'B#6YK#4-&TFTV+>:K</$DD@RL2(A=VQD9.!@#U.>V#2^'WA^+P_X:"1+,HN
M97G1)R=\<1/[J,YY&U-HQV.:L>+_  L_B2WLI;2_;3]4TZX%S9W:H'"-C!#*
M>JD'!'_ZJ ,;Q0-=C\!^-8-7-O+;1V,WV*YC^5Y4,1)#J. 0>,CKZ5:&H:A:
MZ;X=@BN(;.PEL 9+C:))FE"+LCCCZMG+$X!X7MUJQ=>&=7U/PMJNG:EK44M]
MJ5N;=YTM=L4*$$82/=G/S$Y+<GV %0?\(AJD.KZ+J=IK,$<]CIYT^99+0NDD
M9*G<@W_(_P HYR1_*@#&/CG6Y?ACIOB*,6:7<E\MK<*T+88?:/))4%OE/&><
M]:V+S5_$$OQ#F\.6=U8P6S:4+V.9[9G>-C+LY&\!NG'3KWQS07X=7Z>"E\-C
M78FC2^^UQS/9Y( F,P4@.,DL>3P,= .M;P\.WH\<GQ)]OM\'3A8?9_LY_O[]
MV[?Z]L=* .-D\9^*X_ -WXD:?30^DW4EO<P+;L1=^7-Y;$'=^[R.@ /(Z\X'
MI]Q<QVMG+=2G$449D<^B@9-<1)\/KV7P-J_AIM8M_P#B8W4EP;@6A^3?)YC#
M;YG// .:[<0&2R\BZV2[H]DF%PK9&#QD\?C0!P-UXPUNW\!0>.5^SO:$)<2Z
M=Y?(MV;'ROG/F $$D\=1BEU07US\7-!>WOXUB?2[F2$-!NVJ6BR/O#)/'/&*
MMVW@*YA\,GPG+J:3>'Q)\JM"?M'D[]_DEMV,=MV,XXQGFM2[\-W<_C:PU^*^
MMXX;.UDMEMC;DEE<@D[MXQ]T8XH T=?N+^QT"\GTF&V>]C3=$MPX2,'/+,<C
M@#)ZC..M8&@>);J[\:WNAO=+>VB6$=[!=>08B=SLC =G7@$,/S-:WB[P^WBC
MPS=:3'>&T>4HRS!-X!5PPRN1D$K@BJ&G^%]4@\9#Q'>:S#-))8+9SP16GEJ=
MKE@4)8E1SSG)]QT  OCK6=4\.Z;:ZM9R0BQANHDU$21%V2!F"LZG(Y7(['CZ
M5=DO=1N-3U);&XMQ;6ENH4R0EP9R"V"0PR I0X_V^O%:FHV%OJNF76GW:;[>
MYB:&1?56&#_.LO0O#TF@^$H-'BN_.N8X=CW4REM[D<L1G)]AGH ,T <WI/C>
M_P!0\.^#E;R%U;Q"7S)L/EQ*BL[L%SR<  #/4Y.<8.II^O7\'C6]\*ZFT=P?
ML(O[.Z1-A:/=L97'3<&[C&0>E48/AY+;>&/#]A'JB#4] E\RRO1;D*1R"KIN
MY5@<'!':MNV\/W UFZUR[N('U26T6SB*1$10QABV,%LL2QR3D= .,9(!R/@J
M^OK'X2^%&M)+:W@D.RZN9V \F/<_**?O,6VJ!SUZ&J6O^*-8U+X8^,V6[\F?
M3+M[03K;F-Y82$/*M]QB'P3CMP!6Y:_#W4=/T'PU96FN0"ZT&=Y(99+,M%*K
M!E(>/?U 8X(:G2?#NYN-(\5:;<ZWYD6NRF<,+8*8I"J D_-\PR@P..,Y)/(
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
M*[36]8O]*\8>%M+M3;#3]1DFBF0Q'>/+A9UVMG ' XQVZU8'A.S'CP^*P?\
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
M  PN3Z9//4GH.!QU_P##G4KO2]?TJ/Q!''9:G?&_3=9[I(Y#(K[6;?\ ,@*
M# !Z<X&" ;<VKZAJWB/5]%TJXBM&TN")I)9(]Y>64,RKCH% 49[G=QC'//ZG
M<>)I?%7@.&]NH+&ZN!=-<V\*>9$)4A;YLY!(PQP,\9[UJ7_@[6$\2?V_H>O1
M6=]<VZ6^H+-:>;%<;?NN%# JPR0.3Q^.;6I>$KNZN_#][::N8[W29)F,UQ!Y
MOG>:I60D K@\Y&.!Z8XH JGQ;=Z?XD\6PZD87T[1K"*\B$,95RK+(S DDY/R
M =OI534/%.M:-X:T?Q3=O;36-TT!O;1(L>1'-@*8WSDE2R@Y^]SC;6J/![3>
M(M>O[Z[BN++6+-+.6U$)5E10P^_NY)#G/ JK;>";PZ%8>'M2U.*[TBQEB9/W
M!6:9(F#1QN=V, A<D#D+VH J2ZWXJO==\7:;:7NFVZZ0D,D$K6C.6#QL^TC?
M] 6SVX7GCI_"NL2>(/">E:O+&L<MY:QS.B] Q'./;-9L'A:^@UOQ+J2ZC;G^
MVHXD$9MC^YV(4!SO^;@Y[51M-%\0>&]-\+:1IVKPRQ63K#=1"R_X^805!)8L
M?+VKN.<\G [XH Z7Q =670KM]#:$:DD9>!9T+([ 9VD CKTSGBL+2?$USKVF
M>&9M/N(O.U!6FO-T7W(T7$HQG@B0JG?J>N*Z35-6L-$T^2_U.[CM;2,@/+(<
M*,D ?J17->!]&L;>\UO7+ N;35+LR6H8_*(\#<R#LKR;V]QM- %$>*=:U3P=
MJ/BS29+86]J\[V]G)%D3PPLRMN;.0S;&(QP,C(-6]+\6W6K>+M+M;<QC3-3T
M,ZG&&C_>1MN0 9S@C#^G7O26_@>[T_3=6T2PU..+1=1>5Q&\!:6V$O\ K$C;
M=@@Y.,CY<_Q58O?"%Q#K6CZEH%[;V+:?9-IYBGMS,C0$J0!AE(8%1WH L>"]
M;OM<L-3>_,)EL]4N;)6B0J&6-]H)&3S72USOA'PW<>&K?4H9M0%XMY?S7BDP
M[&3S&R02#@]N@'?BNBH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHK.U^[O;'P_J%WIMK]JOH;=W
M@@QG>X&0,=_IWH T:*\_L/%9U70M9U#2/$'VH6=BTODSVZ)<6TZAB5D3:/E.
M .G8\FI&\3ZJ-.\!7HFCSK3P1WD?EC:=\)D)7N#D?E0!U&D:_8:Y)?QV+2LU
MC<&VG$D31E7 !(PP!Z$5J5Y7IEOXDFU/QS)X?U&TM)8=69PD]MYOGN(8\(3D
M;5]P">>V.;=GXTUO7+GP4]C):6L&O6MP\R/ 7,<D: D@[N1DG XZ#)- 'I-4
MK[5(+"ZL;>5)V>\E\F,QQ,X4[2V6(^Z,#J:X&/6?%LVG^*[<:Q:+<:!*Y2Y^
MQ@FX7RA(JLN<+UP2.N>V.=";Q7JLJ>!+N%K>*WUQH_M47E$L-T)DPK$\#(QT
MS[T =UD;BN1D#)%!(49) &<<UPOA;^T9/B-XQ%QJ<DT-M-;(L;1KC:T.X*/0
M L?KWIWQ$:^6\\*):ZA);1SZU##(B(I#?*[ G/7!0<=/R% '<T5R-OJNH:YX
MBUK1K+4#9KHZ0QM.L*NTTSH6R0PP$ QP,$DGD8JUX(\17'B7P^;F]A2&^MKB
M6SNECSL\V-MI*YYP>#[9Q0!T$T\<$4DC[B(UW,$0NV/90"3^ JGH>M67B'1K
M?5=.=GM+@$QLRE20&*YP>1R#7)^'_P"T9?BEXN6;4Y)(+>.S"PM&N-C)(P4>
M@!)/J<\UROA/5=;T'X;^$-1@O+?[!)>QVDMF8,ETDG92V_.0P)R !CUS0![-
M4<L$4X42Q)(%8,N]0<$="/>N)O\ 7M?U6;7H_#\<RRZ7,;: )'"R33"-7(D+
ML"%)<+\N,8)R<X'7:7->W.D6DU_:BTOI(5:>#<'$<F/F7(." ?>@!-.U2#5/
MM?D).GV6Y>V?SHFCRRXR5S]Y>>".#5VO,+SQAK\'@/Q?JQNH/MVC:I-;P%(
M(V1"@ *DD_Q$]<Y[UTNI:QJ-KX^T/2H9T^R:C:7,CH\8.UXPFT@C!Q\W(]NU
M '552TG5(-9TR'4+9)TAFSM6>)HW&"1RK<CI7'>$]0\6^(1/>2ZMI\4%IJ%W
M:/"+$GS0A*HV=X*X('&3D9YYXI6?CC5#\-M!\0ZAY@2ZN'74KJSM]YMH@T@#
MA,'C*H"2#@$\$T >EUEQ:_83^(YM!1I?M\-N+ET:)E786V@AB,-SZ9Z&N9?Q
M;,NF:3'8ZI::C-K.HFVL[U%!5(L%BS*, NJ@C''S8X XJO8V]]!\9=0CEOOM
M$A\/QF&66(94>>W#!=H;!STQQ@>] ':Z3JD&LZ<E];).D3LRA9XFC?Y6*G*L
M,CD5=KSK1?&NJ7G@[P[+</ =6UG49K/S1'B.,))+E@N>2$CP!GJ1G/-2>,/^
M$GT_P=XN,NII]EAM/,L;M%47!&P^8C@*%'/1@ <'UYH [._U6WTYK(2K,_VR
M=;>,PQ-( S D%B/NKQU/%7JX2_U36-"T_P '1PWL4L5_?V]I<>9 -^QD)PI!
MP/NXZ9YZU<MM6U+Q+J?B"VTN^6Q32IQ:1'RE?S9@@9B^?X,L!A<'@G/0  Z^
MBO,;?QWKFL:?X/N[(6EH^J7DMG>0R0E]DB*^2IW?=RF<=>VX5T7A35M5F\0^
M(]#U6ZCO'TN6 Q7*0B(NDL>_!4''!!&: .LI&944LQ 4#))/ %<UJ&M7%QXV
MM_"UG.;5OL#ZA<7"J&<)O$:J@8$9))))!X'OD<_<:YJFHZ!XXT.]N%34-%A<
M&YBC $\+PLZ$J>%8C@X[]* .JL?%NEZAJ=O80FX#W4!N+61X66.XC&,LC=#U
M!YQP0>AK<KF_ ,,\7@70_.N3,&T^W9 4"[%\I?EXZ_6L6^\73Q>+;O1;G4O[
M(O!<1C3H[B >1>PD(6(D(Y<DNH (Q\O!YH [ZBN0L=8U.Y\4>+M)>Z'E:=#;
M26L@C7<AD1V(/&&&5';I^=9NA>,-1UK3/"-HTL<-_K5I+=7%PB#]VD8&=BG(
MW$LO7( !X- '6Z[X@L/#EDEWJ+2K$\JQ*8XF?YF( !P,#DCDX%:E>9>.DUV+
MX?ZA%K$EM.\>K6PLYH_E,L/GQ[3( ,!NH.!CCI6[INJZU:_$2;0-2O(+RWGT
MS[?$T=OY1A82A"@Y.1R#D\T =A17/^(M;FL-0T72;1E2ZU:Y:)9G&1$B(SNP
M'=L# SQDY.<8.1K&N:]X3TO4YK^2VO$>Z@M])F88=C*0I\X* /E))^7&0.U
M';T5QM]J^J:!XMT73+N]-Y8:R)8%E,2));SJNX$;1@J1D8()!'4UAS^,=<C^
M%NJZ^+F+^T+"_E@5O)&QT6X$8W+]#GC'- 'IU)D;BN1D#)%</JVI>)[GQ_/X
M=TO4K*TA;2/ML4LEH9&1_-V8(W?-T]L ]":HZ'-KL/BKQU+]N?4+FQ$(AMC&
MJK*WV?>J#NHW,>_?DD\T >CT5Q?@SQ.OB*ZS#K)N#';G[987,"PW%M/E>-N
M=OWAW^I[:_B2]O;-M.$%U#:6DLY2ZG;#2A=I*K$A!W.S #&#QGCT -VBO+;G
MQMK\?P]U[5()H/MFE:LUBLD]L5:6/S(U!*Y 5\2<\8XZ5NKKFKZ/XZ.FZM>V
M]S87&F2WP\NW\LV[1LH(!R2P(;OSD4 =#KNOV'ARP%[J+2I 9%C#1Q,_S,0
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
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M?;+@JTJ[A_J#U7(R#TZCK7?U%);02N'DAC=AT9E!- '+WO@R34+/7S/J$?\
M:&M6XM);@6YV0PA2H5$W9_B8Y+<D^F!4NI>#1JOA73M)N+\I>::T,MI?0Q;3
M'+%PK["3GC@C/.3TKJ** .>CT.1-5&O:S>03W=M:/;PF*$PQ1*Q!=L,S')VC
MG/ &/4GC/A]H4WB/X3Z'87FH02:2</+!'#^\<)*6$;/NQC<!GY<XX]Z]2=%D
M0HZAE/4,,@TD<,4*E8HT0$Y(50* .0O/!>IQ>)[O6?#_ (C?2EU#:;ZV:U6=
M)&48#IN(V-@8[YJXOA2:/Q9IVM1:D/+LK)K/R)("[R*Q#,S2;A\Q*@YQZUTU
M% &?;VFH1ZU>W4VI>=8RI&MO9^0J^0P!W'>.6W<=>E:%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %0W2R/
M:R+#,89-ORN%!P?H>M35'<2)%;R22.J(JDLS'  H \IM?&OBA/A+!XZDO+"9
MUR\UE);;$=!,8\*X;(;N"<\]J]-CU2V.D0:E<NMK!+$DA\]@NS<!@'/?G'UK
MPWPYI#_\*I\,>);9)-4@TN2:6_TB25I8I8_-?+K&25$B#YAP,\_CVWB[Q/8R
M_P#")>(;?4G_ .$>^U/]HO+8*_DL\16-F!!Q@D@Y'&?6@#>\5>(O^* UG6/#
MNJ6[2V<$CK-%ME"N@R5(Z _7\JM?;GE;P[OUZ"SFF4/):NJ%[W,9.U<\C!^;
M*CM7%ZW'X?\ ^$'\=ZGHVHR7YO;+_2;OS5:&20(R@*5 7<!C./49YJYK,MM_
M;/PSD\R+<TS;6R,D?9F[^F2* .YO-=TG3KA+>]U*TMYG( 2695.3TZGOV]:Y
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
M52.2%D!./7I^E,\6:O#H/Q%\-W^KR"'1FM[F!;B3B.&X;:06/094,H)]3[T
M=<NMZ4^FC45U*T:R+;1<"9=A;.,9SC.>,=<\4P>(=%_L][\ZM9"SC<QO.TZA
M$<=5))P#[&N&UC4O"UC::?<:;:VOV>]U\31ZA)(PM4NBA+3Y# ,.J@9"EL],
M9KG+JXANM ^*MK!>K>S/MG4J!ET\A,N .-OH>_J>M 'LAU.P6]BLC>VPNYE+
MQ0&5=[J!DE5SDC'I42:WI4E\MBFHVK73,R+")1N9E!+ #N1@Y';'-<!=:]I-
M[X]^'\EKJ-M-&(+M2Z2 J&:%,+GIN/IUY'J*AT:XO-&U30DM+NVUSPW?WTBV
M888N]/E99"P)'#JH+@YY&: /1)]=TFUODL9]2M(KIV"+"\RABQ&0N,]3V'4U
M'K.KV6G6\D4VJ6ME<-&6C,S+D#INP3TSWZ5Y;IMUH6IZ!J?AKQ3J]W#J<>H3
M>?IH*)+/(9C)&T7R[VSE<8/Z5NZ)J]G9>,/&MCX@N(;>\EDC>$73A1+:>5M4
M+GA@#NR!W8^M '2?#_5KW7? >D:GJ$HEN[F'?*X4+D[CV' J?2_%^D:OK^HZ
M1:7<+W%DRHP\P9=R"6"CN%&,D>I]*R/A'/#/\+M"\J5'\N H^UL[6#'(/H:P
M'N)QK?Q.T_3YPFLW$<;6<(;$CG[(,%1UZCKZXH ]$AUW2;F^%E!J5I)='=B)
M9E+';][ SSCOCI4NJ:I9Z-IEQJ.H3K#:VZ%Y';L!_,^U>8ZC+:ZW\,_"":(Z
M#4X[JR6TC0_/#(F!*".HVJ'W>PYKT'Q:K/X,UU%!9FT^X  ZD^6U ',ZKXRF
MNK'PAJFCW\,=KJ6HV]O=Q+LD*J\9<H6_A(P >AYKL-,UK2]9CEDTO4;6]2)]
MDC6\RR!6]#@\5Y?>WVF:CX*^&D2W%M<1KJ5A%*NX,H(@8,I]QD CWYIVO+</
MK_Q*MM(YO)='M2L<)^9R%D#8 _BV\?B* /3+/7=)U"[>TL]2M)[A5WF*.96;
M;G&[ /3/>L_QCXG3PIH8O! ;F[GF2UL[<-CSIG.%7/8=2?85S6A7WA3Q1J^@
M:G8ZS<W^HVJ.8+=6C5K5&3#B545<+P!SQG&.M3_%;3;RXTC1]7LK>2Y;1-4@
MU"6",99XD/S8'<CK],T ;KV'B9-.>:/6H)-3\LD0O:J+7?C[H _> 9XR6/KC
MM5V/5X++2;*?6+F*TGEA4NLS!#OV@L /;GZ4RV\4:%>:='?VVJVLUO( 4*2
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
MGH2-IR!TP<U;N;J"RMWN+F9(H4QN=S@#)P/S) H (K.VAGDGBMX8YI?]9(J
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
M3BBU#3?'XTMK9]4.L7K6SJ5+*YC C8'M\Q.#]:].,:%LE%SZXH5$7[JJ/H*
M/'[J:WUKX)Z/I&G,JZ] UI;PVP.)X;N.1 Y*]5( =B3VR:Z'1Y]/'Q;\8&66
MVW+8V:L69> %DWC_ -!S^%=Z((EF:98D$K#!<*,D?6G>6F2=BY/7B@#PVTN+
M&'X$>&&$MNCKJENQ(900PN>3]0OZ5Z_XDNH+;PIJMU-:M>VZ6<KO;H>9EV'*
M@CU'&:TO*CQCRUQ]*?C QVH \>T[6M.F\:> [J/5+66!M/N85CMAB&W)CBVP
MJ>26 X(8D\9PN:R[N:P_X4IXU:.2VWMJ]R059<D_: 4_3D5[DL,2A0L: +G
M"CC/6CRH\8\M<?2@#AO&[-HU]I/CG38FNA:?Z+>QV_S&>TE(Z>I5]K#ZFNIT
M"PET[1X8[G!O)"T]TPZ&9R6?'L"2![ 51NM&U>_U_=<ZC;?V#&T<T=DEOB4R
M)@@,^<;=P#8 [ =,YZ&@#SV";3+/XM^)7U22UA$NFVOE-=%5#H/,W[2W4=,X
M]LUR7V.#2O"_A&"\$=O:2^+OM%I;S_*8[5C*4RIZ#D'_ ($*]LDABF*F6)'*
M'*[E!P?44K(K?>4'ZB@#SGQ/J%EX;^(6FW6ISRZ=HESI\EO%=0?+''<&7>P8
M@8&X8.>Y6J,UWX9T)-";342*ROM6GG@U>^=C##(8COD7) ^?)5<X7.6Y&,^I
MR11S1F.6-70]589!_"E:-&4*R*5&" 1P,=* /#/MYBT#Q-);R37T=EXLCO[Z
M,)^\EM5,1+%0 ,$KGH 0I/0&NXOM;\+:UINN:QI,MO<S_P!D2Q3ZA'PJ)@E8
MV8\;B23CJ,<XXKO J@L0H!;D\=:8D$44?EQQ(B==JJ /RH \B2YL(/"_PH,<
MUM&RW5MG:RC&;=@__CQ&?>NZ^(T;R_#CQ%'&C.[6$N%49)^7TKI/*C_YYK^5
M/H \ROH-.UF?P#_8+6TMY:7,4[R6I4^3:B,^8&*]%8[5P>I_&I-9M+_0_&MS
M8Z;%)]B\6IL+Q_\ +K<J )9/;,.6]V2O1HX8H=WE1(FXY;:H&3ZFL+2-'UA-
M3>_U[4K>\DB\R.S2W@,2QHQ!);).6P%&>P!ZY- &[##';01P0H$BC4(B+T50
M, "O-KK3[S2_&5_X9MH'.D^)S]L#K]VW((%TI]-Z[<>[UZ8<X..M<_H&D:O;
MW#7_ (@U&WOK\1F&(V\'E1QQELG@DDLQ"Y/^RON2 845X-(^+^H?VK(D%M>Z
M9"NFRRD*F(V;S(P3QNRP;'H!7(75J]AX,U&_/R:/_P )?'>VS8^1+;SDRX]$
M+;B.V.>]>TRPQ3ILFC21<YPZ@C/XTK(KH490R$8*D9!% 'GUAK&G:A\:WDL[
MR&>*7P^B121ME)"+AB=C=&Q[9Z'T-6O'L\NG^(/"&J7!(T:UOW^VL?NQL\92
M)V]%#,>3P,BNV2*./[B*ORA>!C@=!]*<RJZE6 *D8((X- '#62I+\7-0U>QF
MC.FKHT<-[,C#RVG\TE,GH6"9SZ CUH^$5S!<?#^W6&:.0K=76X*P)&;B0C/U
M!!_&NW2&.*(11QHD8Z*J@ ?A2JBK]U0/H* .*\?Q2Z1+IOC.SB>2;2'*W<<8
MRTUI)@2#'<J<./H:R?%5M?:9X4T/4KF)]JZW!J6LJHW;$+$G/JL9\L?1 >U=
M;J.CZQJ>MJ)M2MUT#$;M:+;GS7=6W8+YQM) R,<@8[DUT!&1@T <),L>I_%G
M1M1TB>.:&#39UOYH'#*48KY*DCC);<P'H":X*VUC3H?@_P"'-->[B%]8ZM;B
MZM\_/;[;HY\P?P?CC->ZQ0Q0)LAC2-<YVHH _2D$$(8L(D!9MQ.T<GU^M '
MZ.VF7OQ@\3HQM)W>PLPJG:Q.-Y; ]OD)_"KWQ: /PLU_(S^X4_\ CZUV01 V
MX*H;UQ6#XVT*Z\3>$K[1;26&&2[4(99<X0!@<X YZ>U '-:O;:?J'C+P3<:(
M;8RVAEEEEMB,1VGE$'<1T4L5 SW)QWK+\-VPU'X?>,UT402:H=0U+[.\6TN&
M8L%*GL2#@'WKU&T@\J ;X88Y6&91%T+>N<#/XU,J*GW5 ^@H \HU"XM/$/PZ
M\)6FC21C5HKJR$$*'$EM)&0)=R]5"J'SG^HJ]IL^G'QI\2F>6V_U5L&+,OW?
ML^&!]L\'WKT=8(DE:5(D61_O,% +?4T[RX^?D7GKQ0!XO%<V,/PM^&[":W0K
MJUBS$,HP03O)_/FN@>ZTX_$GQDES,K0'0X?.6)QO*@2;\>X4C\Q7H_E1XQY:
MX^E+Y:9)V+D^U 'E.GR:Y:R-H5GJ5KK]O<:+<G2=3APMQ; *H59"O!!.P!N"
M2M+X6O\ PKXBLO#5L]S>RZUIKQ;=-+LLEK+& KEEP,(!GKP1QU(%>IQP11%C
M'$B%SEBJ@;C[TJPQ)(TBQHLC_>8* 3]30!Y9I%U<:3J^CC2M1M]:\/WVHNL5
MI*!]JTZ5A(7((^\JY<'/(!_&NR\<PV-QX<\F^U&335:YA\F]C('D3"0&-CGC
M&X#.?TZUT"P0I*95BC60C!<* 2/3-/95==K*&![$9H \AU._\0S^%?$UK>PP
M7]UI=S9RS7VFKM^W0!U=AMZ!U1?F XP1VZ[NEW/A;Q)JAU?1+^YU34ET^2(R
MB1B(8F&=CC  );HIYZGM7?Q11PQB.*-8T'15& /PHCABA!$4:("<D*H&3ZT
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
M-XI)TVF4&V !&% Y/ P.>V:WKB\L%\3_  P,5Q;A%AN!\KC !MMH'L"P ^M
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
MKJWL;62ZNIDA@C&YY'. HH FQ1699>(=+U"YN;:&Y*W%L@DFAGC>%T0]&*N
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
M[???>3@E2H "C!/!).,XK!^'_C>RE\):%#K>L>9JUZ\D8:4$EW,KA5+ ;5)
M& 2,\8H ]#(!&",T5E:IXCTK1O,^W7+((E#RE(7D$2GHSE0=@X/+8'!]*THI
M8YX4FAD62*10R.AR&!Y!![B@!]%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !5;4+^VTNPGO;N01P0H7=OIV [
MGT'>K-% 'G9\*GQ1X%OFO-;EC364:[N$"PF*-R 5!8INPFU%ZY^3M6$WB*_\
M0?"G2-0$$USJ&C7]K-J=H@)DE2&3YF"_Q @*_IP?2O8:* /-_$%[I_CGPGKT
MWA2U-U?3::T)O5MVC9AD$0!F +$C=P.G&>HJ]I?B71O&4-J=*LS_ &Q!;2)O
MEM61M-9DP06*\'< N <GKT!KNJ* /&@R:E\$AX1,6SQ'$B6?]GMQ,LZRC#XZ
M[>-^_IC)S73:6T(^,6I)+*DLO]BV\/F'^-U=RX^O0D5W]% 'CL.KPZ9X1\>>
M'M9+Q:U(^H3)&\;$W22(Q21./F&,#CH!SBKPNH3>?"MBQ3RHG\P2*5*9M=@R
M#TRW SU->J44 >4Q3VIA^*9,D>9B^SD?O!]F"C'K\V1QWJ";5+'1K+X=:U-=
M^5);Z<T#^;&[1%3#&'5F16*.&"XX[-GI7KM<[K&@ZM<Z[#J^D:VEG/';FW:"
MYM?/A92V[( 92K9QD@\X'I0!Q"W6BR_"_P </IFL6]_<7WVNZN$AR/+EF0A4
M56PW\( )'S')]AL:[8RWGPZT;6]**OJ>B0Q7UL0?O[$ DC)]&7<I'KBNNTO2
MY[6:6\O[I+N_F18WECA\I JDD*JY) RQ/))YZ]!536]"U'6-0B4:TUOHS1&.
M[L%ME)N.>?WAY4$?*0!TSTSF@"E8:M;Z)X3NO%.LK+ +QQ>3J(R[QJ^U(DVK
MDY"; <=\FNEL[N"_LH+RUD$EO<1K+$XZ,K#(/Y&EN(3/;O"LLD.X8WQD!@/;
M(XH@MHK2TBM;9!%#$@CC51PJ@8 'T% 'G=WI5[8>.;S0+:$MHOB7_3IF'2!H
MRHN%(]) 4'U<U;%W_8'Q8U2YUB58+#4["!+*ZF.V)6B+;XMQX#$MNP>M=!X?
MT+4-/D>[UK66U?4&3REG^SK L<><X"+W)QD]]J^E;U 'C%YIUQIW@^_U1XI4
MTUO%R:I$NP_N[43+F3;U"G!;IT.>]=+IFJVNI?&26YM#++;3:!&L4PB;8^)W
M.0<8Q[]#CBO0J* .,\<:K%IFJ>'!<0I#%+=2*=3:'S#9GRSC;P0&?.T$Y YX
M-<,!;3> OB#:7$E_&5UI[I9&M7+]83&[+@<%ER1UVY.*]LK(\1Z+/KFG1P6N
MHR6$\-Q'<1RH@=2R'(#H?O+G!QD<@<\4 <=X?\0Z!KWCV/5VUVQ_M%=.-G%:
M1>8NX;O,=R9%4GIPN. "<GM1\/6DNJ_"WQ=8:7M-_/=:CY:KPS%V;;_WTN #
M7<66CZK+<03:[JEM>FV?S(8[:S\A=^"-S9=R2 3C! ^M;U 'F7A[4O#'BF?2
MC;6FI-KUB"3#<R7/_$N?;ARV\[?8#G/''7&3X6GT"\T/3O"VNV&IR>(]/D1&
MT^26YVF5&^68$'8$_BW=!SUXS['10!@>.();GP%XA@@C:2633KA41!DL3&V
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
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 5GZ[K%OH&@WVKW0)ALX6F91U; Z#W)X_&M"L7Q=H9\2^$=4T9
M7$;W=NT:,>@?JI/MD"@#+\-6FIZ]H-IK.KZG=Q75]$MQ'!:2>7%;*PRJ@8^8
M@$9+YYSVXK0L+FXT+27_ .$AU#SY?M3I%/Y8W3*S$QJ$0<M@@8 ['BL7PAXK
MM+3P]8:3KF_3-8L8$MIK:X0J79 %W1G&'#8R-N>M0^,);W^T_"OB+['<?V9I
M]_(UU%L)=8Y(S&LS)C("Y)QU /..0 #IH?%&CSPW\@NS'_9X!NXYHGCDA!&0
M61@&P1T.,'M5*/X@>&)&L0-3"I?)NMYGAD6)_EW8\PKM#8YVD@^U<]>Q)?\
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
M2005."""",&N+E\21^'_ (EZ\FH7M]+:#3[>6*U19)]K%GW%(U!P, 9./J:
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
M:!(\OAW3))'9W>TB9F8Y))09)- &A1110 4444 %%%% !1110 4444 %%%%
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
M"@[6PP/S8]\5S>A7]YI?@GPY!-I5Y#&-6N?M-T=/:66T5GE9'C&T\MN"[P"
M">YKV2B@#Q^%)8_"_P 2[,6.IA[IYGMA/!*6E#VZJF"1EB3VZCOBO3/#;;O#
M&E<,I%I$I5E*D$* 00>0<BM2B@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *9++'!"\
MTTBQQ1J6=V. H'))/84^N=\>:5>ZWX$UK3=./^EW%LRQC.-QZ[<^X&/QH YK
MQ)XA6]\0^"WL7U*"*ZU(;6(>.*YA\MCDC.#SM(# ''(XKI;CQKH]M-*'>8V\
M-X+&:Z6(F*.<D#8QZ]6 )Q@$X)KCM1UJ371X)DAT75XYK+4XVO86T^5?L^(G
M4@DK@@$]1D8].*S/$LFIZKH6NPSZ-JRWUOK"/':VMFZP>0LZ$2@J,3,RC)/S
M'/0 #- 'HUWXRTJTU:[TK;>S7]K"LSV\%I([,I) *C'S=#R./>J:?$;P[)96
M-['-=/97;K&+I;5_*A=FVA9&QA#NXP>G&>HJC822GXKZCJ#V5]':R:-!&LKV
ML@4NKNQ7.,9 8< ^U<FUI?'X%S::-,U+[<=0+"V^Q2^9M^V^9G;MSC9SF@#T
MG5/%VF:5/>Q2_:)FT^!;B]\B(N+:-LX9OP5C@9.!G%6;CQ!80FP2.1KB;4%+
MVD4(RTJA0Q89P  ".20.0.I%<)XHN;[4;[Q9ISZ7J8CETP#3OL=JZK>$Q-DR
MR #E6.T(Q QGAB:J7%VVG0^ M3%AJL-[:Z>\,FW3WG(01QJRO"I#CYL8;C&.
M<Y% '=V/C+1=0L[NZAGG6.SD\JX\VUE39)NV^6,KAGW8&U<G)'J*GT_Q)8ZA
MJ\^DA9[?48(A.UM<1[&:(G =>S+GC@\'KBO.9;>#4?!VI#P^EW?ZK#J\>M7U
ME<VKVKSDR!BJHXR%(3 P3]WJ376>%;C2M7U,:EI_AF[L)(X#')=7UJ89!D@^
M4N[EAU)QP,#UH N^)?%?]@ZOHFGK97$[:C<&,O'&6"*$9B!CJQP./3)],W+W
MQ-8V<L\0BNKB6VB6:Y2WA+F!",C</7 )VC+8[5B>.8YXM:\):DEI=7%O9ZBS
M3_9H&E9%:)U!VJ"<9(YQ531)KCPWXP\3?VI:7GV;5)H[ZTN([=Y0W[L*T1V
MX9=H '<=* .VT_4+35=/@O[&=+BUG0/%*AR&!KEHO%)UW4_$VC"UO;9=/01+
M,JLC;C&7+;@?ES\N._YU8^'6B77A_P %VEE>(8IFDEG,)/\ J0\C.$^H!&??
M-9%B;C3O&7CA)]/OREZ(9K>:.V=XW46X4X8#!.X8VCGGIC)  SP'XTLD\*>%
MK+4)KQ[N^A6);N6%VCDF()V&4C!<X/?MCK73ZKXMTS1TNI+@7+P69 NYX82Z
M6^0#\Y'L03C. 03C->?0VUY'\.OA]:MINH_:++5+.2YB^QR[H50MO9AMR ,C
MFK$7E:/X@U_2M?\ "^HZG%J-[)=65Q;6K31SQR ?NF[*5.1\V!CK@=0#T]KR
MW6P-]YJM;"+SO,4Y!3&<CU&*XOP7)=>-]%'B75;J\CBO)'-G96]R\"00JQ5<
M^607<X)))/48 KK8M/B?04TZ2WCMXFM1 T$)^6-=NTJOL.@KB/ MW/X*T1/"
MNOVMY')82.EM>16LDL-U$6+*0R [6YP5.#]: .EM@_AB+5;K5=5FFT[S$DMW
MN&WO$I4+Y8P,L=PXZD[@.34]MXFL)]3?3)$N;:^6'[0MO/"0TD?=DQG=[@<C
MN*Y[QU!JNN>&8;O3+&=S8:A;WT=LRE9;I(FW,-AY'J >3MZ<BEO$'B3QQX9U
MBQBNDM=)BNIKB66W>(_O$"+& P!+9R2 .-OJ10!;_P"%E>'/[/CU 27GV%IS
M ]S]DD$<+;]G[PD?)\WKSR,@9K0M/%^EWFLR:4@NX[E8#<1B6UD03Q@X+1DC
MY\$CIUSQFO-YK2^?X(:SIRZ9J/VZ6_E:.W^Q2^8P:ZW@A=N<;><UU^IF2?XI
M^&KN*TO&MH[&Z22;[+)L1GV;0S;< G:>M $C?%+PNMM#=F>[^QR3&%KK['((
MH6#%<2,5PF2.AYQ@X -:VI^+=,TN>[A?SYWLK<75W]GCW^1$<X9OP5C@9.!G
M%><:.XU3X0:QH%O:3SW]W=7D$,?D-M9FG?#[L;0JDY)SQM]:T=8CU!9M=T"?
M3]2=(]&CAL)+&V;%\XB8,9)5'\+' 0L!R>&)% '9WGC31+*ZTVWDGF>34H6F
MM/*MY'$R!=WRD#DX(X&3R.*K_P#"?:&OAZ\UN0W<=K93FWNU:U?S+=QC(=,9
M'4<^]<II8NGU+X9.VFZC&ECI\T-RSV<@$3&!$&[CY<LI'..F>F#6OX5L%O=2
M\;VM_8W*VFH7Y*B>W>-9HFB1"06 R,@CB@#K)M9MH)-.C=)B^H-M@"QD\[2W
MS8Z# )R>.*=JVK6>B6#7M]+Y<(94&%+,SL0JJ .222!7(?#ZPU2-YH=682KH
M6_2K*;=DS(&#&0^^P1+[%&]:UO'EW?67AZ.6QL7NC]K@$QBM_/D@BWC=*D>#
MN9<9'!P><<4 65\7Z6(M6:?[3!)I*J]["\#,\2LI96PN=P(!.1GH?2H+'QWH
MFH7NF6T+72_VG'OM)I+9UBE.W?L#D8+ =O8CKQ7%Q1SQ:QX[>/3-:>#4=(A%
MK+/;RNTI$<JGKR"68#;P1GH .)WBN1H?PSC_ +/O_,L9;<W2BSES %MRC;_E
MXPQ YH W_&WB*V3POXBAM7OC-9VL@DN;(,!;2[-R@NI!R,J3C. ?FP*V_"TK
MR>#=%ED9Y)&T^!F8G+,3&I)SW->>02WNC>&_&WAK4--U%[^YDOI[2:&TDECN
MDF5BI#J" 1G!!(QQ7H/A#S%\&Z+'+!-!+'8PQO%-&4=65 ""#R.10!2?Q[H<
M>A7NLNUV+*QN&MKEC;/NBD4@$%<9X) SCO6M+K-O#=VMJ\=QYMS"\Z!82V$3
M&[.,X/S*,=R1BN+O_"]Y<>,=8T@0N/#VOPI=W<JG'ER(-CH/=_W1/J U:/P_
MM-6@T<SZ_&RWEFG]G1G!)>*%F'F =<N>?<*IH I-XPTW0? "ZKHHU'4;>6]:
M".2Y#LRNTQ4EMW(4,2 .O0>])JFL_8OB?H\[2ZB+:XTJX8V0$C%G5T Q",_-
MC/0=.:YY-/U!_@S/;KIE_P#:H-6^TM;FU=93']L\S*J1EODYXKIYYY+OXI:'
MJ*6.H+:#2[B-I7LY J,SH5#''RDA2<'!'?!XH W[/Q?HU[H#ZRMP\=K'*8)%
MEB99$E#;?+*8W;]V!MQDDC%26WB:QN=1FTTQW,&HQ0^?]EFCVN\><;D[,,\<
M'@]<5YFVEZO-HFI7=IIUZTEAXQ;5_LKV[QO=6X;/R!@-V<Y _P!GUQ77RVY\
M1_$+P]K5C'<)9Z9:W/GS2P/%O,H54C 8 DC#,?3 SR: -1?&VB-X?LM<668Z
M=>3""*7R&X<OY8##&1\PQR*CMO%GVGQW>^'18W*I:V\<AF,1PS.6Y]EPO4]3
MG\?.$%]#\++/P[_8VJOJ6G:JAN$6SDVA1=E]RMC#@J0?ES^7-=M:?:+3XLZA
M<26%Z;?4--ME@F6W8Q@HS[@S8PI 8'!(/IDT :OC+Q.?"VEV]REI+<27%U%;
M+L3(3>X4D_@3@=SCWKG[[6?L'Q5M)GDU$VT^A2R"R D<M()D VQ#.&QGH.@)
M/>M'XEVUS<>%X)+:UGN3;:C:W$D<$9D?8DJEB%')P.>*JF:2?XM6&HBQOTM/
M[$EB,KVD@57:5&52<8!*@G!Y'0X/% '06/BS2=0T*/5X)I/L\DAA"-$PE\T-
MM\O9C.[<,8_IS4NE>(K'5[Z]L(O.AOK(K]HMITV.@895O0@^H)%>7#3]5'AJ
M:]AT:^N?[/\ %5QJ,EB\#QR7%LY<9C# ;CA\@#TKO/"DFEZA>3ZGIGA^XT]6
MB$;W-W;&&64YSM ;YBH[GIDC&>< &AJOBO2M&U:UTR[>X%W=([PQQVSOY@49
M(4@?,>1P,GD<4FG>+M(U+2+G4HY98H;68V]Q'/"R212@@;"F,[B67 &<Y&*Q
MO$*3-\3O"$Z6MU)!;Q7JS31V[M'&71 FY@,#)4]ZY.[TS5;O3O%LEEI=W+-'
MXABU.&VE@>(7D48CR%+ 9SM;IZ?2@#T:U\5:9<:C=Z?,TME>6L'VF6&[3RSY
M/_/0'H5R,$YX[XIMKXNTNYU2RT__ $B&:_C:6R,\)1;E5 +%,^@(.#@XYKC+
MNRL_&GAS6%T+PW=Z??3:;);_ &J_MC!)N."(5+<D$YR1\H_&MO0/$4WB2TM;
M1M U"QU"&$I<RW=H8UM6V8.QS]XDXQM[<G'2@#5D\9:1#<VB2M.EO>3_ &:W
MO&B/D22\@*&]\'!Z'L34Y\36/VCRUCN9(OM7V/[0D1,8FW;2I/;!X)QC/&<\
M5Y]X22!=+T_PQK'@V[?6M/9(3)+;%K4[#A9Q*?EQ@9]<\"K$EE=V?B0ZCX9;
M4K:>XU<IJ&D7,#M;3IYI#W"%AA,J-^\'!X'7@@'<MXFL1<>6L=S)$+H69N$B
M+1B8L%VD]1@G!.,9XSGBLV'6M)MM:\47-M)J=S>644+7EJ5?:GRML$2-@<@$
MDC@\'-<Q/97=IXC?4O#+:E:W4^K;+_2+B!VMKE?-PUPI883*C?O!QT'7@Z=A
M;W,OCGQV19W2I>6EM';RO ZQRLD3JP5B,'!8#K0!<TSX@V4GAC1M6U.WNK<Z
MFT<<>VW8IYDGW5!]#G )XKIGU2!-8BTLK*;F6%IQA"5" @$EN@Y(^N?K7%>'
M-&'B3X/VWAV^M;RSF2Q2V8W,#1-',@X90V"=K '(X/8]:U/ #:GJ.DG7-;C5
M-1ND2 A3D".+*Y'^\YD?Z,/2@#H=2U2TTJ&)[IR#-((88T4L\KGHJ@=3P3[
M$G %5++Q+87TE]!&MPM[8X^T6;Q$3*",J0O\0/8C(K"\;VM]#KOA;Q!;6\UU
M:Z7=R?:X8$+N(Y8]GF!1RVW.<#)P:+*U:]^)-UXHACG33HM(6RWM"ZF>0RF0
ME5(R0HP,XZM@=#0!G^"6?Q?96FO75SJMO?Q7L\A:-W2&2,2NBPE3\I4*%X S
MD9SG-=+J?C31])U=M)G-V^H"W-RMO!:22-(FX+\F!\QR>V<8).,5E_"Q)K?P
M/;VMU:W5K<1SW#-'<V[Q, TSLI^8#.00:J:A?0V'QLM))Q)L;P](NY(V?:?M
M"G)P#@<8SZD>M '06'C30M2\/_VW;WA-H)?(8-&PD67(7RRF-V_) QC)R*GM
M/$VGW.H7.GR&6TO;>'[1)!=)L;RO^>@/1ESP2"<'KBO-[OPWJT=O<^(K.PN&
MC_X2A-7%@(R)9;=%V,P0\[SDN%/.,=^*Z+48/[=\:6.O6=I/+9:;I=TLWF0/
M']H:0 +" P!/1B>.,@=: .DMO$]I=/&L=M>_OK9KNW)@.)HUV\K[G>N <'GI
M7,)XTTW7_AI=ZSK":EIUC)Y@>2VCD#HGFLJ[60'G"@$],GWJOX2L;S2/$EA;
M:)<ZE-X<FMI&FLM2@</IK #:J.X!Y/&SG &>>M8L5O?CX!ZEH#:3J8U*%)H#
M#]CDR[M.S#9Q\PP0=PR.>M 'HE[XMTC2=1M=*G>Z:[G@,T,:6\DAD50.A ^9
MN1P,GUI;3QEHMUX>N=;^T/#:6LC0W GB9)(I%."C)C.[) QU.16#=F67XD>%
M;M+.]-M%IUPDDOV23;&S^7M#';\I.T]:YNYM#)X)\>1W>GZFOG:Z]S;!+9TD
M?+1>7(@8#>-RYP.2 1W% 'HD/BO3I-=71)([R#4FC$RP/;.?W9X#EE!4+GC)
M(YXJ[JVL6>BV\,MX[#SYDMX41=S2R-]U5'J?Z$FN*\/ZSIFH^.(M1OYK]-6D
ML_L-LD^DS6<97/F-R^06)'J.!P*V?'5[>V5GI;VMG-- U_&MU/;VWVB6VCPV
M9$3!.<X&0#@$\4 ;&D:[9ZRUY';^:D]E-Y%S!,FUXGP" >Q!!!!!(-<GXDU7
M^QOB?H<LEQ?-;3:?=%K6$R2B1U*;=L2YRW)Z"E\"Q36WB_Q:&L-2@@N9X)H)
M;Q'^=?)4??8G)SGC.1T('2K/B(267Q&\.ZO+;W#6$5I=02SQ0M((W<H5#;02
M =IYZ4 :NG>-="U/0[K5XKMHK:TD,5RL\;))#("!L9",[LD #')/%3V_B:PF
MU-M,E2YM;X0FX2">$AI8QU9,9W8[@<CN*\\USPSJ]]'XB\0Z=93?O]5LKZ"Q
M92DEQ'; !CM/(+') /)VCN:Z*]0>)?&GA?5[&&Z2VTI+F>XEEMWB(\R,(L8#
M $L3DD#.-O/44 7$^)/AV2UANTDO#:27'V9KC['((X7W[ )&(^3+>O/(R!FM
MG4=:M+>Y;3MES<71A,KPVBDND?(W$@C'.<<Y.#@'!KRZ:TOG^"NK:>NF:D;V
M34WD2W^Q2^8RF[$@(7;G&WG-=):WD_A[XEZY>7]E?RZ=K<-J]G<P6DDH1HT*
MF)@JDJ222,@=Z +WPIO);_X?VES-<SW+/<7.)9W9G91.X&2W/3'6NTKSOP%J
M4N@^!;.*]TC51+)J<T/E+:,63S9W97(/\ !&6Z5Z)0!PWQ9NKO3_  --?6%[
M=6EU%<0*LEO,R'#2*K X.#P3UI?&&LOIFJ^&]$B2^-M>796X:,2.TD:QNVP/
MG))8 GG.!Z&H_B[#<7?@.:SL[.[N[F6X@98K:W>4X656)^4'' /6G>+)7N/%
M7@RY@M+Z6&"\EEF>.SE81*8F4%L+\O)'6@#=LK:+PKX?NYDEU*]MT+W*13,9
M98U(SY:YYP.P8\9Y-<3KGBB;6?!'A?7]]WI[2ZK9-,%=XT:-W!93SAUQZ^E>
MDZA&]QI=U%&,O)"ZJ.F25.*\H47DGPQ\'6/]DZJMS8:C8BXC:QEW((GS(<;<
MX '7H<\$\X /1M+\5Z9JM[?6<9N+>XLD626.[@: ^6V<. X&5X//MS3(?%^E
MRZE96+?:(6OU+64DT)2.XP,D*3WQS@XR.F:Y+7--O-9\;^([>U@NHUOO#/V*
M&Y>W=8C,6D.W>1CHP[T[PI<V6JG2[6Y\&WMMK-B5\^2[M2L5NRC#.DAX.<?+
MMYY';)H Z/Q]XH?PCX1N=3@B6:[++!:QMT:5SA<^PY/X5+:>&)%L$^V:QJDN
MIE,R7:7;J/,QR5B!\L 'HI4CUS53XC^&+GQ7X.N+&Q=5OXI$N;7><*9$.0#]
M1D?C4^F>,8+RTC%UIVJ6FH[0);)[&4LK]P&"[2N>C9QCJ10!/:7[Z'I6E:=J
MD\M[JSQ>6%B7=)<% -SXZ ="22 ,@=2*BF\<Z%!H%[K,L\ZVUC(8;I/L[F2"
M0=5= ,KVY/'(YK&U1=0TSXBZ/XDNK29M/ETZ2PN! C2_9'+B168*"<' 4L!@
M8YXKG_$>C7MQHOQ%U6VLKQTUI;>&RMTMW,DIC0*7V 9 ))Y('"YZ$4 =NWCK
M18]373Y#>)-+$9;<M:28N0,9$1Q\YY' ZYR,BF_\)]H2^'[[69GNH;>PE,%U
M'):R"6%QCAD R.HYZ<]:RM5,D_CSP/=16=ZT%O#=^=(+23;%OB55#';\N2".
M:Y3Q&DR>%OBB\MK=0QW$R2PO-;O&LBA(U)4L #R#0!Z)8^.=$O\ 7TT6.2XC
MNYD,EN9[=XTN5'4Q,PPX'J.HY&12Q>-='FGM%1YOL]Y=-9V]WY1\F69204#?
M56 )&#@X)K%U.#_A)_$/A*6QM[A1ILS7=Q-+ T?E+Y941_,!\S,1P.RDGMGD
MYI]2U'3?#UU=:+K$=_9>((IKRTALI$@M8P[_ '%  <<@[QN/)R1D"@#O[OX@
M:':SZG!B_FFTPK]JCALI&:,%=VXC'W0.=W3TS5Q_%^D+>:/;+)-(VL)YEC(D
M+%)1MW?>Q@?+S@X-<M9B=?$'Q$G>POTCNXH/LY-I)^^VV^Q@OR_,0W'&?RJ)
M=$N;WX+:.$22SUC1[2&ZM_M$9C:*>%<X(;'! 93VP: .^AU2WGU:YTU%E\^V
M1'D)0[ &SM^;H3P>/;Z5G:MXPTC1=4BTR[>Y-[+$TL4,5K)(9 N,A<#YCR.!
MD^N*7PG'</HPU*]A\F^U-OMD\><^7N ")_P% B_4$]ZY_P 1WD5C\6O#$LPD
M\LZ?>*62-GV\Q\D $@>_O0!I+\1O#C>&KG7C<7"VEK+Y%PAMG\R&3(&UTQE3
MDCD\<]:NV_B_3+D3>4MYO2<6\<;6SJT[E=P\L$#<-N3GI@9/'->=^)M%O)_#
M?C_4K73[QEUNXMEL[:.V<R2"+8&DV 9 8ACR!P,]Q72^/%N!<^'?$,&EW6IZ
M?8RRB[M(8F\[RY$ #A#@DJ1TZ\T :LWC_0K;2K[4;A[J*/3YA!>QM;L9+=CC
M&]1S@Y&&&0<]:VI=5@ANK*V=)O-O%9HP$R % )W'MC(Z^M<]H^FZ-K^E:N(-
M DL+'4XA#,]Q 89KGY6!)4\X ( )YZ]L$U_ MKKD6CO+K5N6O]-B?3;8,<><
ML;']X">GF83_ +X![T :UGXUT>^N;".%YO*U%W2RN6B(BN&3.0I[=#C(&<<9
MJ"QN-*U'5_$\%G>:D;Q!$EXCO)&L#>6=OE XVY R2O7@YK@H9K^]'@S4)M'U
MD75KJ1^VP)8O%#:YCD 1(\!=H)'SC/'WFKJM$,L'CGQU=2V=ZD$XM6AD-K)M
MEV0[6V';\V#QQ0 [P#KOE?#CPU+?2W%W?7L16-<[Y9G&YCR3V )))_I76Z;J
M4.JVGVF!9442/$RRQE&5D8JP(/N#7F&CZ3!<_#7PIIFKVFLV%U;A]EY;0RQS
M6,RYPQ^7(4@D9(QT^H[;P,^LMH,B:W(9IH[J6.&Y:'R6N80?ED9/X2>?KP>]
M "QZCI/_  FU_&MQJ#:E!8*TUOME,0BWG#*F,,Q.1E<],56MOB/X=NX=/N(9
M+LVM]/\ 9XKDVD@B60L5568C"DD< ^HSC-58_,C^,%_>-:W@M/[$CA$XMI#&
M9%E=BH;;@G!'2N0AM+Y/@MH^GMI>I"]BU..1[?[%+YBJ+LR$E=N<;><T >S4
M4BL'0,,X(R,C!_*EH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHJMJ%_;:7IUQ?WLHBM;:-I99#_
M  J!DGB@"S16#9>++&\U$6#V]Y;7+V?VZ))8@3+#D#<NPMSDCY3AN>E9L/Q*
MT*>SL[U(]0^Q7-Q]F^TM:L(XGWE ')^[EA^&1G&: .PHK'MO$EI<^)KK0%AN
M4OK:$3OYB *8R<!E.?F!/''XXJUI>J1:M!--#%,B1320$R #<R,5;&"<@,",
M^U %ZN>U?PS-?:U'K&GZU>Z9>K!]G8Q*DD<D>XM@HZD9R3R,&F:GXWTK2VU
MRI<R6^FLB7UQ%&&2W+@$;N=QX()V@XSS6A?Z];V5U]DBAN+R[\G[08+95++'
MG&X[B  3D 9R<' .#0!)IFEFP,DL]Y/>W<H59+B<*"0,X4!0% &3T'?G-:%<
M3=?$.WEG\,-I%I<7UGK4DF)D0#"HCDJ 2#OW*,^@!]JTK*_TB;QQJ4437JZI
M%91&X67>L*Q[FVE0?ESG/('XT =)17.?\)KI06RGD6YCT^^E$-M?O&!!*YX4
M9SD XX9@ >QY%1W7CK2[;4=3T]+;4KF\TY$>>&"T9F*L"<KG&1A>O3D8)S0!
MT]%4]*U.TUK2K74[&3S+6ZC$L3XQE3[=C6#H_B]]2\3Z]ITUA/;6VELB&:0*
M%&4+EF.> 01CV'.,X !U5%<\GC/3&DT\RQW4%KJ3B.RO)HP(IV(RH!SE2PZ;
M@,]JV[JZ@L;2:ZNI5BMX4,DDCG 50,DF@":BL!/%UA_:\.F7-O>VES<0O/:K
M/!_Q\(HRVP*2=P&"5(#>U9UO\2M"N;2QO8X]0^Q7=Q]F%TUJPCCDWE ')Z9(
M_#(SC- '845P7B+59+KX@Z;X>GL;R;3FLIYI8HQ@3-E%5N&&54,WXG/85?M=
M=TOPQHTUJDFJ7]AI+&&ZOW_?>0<Y(=LAFVA@#M#;0.>AH ZZFN',;"-@KD?*
M2,@'Z<9KG]3\;:1I=Y86K_:KB6_A>:U%K;M()E5=WRD<,2".!GKS@<T-XRL?
ML?VB*TOYF2T6\G@6$+);Q$$@R*Q&#P?E&6.#@&@";PKX=_X1?26TY;QKJ,S2
M3*SQA6!=BS#@\C).*W*Q4\4:?<V=E<:>)M0-[!]HMXK91O>,8RQW$!1R!R1R
M<=:L:%KMAXCTQ;_3Y&:+>T;JZE7C=3AD93T(- &E6;KFF7&K::;6UU2ZTR7>
MK"XM=N\8/3Y@1@UBV/B636?%^N^'GT^\BM[*.%/.5MARZNQ;<K94$!0N.>O2
MN<^'GC.ULO _AJWU(W\DEXYM_MKQ,\7G-(^U6D/<]._OB@#T33=/ATK3XK.
MNR)DEY&W.[$EF9CW)))/N:MUS4.HZ-_PG.H1B2\34H-/1I_-+K L(8X(!^4G
M.?F [=:NZ=XCM]2N+6*.TNXTNX#<VTTB#9+&-O(()(SO4X8 ^W% &Q117G.F
M^)]17XEQB\D_XD6NP/%I?/"R0,<GT_> LP/<;1VH ]&HK/U/6;72Y;2"7?)<
MWDABMK>, O*P4L<9(  4$DD@"L8^/]%6SU6XD34$_LG<+U#9R$Q%>H+ %2<$
M'@D8YSB@#J:*YRS\;:9>QR21P7Z(/)\EI+5E%R902HB)X?H<XX'7..:DMO&&
MES/J<5P9K*YTP*UU!<H Z*PRK#:2&![;2>>.M &_16 GB^P&J2:9=6][:7JV
MYNDAFARTT0."R;"V2.Z_>'I6=%\2M!EL]-OME^MAJ#B**\:V81*Y)"JS=B2.
MV??% '845A:9XLT_4]5N],\J[M+NVA%P8[R Q%XB2!(N?X<C'.".XJ(>,],%
M[I\$L=U#%J1*V-U)%B*X.,@*0<@D<C<!GMF@#HJ*XZ7XEZ%%9W=YY.I/;65T
MUK=RK9OB!E(!9\]!D_7VJQ=^+)8?'MGX>BT^XEAELGNFG0*0WSHHQST&XY/T
MQGF@#J:**Y?4?%<UIXZL/#R:=<R1SVLEP\R!2#@J !ST&XY/TQGF@#J**\O\
M/^*;;PRWC!]0_M.ZM[;6Y=SHKW'V>+RX^68DX4<\9SP>.*[R[UVWMWBB@BGO
MKB6'STAM0I8Q_P![+$ #GC)Y[9P: -2BN5_X6)X>-CI=VDMR\6I3&WAVVSDK
M(,Y1ACAAM(V]3V!K1T/Q-9:]<7]M!%=6]U8.J7%O=1&-UW#*MCT(SCZ4 ;-%
M8^H^)+32]<TW2;B&Y\_469;=U0&-BHRP+9X( S@]>V:=<>(["SGU%+HR01:=
M"LUQ<.!Y:JV< $')/!XQGIZC(!K45AP^*;1M5@TRYMKNSO+J)I;6.Y0+]H"C
M+!2"1N P2K8(]*K/XYTF/P[?ZXT=W]CT^X>WNAY0WQ.AVMQGD \<9H Z6BD5
M@Z!AT(R*YRW\<:3<RV&Q;D6FH7#VMI>%!Y4TJ[@5'.X<HV"0 <<&@"[KVBW&
MLK;+!K-_IJQ.6D^QLH,RD8*DD''U'3\L:5M;0V=K#:V\8C@A01QHO15 P!^5
M<3H]XFG?$+QU+=W<PLK6ULYV\Z5G6%=DC.0"3@<$X%=-9Z]%=W0MY+2[M6:W
M-RC7"J%:,$#.0Q'\0X.".X% &K17.KXUTO\ T&61+F*QU"016E])&!#,Q^Z
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
M.NX.V.FWOWX[]*V** /,-,%R/B#HVKC2M>>V?29H)KB[@;<)"Z,=RG[@P#P
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
M666UD1=I5D?!"D8.>,&N]T6#[/I$$?\ 9\&G\%A:0JH6($DA?EXSSSCC.<4
M<=X4N6\>W^LZM?RRMI=K?/8V%FDC)&5CQNE<*1O9B>,Y QQZUT$6G1>'+^_U
M6349DTD6@+Q7$[.EN4+$LNXG (/(_P!D8KF_#=I>_#_5-7TV?3KRZT2]O'O;
M.[LX&G,1?&Z*1$RPP0,$ @UK>+-/OO&?@O6-,LX9+47-OMMVN5,;RN"&&5/*
MKQCYAGD\ #D O1^+K/[?I]K=VE[8_P!I?\>4MRBA)FQG;PQ*L1R P4GZ\50G
M^(NFQ6^JS1:;J]PNE3-%>>5:C,8"AB_S,/E /UZ\8K.U&&]\96GA>V;3;RRN
M;'48+Z^^T0LBP>4#E58\.68@#:3P23BJMM:WJZ;\14;3KX-J,TS68-L^9@T"
MQC;Q_>'?Z]* .DA\<:9-JFFVBV]\L&IC_0[UX-L$S;=VT$G=DC)&5P>Q-4;K
MXF:3;)J3IIVLW*Z;.8;LP69/D@ $NV2,+@_7@\8&:QY[2^.D?#F(:=?%].F@
M:\46SYA"P&-L\=F/;Z]*/#^H?9]1\?VPL+NZDDU23RDA@9UE8PH-A8#"]N6(
M'/7K@ ZUO%^G226$6GQSZE-?6IO8([4+DPC'SDNR@<L!C.<GIP:J/\0=$31]
M'U4+>/:ZM.MO;E+<DJY)&UAV(*L,#)XXS7-Z9I6M>&_^$;\/W=C>WFE0:64E
M?3\?-=E\E)'R"(P.G(![YQQDZ9IFKV_@?P;ITVB:A%<:;KZW%PODEML0DE)<
M;<\8=?<]@: .^MO&MI<C5T_LW4X[K2D66>TDA42M&P)#H-V&! /&<\8QGBK$
M/BNSN?#NGZU;VUU+;Z@\:01H$\P[SA<C=CZ\\<YQ@XRM*@N5^*>NWCV=REI<
M6-M%%.\+!'="Y89(_P!H?6J/A70;K3O%NHZ82C:%I5PUW8*#RDEPN3'CL$!D
MP/244 >@T5GV>I2W6JZC9/IUW EH8PES*H$=QN7)\LYYV]#[UH4 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 -D3S(G3<R[@1N4X(^A]:R/#_
M (<M_#T$BI>W]_/)@276H3F:9E7.U=W' R< #N?6MFB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** ,
M2?PS;W7B-=8GO]1D"!-EBUP?LJNOW7\O^\.O7&0#C(!K;HHH **** "BBB@
MHHHH **** "L30_#4.@WNIW4-]>7#:C<&YF6?R]H<@#*[4!'  QS6W10 444
M4 5-4L/[4TRXL3=7-KYZ%//M9/+EC]U;L:BT;2(-$L!:P2W$[%M\L]S(9)9G
M( +.QZG  ]@ !P*T** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBD9E498@#U-
M)M15WL M%1^?%_SU3_OH4>?%_P ]4_[Z%8_6J'\Z^]#Y7V)**C\^+_GJG_?0
MH\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>
M@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*/
M/B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8
MDHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSX
MO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)*
M*C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_
M 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH
M_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H
M^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_
M )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K
M5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]
M]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0
M_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0
MH\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>
M@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*/
M/B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8
MDHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSX
MO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)*
M*C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_
M 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH
M_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H
M^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_
M )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K
M5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]
M]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0
M_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0
MH\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>
M@Y7V)**C\^+_ )ZI_P!]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*/
M/B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8
MDHJ/SXO^>J?]]"CSXO\ GJG_ 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"CSX
MO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_YZI_WT*/K5#^=?>@Y7V)*
M*C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO\ GJG_
M 'T*/K5#^=?>@Y7V)**C\^+_ )ZI_P!]"G++&YPKJ3Z TXXFC)VC--^J"S'4
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
M<@]I+N=9]A@]#^='V&#T/YURX\2ZW]AL4%OHMSJ&I79@M&L[QY;<*J,[N[[
M> C# ')QSUK<\/ZL^KZ?))/"L%U;SR6UQ&C[U61&P=IP,@\$< X-']D8#_GS
M'[D'M)=RY]A@]#^='V&#T/YU9HH_LC ?\^8_<@]I+N5OL,'H?SH^PP>A_.K-
M9NIZFUG=Z;9PHKW%[<; &Z*BJ7=C^ P/=EH_LC ?\^8_<@]I+N6?L,'H?SH^
MPP>A_.N5TOQA?7UQ?W<JZ0FDV9N6<1WC-=B.)G4.8]N &V9^]T-1'QOJ6G6%
MS<:QI4$;G3&U.UCMYRVY%*AHW)4892Z9(R,$^G)_9& _Y\Q^Y![27<Z_[#!Z
M'\Z/L,'H?SKEXO%NH6T6H#4K6S$NF36YNGM96>,P2_Q D AEZD'L,]QC:\1:
MR^C6,+011RW5S.MO LLFQ-Q!)9FP<*JJS'CHM']D8#_GS'[D'M)=R]]A@]#^
M='V&#T/YUR5[XOU6STJP9[72HKZZO'@$L]Z5M&C6-G\T2!2=IP!@CJ<>]6+O
MQ%KR&"SM-/TVYU%;)KZZ"W3^3LW818VV9);!P2 !M/6C^R,!_P ^8_<@]I+N
M=+]A@]#^='V&#T/YU576!<^&5UJPM9;L2V@NH+=,!Y=R[E7T!.0*Y]O%^J62
MZC97^GV;:M;M:I"EM.QBD:X8HBLQ7*E2I+<'Y<$=<4?V1@/^?,?N0>TEW.J^
MPP>A_.C[#!Z'\ZY;_A+-4#?V2;&T_M_[<+,)YS>1CRO.\W.-VW8",8SNX]Z2
M+Q=JNH"UL-.TZT_M@_:?M4<\["*+R'$;88+D[F9=O X.3TQ1_9& _P"?,?N0
M>TEW.J^PP>A_.C[#!Z'\ZAT35(];T.RU.*-HUN8ED\MCDH2.5/N#D?A5^C^R
M,!_SYC]R#VDNY6^PP>A_.C[#!Z'\ZLT4?V1@/^?,?N0>TEW*WV&#T/YT?88/
M0_G3[J[M[*$2W,JQ1F1(PS' W.P51^+$#\:HW/B/1K2WNKB?48$BM)O(G8M_
MJY-H;:??!!H_LC ?\^8_<@]I+N6_L,'H?SH^PP>A_.H)=<TN![E9;Z%6M84G
MF!;[D;9VL?8X-$.NZ7<&V$5_ QNH&N(0&^_&N-S#V&X?G1_9& _Y\Q^Y![27
M<G^PP>A_.C[#!Z'\ZAGUK3;72%U:>\BCL&19%G8X5@V-N/7.1@=3FJ4WC'P[
M;Z=;W\NKVRVUPS+$^[.XK][CK\O?CCOBC^R,!_SYC]R#VDNYI_88/0_G1]A@
M]#^=4-0\5Z#I7V<WVK6L(N(_-B+/D,G][(_AY'/3FFR>+O#\6H1V$FK6RW4C
MHBQ%N=S@,@/IN#+C/7/%']D8#_GS'[D'M)=S1^PP>A_.C[#!Z'\ZJ)XCT9]9
M;2%U& Z@I(, ;G(&2OINQSCKCFI;76],OFMEM;V*9KJ-Y80AR712 Q^@) /O
MQ1_9& _Y\Q^Y![27<F^PP>A_.C[#!Z'\ZJ7GB/1K#5(=-N]1@AO)MNR)FY^8
MX7/ID\#/4]*;#XGT2?5)M-BU.W>\AW;X@W(V_> [$CN!R.]']D8#_GS'[D'M
M)=R[]A@]#^='V&#T/YUB'X@>$Q&\G]O6>U,$D/G@YY'J.#DC@8.<8KHD=9$5
MT8,C#*L#D$>M']D8#_GS'[D'M)=R#[#!Z'\Z/L,'H?SJS11_9& _Y\Q^Y![2
M7<K?88/0_G1]A@]#^=6:*/[(P'_/F/W(/:2[E;[#!Z'\Z/L,'H?SJS11_9&
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
M>&M*@G1DFCLX4=&ZJP0 @_C6E10 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
I110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>18
<FILENAME>exhibit101-ptagreement007.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement007.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%,>:*-E621%+'"AF S]*>
M"#G!Z4 %%%% !1110 444R6:*! \TJ1J6"@NP ))P!SW)H ?1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 44SSHA.(/-3SBN\1[AN
MVYQG'IGO3Z "BBB@ HHHH **,BF)-%*SK'(CM&VUPK E3C.#Z'!% #Z*8\T4
M<L<3RHLDF0BE@"V!DX'?BGT %%%)D9QGGTH 6BBB@ HHHH **** "BBB@ HH
MHH **** "BF131SQB2&1)(ST9&!!_$4^@ HIC31)*D32(LCYV(6 +8ZX'>A)
MHI'=$D1FC.'56!*GK@^E #Z*8TT22I$TB+))G8I8 MCK@=Z?0 444R6:*'9Y
MLJ1[V"+O8#<QZ >I]J 'T444 %%%% !1110 4444 %%%% !13(YHI2XCD1S&
MVQPK [6QG!]#R/SI] !1110 44QYHHWC1Y$5I#M168 L<9P/7@&GT %%%% !
M14-S=VUE%YMU<101YQOE<*,^F34H(8 @@@\@B@!:*** "BBB@ HIB3122/&D
MB,\> ZA@2N>F1VI] !1110 44R6:*"(RS2)'&O5G8 #\33Z "BBB@ HIDLT4
M$9DFD2.,=6=@ /Q-/H ***1F5$+NP55&22< "@!:*:CI+&LD;*Z, RLIR"#T
M(-.H **** "BBB@ HI'=41G=@JJ,DDX %1V]U;WD(FMIXIXCT>)PRG\10!+1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 5B^+]</AKPCJFLJ@D>TMV=%/0OT7/MDBMJJ&M:3;:[HE[I5X";>[
MA:%\=0",9'N.M '.^$O#]@?"EGJ.K6\6I:C?6R7-Y=7$0E>1G7<5'!^49P%'
M&!P*@T?Q#X9T/0=1N-)N)KFS74/*2!8G4K.Y51 N\#G<>G\(/8"IO"XU_P -
M:)!HFI:9+J0L4$-O>V4L0$T2\)N61U*L!@'J..M<[%X"UI_!-[#FW@U8Z\VM
MV<3294$.&6-R.,XR.,C..: .Q7Q/-!XA@T+4K!+6]O('FL62?S(IR@RR;MH*
ML 03\I&.A/2J^F^,VU'PYJ6J?V:8KBQN7M'LFF!<RJP79D# +$C;ZY'3-1OI
MM[XA\5Z#K%[I\FG1:0D[^7-+&[R2R*$P-C,-H&XY)&3CCK4:^%KJ'XB7&I0R
M(-%O$CNKF'/)NXLJAQZ%2&/^U&* +.K^-(]-FN[6**SEO+*!9;F&6^6'!8;@
MB$CYFP,\@#D<\U1_X6/%='0AI6C7E[_;5M-/:_O$C^:, LAR>""0"3@>F>E1
MW=KXG\.^-M2U31]*BUC3=76)IH?M2P26TL:!-V6X*E0.G/\ 6:^T[7+CQIX4
MU.:S6:.PBNQ>20RH%1IE4*%#$%@NW!.!D<X[4 /A\;ZE<:M+H\?A:[74X[&.
M\:"2ZB"C>2,%P2!@@C/4^F,D5M0\8Z7JO@C2-;N=">\M+V\BB\B4I_H\OF[
M6SUVN#T!Z=LU=AL-1A^)NHZR=/D:PETR.UCD66/+.CLQX+9 .[ SW]*YB+PQ
MX@3X8:9H9TIC?V^J+<R()XMOEBY,V0=WH<8]?SH ZV\\7747BFY\/6>A7%U>
M16:W:,9TC1U+%>N3@9!Z\^V.:CMO'MG<^%M*UE;259=2NUL8;1V (N"[(5+=
M  48D^@Z9XID=CJ2_$ZYULZ=+]@?2$M%?S8\F19&?&-W3#8SZ^W-<F='U33_
M (?Z7HMQI*R:O_;+7-O +M$DQYKS;XG!(#*IYW<<GKD @'<Z7XHEOO%%_P"'
MYM+EANK%$DEF297B*."4()PQS@C[O!%<]\8[2VN/"EDTT$<C#5+50S*"0"^"
M,^A!JYX7NKF#Q%<_VMX=OK#4-20,;V>ZAG$HB& G[L@( #D?* <GO4GQ*TK5
M-<T"ULM)L3=3)>P7#9E1%"HVXC+$<G'I0!V,4,5O$L4,:1QJ,*B* !] *Y.\
M\<FRQ<S:5*FG?VF-,\Z239*7+;-XC*\IN[[LXYQ5]]5UVYGMX(- GM$>5?.N
M+BXA(CCSEL*K,22!@?7/:N%U3PYXKU'3;I+K1X;O4XM72ZCO7O$_>VZS!E2,
M'[@"C!4[1QGDF@#MD\47$GB'6-%72\7=A;)=1!K@ 72,2 5^7CE2#GH<#IS4
M6D^,?[:\.Z-J]G8JW]J3>5'"9^4^\6).WJH1LCV[U6\3>&[_ %;6]$U.R>.W
MEV266I;7ZVLBY8 \$D,H"G'5LTGACPI/H7B;5Y"T8TCSFFTV%<?NVF"F88[
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
M*[]D>0=[;<'G:.1SG.)K7QG:ZP-,BT:#[7<:A9_;5CF?REBAR%S(<,0=QV@
M')![#-8YMO%OASQ;J5]INC0ZMI^L&*:6);Q86M)U14;EA\R$*.@SQT]77>E>
M(]+\;V?B>WLDU47&G"QU"V@E6-HB'+J\>\@,HR5P2#CF@!OPK&VV\5+]D6S(
M\0W.;=<8C.R/(&.,5T&K^(;FQU":RL],:Y>"R-[+++(8HMN2 BOM8%S@\<#'
M>L_P+IFK:9+XB;5+%+9;[5IKV';.)"4<*!G'3[OZU!KNF:]>>+I2=.BU'1Y+
M$1VPDN%2.VGR=SNAR6)&,, 2,<8R30!+)\0(3;>&KBUTF\N8]>'[C:R H=A?
M:03UXQV'?-26?CJW%IK\FLV;Z9-H;+]JC\P2@JRAD*D8R6!QCUXKFM)\.>([
M;2_ 5O<:.5?1)F-T$N8VPOEL@/49.6S@9X[YXJ36O!FL:_+X[@\@VB:P+1[&
M=Y$(+P*.&"DD LH[=#^% $FN2W=S\1_ =Q>Z1':2/+<E)1*)'"^0QV/\HP1G
M. 6'7FNZUK6+70=+DO[QL1JRH " 6=F"JH)( R2!DG ZGBN-N(?%6MZ[X3U&
MY\.BS;39Y6O ]Y&5RT13*;225R<\X/MWKH/&^AWNO>&W@TN:.+4;>>*[M&D^
MYYL;AU#>QQC\: ,V'XA0'5;[2Y;..6[M[(WT0L;M)TFC!PP#';M<>A[<@FF6
M7Q!>Y3P[=3:'<6^G:VR10W+3*2DKJ652@YVG!&[CITQ@U9M[SQ7J^D7HU+P^
MFFL+5XQ;K=QS//*PP,$8"H.>IR<CTYPO^$=UU?"'@73O[*D-SHU[;37:B:+
M2)&5MIW<YW9']* +-W+>ZC\7)=+N].M[FP71?]3+-E=DDY5WP5ZD*!M]NM6H
M/%5IHOA,:CI>D._AC3R;<2QSDR"*-MC2(A!W("#R6!(!.*LKIVI_\+4FU@Z=
M)_9KZ2MB)O-CSO$I?.W=G;AOKQTK$T[PUKVE^ =2\#"P\Z-UGMK/4?-3RO)E
M+'=("V\,N\\!3G Y[@ VM1\<30Z\-(TO0KG4YY-._M"W>.>-$F3<!P2>!SU.
M.PQSFIKKQA<"TU&ZT_19KU-,(2\1)0)/,VAGCC4 [V4,,\@9X!/-4K#P_?:7
MX_TZX@LI7TFST(:6+@R)G<'5@=N[.,+CIU[56L;'Q7X6\1ZU!IVD0:II>JWC
M7T-PUVL/V:1P-ZR @DKD9&T']> #8U'QG;VT[6MK';O=QVR7,D5Y="U(5\[4
M^8$[S@\8 '<C(J+3O'MEK>GZ--I%N\]UJR220V\K>7Y2QG$C2'!P WR\ Y)&
M.,D9]Y8^*O#WB^?6-*T^+7+74K:&*]A\];=XYH@0)%W<;2#R.OY4FJ:3XEM_
M$^B^*X+**_N8K:6TO["&94*QNV]?+9\!BI !SC=CMG@ ;\/%9?$_C<-9)9-_
M:,6Z",@J#Y*Y(( R"><X!YY -=+<>(?LWB^ST![3)O+:2XBG$G'R;001CC[P
M]:RO".G:Q:^)O$]_J.GK:V^HW$4T'[]7;"Q*I!"].GKUZ9'-'B33M6C\::%K
M^FZ<=0BMH+BVGA29(W42;"KC<0" 5Y[_ %H @N_B(MGX9UK6)-(G?^R=0:PF
MBCE4@L"@W G!VY<=B?:M*T\5RR>*_P"PK_29K%I;5KJUF>56$J*P#!@/N$9!
MQD\5QEYX5\3S^"O&&EG2HS=:KK#7EN([E"I0O&>2<8&(S[G(X%=)JNCZCJ?C
MS3;_ /L^9-/73;BTFE,D>Y&E*XXW9.-ISC\,T <[\1-:/B'X<R:C;:6DFF/=
MP?9KQY!Y@ G0>8$V\*V" =V<,.,&NPUKQA!IM[=6-LMI-=VD*S31W%XMOPV2
MJJ2#N8@9QP.1DC-<3+X>\7CX8/X+.B)-/:20I!>I=1K%/$DZN#@G<K;1R".Q
M.<X!W[NU\5:#XRO-:TG1XM5LM7AA%U:B[6)[::-=H8,W#*1C/?C\P"1/B3!>
M)X?;2]'O+P:Y#,]M\Z)AHU)9&R>"#P2>.X)Z5U=I=WMSHL5U)IQMKUXMYLY9
M1\CX^Z77(Z]P/PKE]0TW7KGQ=X2U.6Q$RV'VIKQH94"Q^:FU57<06V]"<#(&
M>^*[:@#QG6M7O?$WP0.LZO9P"8WD4L,B-O(_TP*0HQE<+\HY)(KT&R\6/)XG
MGT34=+DT^1;,WT,LDRN)(@P5MVW[K D<9/UKC!X6\3+\)?\ A%3I"F[@N4\M
MTN8]LJK<^:7Y(P-H  /.>PZUT6I:)J&I^/XKY["9--DT6:PEE\R/<CR,K=-V
M> ",^OKUH :/B5IXN=(9HH38:K.L%O+'=*\J,_W#)$!E5;UR2,C(!K6\?017
M'P^\0I-$DBC3KA@'4'#"-B#]0>:Q?"2^-=,LK+P[J.DVJP6(2$:NMTI66%,
M8BQNWE0!S@#K['H_%MI=:AX0UBQLH#-<W5G+!$@95RSH5&22 !S0!E:3K$]G
MH7A?3K.P:YN;K34D#NQCAC5(TSN<*V"2P &.>:KO\0X_^$0M/$<>F.;:2Z^R
M7*M,!]F;S?*W$@$%-W<=B./2FVE^(U_X1:&32?MFF6UA]GO+!KF- LX50LC\
MD2(,'CG&<XR!4OACPE>MX"U7PSKME%;I<S72J8Y1(&61V8,,#C&X8SSQT% &
M[%XE9O&TWAJ6S6*5+,7L<QFR)8RVW@8Z@]?ZU6C\7M*=)@%G!'>:JLLMK'-=
M;4>./;\P;:22P92% Z<G&*YE_ _B"YTK0-0GN43Q'%((;^=6_P"79XQ%(JGN
M0H5QVW[B.M='XLT&WUA++3;KPZ-2TI8GR89$CEM9!M$90LRD#&[H>PH Z'3+
MN:^T^.XN+1[25BP>!VR4(8CJ.O2L.Y\6RF/5KC2],:_MM)D:*Z83!'9U4,ZQ
M+@[BH/.2O/ S5KP=I^IZ5X6L[+5[F2XNXMXWROO<)O)16;^)@NT$^H[]:P=(
MTG6_"]QXBL;?36U"SU&\EOK.=)HU$;RCYHY0S @!AG*AL@GOQ0!4\9>(9=3T
MOPC=:1&EQINIZK:'<TNSS1\SB-EP<#*C/N,8KM-)TBRTP7,UM8Q6<U[)]HND
MB8E3*0 3Z=NP&>M<5=>#]1TKPUX*T73K5[X:-J$%U=2K(B A0^_:&8$DE\@>
MG>O1E)9 2I4D9*G&1[<4 +1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 55U#3;'5;1K34;.WN[9B"8IXPZ$CI
MP>*M5F^(;ZZTSP[J-_910RW%M;O*B3.50[03R0">W3OZCK0!ES>#/!%L8Q/X
M=T&+S'$:;[.)=S'HHR.2?2I?^$#\(?\ 0K:+_P" ,7_Q-<-K%W>W_A#X=ZMJ
M-K%+?/JNGNKPOODE#1%CRRKM+'J,D=.:ZVT\;".XU^WURP&FR:- EU(4G\Y9
M(6#$,#@<_*1C'7&": +G_"!^$/\ H5M%_P# &+_XFC_A _"'_0K:+_X Q?\
MQ-9]KX[23Q%INE3VUKMU%',,MI>BX,;J-VR4!1L)'0@L,@CWJ#XHZS>Z;H6G
M6&GSO;7.LZE#IPN(SAHE<G<RGL<#&??- &@/!_@9KDVR^'_#YN!R8A:0[A^&
M,U,O@3P<RAE\+Z*5(R"+&+G]*L'PEH)T8Z3_ &7;"TV;=H0!A_M;NN[ONSG/
M.:JQ:D^F75EX6TZ)+W4+:P265II3$B1KA%+$*QRQ!P .QYZ9 '_\('X0_P"A
M6T7_ , 8O_B:/^$#\(?]"MHO_@#%_P#$UCW7Q(CMO#%]JO\ 9,S76G7HL;ZS
M,R@PR%U3(;'S*=P(('(/:K3^+]4B\3'09/#I%U/:M=61%XI6158*PD.W]V1D
M'C?[9H O?\('X0_Z%;1?_ &+_P")JKJ'PS\%:G:FWG\-:=&I.=UO"(''_ DP
M?UK/F^(SV_@S4-=ET23[1IMZUC=VBW (20.J$A\?,/F4\+WJY+XOU.#Q,NAR
M^'6$]S;/<6+"\4B0*0&$G'[LC(/&_P!LF@!=,^%_@G2H##!X;L903DM=1^>W
MYODC\*N_\('X0_Z%;1?_  !B_P#B:S[/Q]"_A^]O[ZP>VO;/43I;V:2B3?<[
ME"JC8&0=ZG) QSZ5<'BB>T\26^A:KIR6]S>P/-9/!<>;'.4&7CRRJ58#!Z8(
M[]J )/\ A _"'_0K:+_X Q?_ !-'_"!^$/\ H5M%_P# &+_XFN>3XEW3>'HM
M??PX\>F+>&UNI#=KNB_?>5N50OS\XSR.O&>M;_\ PDET?%]YX>_LZ)9H[+[9
M;2-<D"X7=MQ]SY2#UZXR.N: '?\ "!^$/^A6T7_P!B_^)H_X0/PA_P!"MHO_
M ( Q?_$U2T;QK)KGA:PU>UTZ+S[R[^RK:&ZY4AB&RP3JH5F(QT&<U6UGXBVV
MFPW]S;06MW!I\Y@GC^VJEPY4@/Y<6T[MI)')7.TX[$@&M_P@7A#_ *%;1?\
MP!C_ /B:BD\&>"(9HH9?#N@I+,2L2-9Q N0,D*,<\ GBH-6\:365MJ5Y::29
MK+3[*.\DN+F8P+,KJ6VQ?(0S +SDCD@=ZR]>GMM1\8_#K588@/M,LSH[* ^Q
MK9F )_'I0!OOX%\'(A=_#&B*JC))L8@ /RID'@KP5<P)/!X;T*6%QN22.SB9
M6'J"!S6';:KJVN7?C;3]4M+)K&RS J"9GVCR=X^4H Q);).1CISC-4O!GBFZ
MTCPIX)M+G2&&G:A%#91WGV@;A*8R5_=X^Z=IYW9]J .M_P"$#\(?]"MHO_@#
M%_\ $T?\('X0_P"A6T7_ , 8O_B:T]9U>TT'1KO5;]REK:QF20@9) [ =R3P
M/<UBR^*[G3=2TFWUG2UM(-5D$%O/'<>;LF(RL<@VC:2,@$%AD8]Z ,^^\ ?#
MRPU.+4;[2])M9&'EHDVR.)O81G"D^^,UJ/X(\%QXW^&M#7/3=91#/Z5SM@EY
MK?Q'\6Z=JNGV-S8BTL[>2-[EF"1,)6^4>7R2>2,K@@<G%:OQ!\/V.J^!UT=X
ME2![FSMHR!DQ*T\:97/3@T :'_"!^$/^A6T7_P  8O\ XFF?\(1X+,GECPUH
M>_\ N_8HL_EBL;P9XKEC\"W0U@,VJZ"S6-Y&#\TLB<)CU+C;@]R:QOAW;2:3
MXL\?7%^K75]"]M-.T:;G9VA+NJ=\;B0!Z8% ':_\('X0_P"A6T7_ , 8O_B:
M/^$#\(?]"MHO_@#%_P#$U4L/&4\VN:-IFH:6MI)J]H]U;@7&^2/:%8I*A5=I
MPW8GD$=LU+HGBN77C:W%E90RZ?/<20/*ESNDMR@<@R1[?ER4 QNXW"@";_A
M_"'_ $*VB_\ @#%_\31_P@?A#_H5M%_\ 8O_ (FH=%\5RZZ]M/8V4,NGS7,M
MO)*ESF6W*!\&2/;\N2@&-W&X54F\<S6TVFR76CM;V>H:G_9L)EF*S[MQ19#$
M5'R$KV;."#WQ0!H_\('X0_Z%;1?_  !B_P#B:NZ9INA:)/)9:59Z?8S2KYKP
M6T:1LZCC<57!(&<9]ZS+[Q7=!-6ET?2#J<>E/Y5P%F*/)(%#,D2A6WD!AUQS
MP*YZYN)H_B];WNG:49;NZ\-E_)D(@.3.I_>-@D8''0GMB@#TBBN(C^(1?PWI
M^KG22AGU(:;<VYN/F@E,OEG!VX< \]N*U)_%:V?BB_T>YLRJ6FF?VGY\<FXO
M'N*E=N!AOE/<]J .CHKF])\4OJ%K#J$MM;)I,MD]W]L@N_-6/;MRCC8,-AB>
M"?ND5F1_$6%[_1XS;6SVNK.(X7@O1++"S#*":,+\@/3(9L'K0!V]%>:6WB_Q
M/_PBWC/5GM-/,NEW5TD0^TN5C\E5& /+^88!;)(R3T4'C;M/%-U::?X<M+Z*
MT&I:I!NB,MX5C<*B$DN8\[R6'R@'OSQ0!V%%5-,NKB\L$FN[0VDY9U>$OOVE
M6*\' R#C(..AJ+7+^XTO1+R_M;/[9+;1-+]G$FPN%&2 <'G X'>@!NM:!IGB
M&T2VU.V\Y(Y!+&RNR/&XZ,K*0RGGJ#5>RT;2/#D4EXTTPV(0UUJ%[),47N-\
MK':.G3 X%9/_  G7[WPJ190&U\0J/+G^U<1-LW[2-G)(X'3G@XIOBGQ(MKX8
M\175[H,.HZ=8-Y31-,"MP %+$AEP "0/XN0?2@#L000"#D'H14<5S;SO*D,\
M4CQ-LD5'!*-UP<=#7(:GKNLP>._#^DV-M:"QNK2:<JT[(6*!1@X0X W<#G/M
MBN<TK5[KPQ=>/KO3=$6[M[/4FN)E$ZP*D:P(S;>#EL9., >] 'J]%<\WBJ.Y
MO-.L=+MUN;R^LOMZI+)Y2QP?* S$!CDE@  #WZ8K'O/B*+/P]K-_)I9%[HMP
ML%_9&XP5W$!61MOS*0P() XS0!W-%8-WXBEMO%UKH LD=KNTEN89C-@90J"K
M#;QDL.03]*SOA]K>L:]I%U>:K%;+_IEQ&IAF9L;)&7;M*C  '!SSUP* .OHK
ME-;\77VF^)HM"L=!DO[J>SDNH6^TK&KE" 5)(..O4]^W-5=1\?\ V.VO6CL[
M,W.GQJUY:SZ@L<@DV!VCC 4^8P# 9X!/ /7 !VM%<Q!XRBU*^TRRTFU\ZYO]
M/.H@7#F$1PY"C=A6.XLV, =CSTS4T[QU/J7AZ74X=!NO-6\%BMNL@?\ >^9Y
M;;BH.U%/);'3G':@#LJ*X]?'#JGB>.73%>[T"-99H[>Y#I*C(7&&(7! 5@01
MP1WJ.W\=W9TB'5+W0)+:TO(K;^SR+E'>ZFFP!%MP"N"0<GMSQTH Z\W-N+I;
M4SQ"X92ZQ%QO*C@D#KCD<^]2UYU%]J/QNLWO-/MK69M#F/F6\WF"4>;'U)53
MD=.G3'/8;'C_ %K5=$TO3WTN. M<ZC;6TCRRE2JO(HP,*>O()[ YP: .MHKG
MY/$%T^KG1K.RMYM3AM5N;I6NBL,(8D*N_8222#_".!D]@9O#/B.#Q+I\TZ02
M6UQ:W#VEW;2$%H9D.&7(X(Z$'N#0!M45SU]XCN?MVIV6CZ<M_<:9$LERKSF+
MYF4LL:85MSE1GL/F7GGAD?BMKNXTVQL].D&IWMF;YK6\8P&VB! _>?*Q!W'
M !Z'IB@#I**X6^^)"V/AK6]1?2)#?Z+.(+VR$X^4DC:P?'*$$$'&>O%:=OXI
MNSXMCT*^T<VAN;5[FSF-P'\P(0&5U ^0_,#P6% &[<ZGI]E/%#=WUM!+*<1Q
MRRJK/] 3S2G4K$6B79O;?[,[!4F\U=C$G  ;."2>/K7GGA^TF\3:AXSM-?TR
MQN;1M1$<JM<,^S9%&4504&0.N<KR3QZT_#VJVND_!3PM->Z/'J=N\D,120KM
MC9IL*_(/()!X'Y4 >AVOA[3[/7;O6H1.+Z[54G=IV*NJYVC:3@8R<8'>M6L"
M]\0W']I7^G:18)?75A LUP))S$H+@E$4A6)8A2>@ R.>:P+WQ7KEQXA\'PV>
MFK;0:I'//);WLK0RADCY1QL.T#<#WR0.G< [ZBJ.LZO::#HUWJM^Y2UM8S)(
M0,G [ =R3P/<UBR^*[G3=2TFWUG2ULX-5D$%O/'<>;LF(RL<@VC:2,@$%AD8
M]Z -Z\U*QTX(;Z]MK42':AGE5-Q]!D\U+<75O:0^=<SQ0Q9 WR.%7)Z<FO/[
M%+S6_B/XLT[5=/L;BQ^R6EO)&]RS!(F$C?*/+Y))R1E<8')Q5CXIV5M#\//+
M2",+;7-FL/&?+'GQKP>W'% '>T5S>N>)KO2[B_CMM*\Z*PLOM<T]Q,8(VR6P
MB-L8,WRGKC&1Z\5V\;#/A:>/3_\ B7^( @CN))MI@=DWJK+M.20,#!Z^G6@#
MK**Y.T\9M-<^)K:XL88)M! ,BBY+^8"F]6'R< CZG.1BNDMYKA]/CFGM?+N3
M'N:!) VUL?=W' /IGB@"Q17G!^*%Z/#B^(_^$5N/[(BF>*\F%TA>$+(4+*F/
MG P">F,]\$UJW_C:_7Q#<:-I'AY]1N$L$OH6^UI$LL;/MZD$#H<9Y/H.H .M
M2ZMY;B6WCGB>:';YL:N"R9Y&X=1GMFI:Y'3]>A?Q'XJBBT!8;_3XK=YY5=-]
MWN1B@)']T# R3UJC8_$2YNK+P[J4V@/!IFM3QVRSFZ5GCEDSM^3;RN1C.0?;
MID [RHFNK=+E+9IXEN)%+I$7 9E'4@=2!D?G7.7WBNZ$>K3:/I#:G%I4GDW
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
M\.7]W\,KW0+%%N=0N8"C.6"*TK-N=R3T!8L?QKJH+ZTNIIX;>ZAEE@(69(Y
MS1D] P'0_6AKZT2]2R:ZA6ZD4ND!D =E'4A>I% ')ZEI&LR>*?#.M6=E$XM+
M:>VN8I9PAC\P)ALC.X J>G/2J">']:_L[QY =.(?6WE:S_?)CYH1&-W/'(SW
MXKT*B@#SVR\-ZSI&K>'=?M[/SYK?1TTG4;(2H'VKA@\9)VG# \$C@^M1ZQX&
MU#5M!\8S*L4.IZ\\+QP,^1&L(41JS#C<=ISC(&[&3C->C57-]:+?+9&ZA%VR
M%U@,@WE1U(7KCD<T <='8>)-1\=Z)KUUI-O9VUO9SP31-=AW0N4.<@8)^4X
MX]3S@7? ND:KH-E?:=?V\*PK>W$T$Z3;C*LDA<';CY< XY-=910!R=]I>I2?
M$O3-8BLR]A;V,MK))YB@[G96!"YR0-O/UXS6=]@\6>&_%>K3Z-IUIJNDZO,M
MR5EN_(>UFVJK$G:=RG:#P,_U[VB@#SKQ FLOXMTV33+*'4]3T^P;[7);W:VL
MJ&5A@'<K*4.QR%.2,9R.,PFVUJY\*G1M(T%M+NK&]AFN[%[Y7^V0,Q9U\]?X
MG.<YP?P-=AJOA#0]9OTO[RS;[8J;!<03R02%?0M&RDCV-:-AIUII=L+>S@6*
M/.X@$DL?4D\D^YYH \_7PUK\5WXQ>+1[.&WUK38H+:*"X7$3K$Z;2, =7!)Z
M#MNJUJGA76=0^'GAZTMDB@UK0Y+2YBBE<&.62!=I4L,\'G!^F<5W-Q>VMHT*
MW-S#"T\@BB$CA?,<]%7/4\'@>E3T </;6/B*_P#B#INOW6CPV5K%ITMK,CWB
MNZLSJW&T$'[O_P"KI6CX[T:_UG0K9-,CCENK6_M[Q8G?8)!'(&*[NQQ73T4
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
M5MJN8Y%?:3@XR%-5'TK6KCQ[I6NS6=NL%O836\RQW&XAW96&W(&0-N">,^E
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
MG.>* .ZTNYO+NQ$E]:+:7 DD0Q+)O7"N0&#8&0P 8<#K7.>)/&5YH,6LW?\
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
MH7B#0/&]_K&FQ0:G::O! EVLT_DO%-$NP./E(*D=0.<_2K_P_P!&U/0/#/\
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
M%AB&7D(!.U?<]!7+6'C"]?Q+8:)?6EHES?6+W0CBG)>V=0I,4H(]&^]QT/%
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
M<,C/B0^?#"[ )*1C!ZJ2HZ ]3B@#N*S=,T#3=&GNYK&%XY+N0RSEIG?S'/\
M$0Q// YKG;GQ7K\OBG5-#TK1+.XDLHH)UDEO2BR1R$@_P<-@<#D=>>@-WXAZ
MGJ.C> M7U#2VB2ZAMV8/)GY!T)&.K>G;^1 -V;4[&WO[>QFO(([RYSY,#2 /
M)@$G:O4X )_"K5>;>()+\>*OA].]K!+?^9=A424[6S;'&7(R!W/!]@:U+7QW
M)!IVO-K-E%!>Z/=I:O';RETF:0+Y6UB 1DN <CCK0!VM%<II?BJ\N?%(T:ZL
MD>*6W,\5[:[S&K \QON48..0>_H*ZN@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K)\3Z?J&
MJ^&-2L-*O/L=]/ R0SY(V,?<<CTR.1G-:U% 'GMKX3UN7Q!I5[<V6DV=E'I<
MVG7%K;3.VQ7*DLIV#<3@\<8SG+5/X3T7QCH=G:^'[J;37TFR8+%?H[>?)"IR
MJ&/& <?*3G@=,GFNJNO$&C65RUM=:K903J 6CDG564'H2">/QJ[!<0747F6\
MT<L>2NZ-@PR#@C(]Z .$TCP_XM\.7NH:9I<FFR:)=W4ES!<S.PFL_,.YE" 8
M?!)(Y'OZ5?MM U70/%^K:II<<%Y9:NL;S0S3F-X9D7;N!VG*L.O<'IFNPHH
M\ZD\"ZG9Z7X>MK$VDTUGK/\ :U[))*T8=V+EE0!3_?P,XX4>M:>KZ#K5MXYM
MO%.B):W+/9_8;VSN)C%N0-O5T<*W()Y!'2NRHH \S;P?XJ_L+7[='TZ.>_UG
M^T5B6X?9-$2F^%SL! (3&1U!P0*N)X9\1#6]=OOL^E11:GI<=JD$<[XA= ZA
M<[!E?GSNP.F-O>O0** //CX3UW_A'?!6GB.Q,NA7$$MP?M#;7$<;)\GR=3NS
MSCI4FGZ!XM\.:QJMMH[Z9-H^I7;WB2W+N);-Y#EP$ PXSR!D>YKO:* .&O\
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
M0'1A-'<B.X=S,9(PC39V#+$C.T]3U;GC.L[+5]2_M+5+#1=%U71[[4)+M/\
MB9RP)*$?"L\6TH3\@))ZD9/MZU7/CP/X7%\]Z-"L1.[;V(B&UF]2OW2??% &
M(++7M9\06/B*W@LVL+K2UC2"\F;=8RL26= JD.2"!U4G'4"LZU\%^(X?!?A/
M1W336N-&U&"ZE(N'"M'$2< [/O'/H />O3** .3LM&U>U\<Z[K9@M&MKZU@A
MA47#;PT>[[PV8 .[L3TK)T7PGJVG^"]'\.ZIIFEZG9P1S1WMNTI(?+!HW0LG
M4988..N<UZ%10!YP/ NL6/AG0;2REMYI])UC[?%;W%P^Q(<R!81)M)^57'..
MQKN=1TX:OH5UIEXP N[9X)C'T&]2K$9^IQ5ZB@#B_"]AXVL8;32=7ETMK&R"
MH+Z!W,UPB_=!0C"D@#<<GO@<Y%2/P=J\^B^-["X-I$=>FFEMG25G";XP@#_*
M,?=!XSUKOZ* .$G\/^([R7PC/-;Z<CZ/-YEPB7+D$>48\*2G)Y+<X].>M07_
M (&U+6+KQFMS+;VT&M_9GM)HI2[Q20*-I9=H_B4'@UZ%10!RNA_\)K(@_MZ/
M2HS;H0!9RN?M3XP"V5^1>^!DYQT P9? .B:AX<\&6&CZD+?[1:AE+6\A=6!8
ML#RH(ZUTM% '*?$*WL]0\(WUG+<K%>JBSV>UAYJSJP\HJ.N2^U??.*AUGP5+
MJG@.+14O%CU.%TNTNV7Y3=!_,9R/1G+?3/M707&@:3=:U;ZS<:=;RZE;IY<-
MRZ NBY)P#VZG\S6C0!RIT;4M;U_1-4UBVM[0:2))%BAF,OF3.NS.=HPH&2.Y
M)'3'/+7G@GQ0_@[6_"ULFF?9Y[YKFVNY)WW.K3B7:R!?E(YR<GI@#G(]3HH
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
MO@#CKVN:9X[3Q&NB0:/$B76J63WSF?++;1J0AR!@L=YV@9'0G/&#E^'&U?\
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHJ*X\[[.YMS&
M)<?+Y@)7/OB@"6BN*\*>)?$7BSPE:Z];VNEP"Y$FV&220X*NR<L!WV^G>NML
MII9K&VEN8A!/)$K219SL8C)7\#F@"Q15'5M8LM%T>YU6]G6.TMXS([Y'(]!Z
MDG@#N31>G4A>6'V(V?V4R'[7Y^[?LVG'EXXSNQU[9H O44A90<%@#Z9HWKOV
M;ANQG;GG% "T45S&J>,[;3/'&D^')(B?MT;[I_X8Y.L:$],L%DX]AZT =/11
M2*ZNN48,/4'- "T4@=2<!@3Z9H5U8D*P)4X.#TH 6BF[UWE-PW 9VYYH+JO5
M@.<<GO0 ZBDW+NVY&[&<9YQ074,%+ ,>@)Y- "T4C.JYW,!@9.3VJEJ.K6>E
M"U^U3!&NKA+>!<\N['  'YD^P- %ZBBB@ HKAO%GBOQ#X8\/:GKKZ;I[6=I,
M$CB>9Q+(AE$88_+@9SGOQ5K6];\4:)I.J7LMCIDB6NGRW<<B22%=T>"48$#J
M,XP>QZ4 =?15'2+UM0T>QNI=@FGMHYG5.@+*"<#TR:+(ZG]MOQ>FS^S"1?L@
M@W;]FT9\S/&=V<8[4 7J*:KJXRK!A['-.H **YCPAXSMO%DVKQ11&)["Z\M0
MW62%E#1RCV<9(]JZ9G5!EV"CIDG% "T4A( R2 *0N@4L67:.ISP* '44@((R
M",=<TBNK)O5@5]0>* '44@92V P)QG&>U"LKC*D$>H- "T4BNKYVL#@X.#T-
M)O4D ,,GH,]: '452M]6L[O5;W38)@]S9+&TZJ<[-^[:#[X7./0CUJ[0 451
M0ZG_ &U,)#9_V9Y"^4%W>?YN3NW?P[<8QCG.:N;UR!N&3G SUQUH =12,ZKC
M<P&3@9/4USFIZ_?6/CK0=%6&W-EJ45R[R'<9%,2@\=@#N'KTH Z2BC(]::[A
M$+$J .[' H =17'Z)K^O:[HWB$P1Z;%J=AJ4]E;>9O\ )/E[<%\'=SD],=JZ
MY6(1?,*[R.<=,]\4 .HI%8,H92"#T(H5U<95@PSC(.: %HJEJNK6>C67VJ^E
M$<9D2)?5G9@JJ/4DFL>37[Z+XBP>'VBMA8RZ;)>"49\S<KJN#V ^8^M '2T4
M@(90000>010KJZ[D8,/4'- "T5SVO^(9=/UG2-$LU@^WZH93')<$B-%C4%C@
M<LW( 4$=SGBIM*U#5Y-9O=.U2TMD6"&*6*YMW8K-O+@_*1\I&P<9/7K0!MT4
M9%(SJHRS 8]30 M%&0.IZUG:U?3V.@7]_9+#+-;P/*BR$["5!.#CZ4 :-%97
MAK5)=8\*:3JUT(XY;RRBN) F0JLR!CC)/'/K6IN4KNW#;C.<\4 +12;U^;YA
M\O7GI0"&4,""#R"* %HIJNKKN5@P]0<T!U)P&!.,X![>M #J*I6&K6>IS7T5
MI,)397'V:8J<@2!58C/L& /OD5:WAT;RF1F&1UXSZ&@!]%<YX*UZ\\1:-<7=
M]%!%/%>SVVV#.W$;E0>3GM577?$FK:=XST;0;.VLI%U2.9TEF9E,?E*&((&<
MYSQTH ZVBN7\/>+)M2\2:MX<U&Q2UU/30DA,,IDBFC<9#*2 0>1D$?B:Z?>H
M<(6&XC(&>: %HKF]/U^^N?'NK:#/#;K;6EI#<0NFXNV\L/FSQ_#V'XUT8=2Q
M4,"PZC/(H 6BF[UW[-PW8SMSSB@NH;:6 ;&<9YH =12,ZJ0&8 L<#)ZTM !1
M12*ZNNY&##U!S0 M%('5B0K E>" >E(74=6 YQU[^E #J*1F5<;F R<#)ZFJ
M4^KV5OJMIICS+]KND>2*,'G8HY8^W('XT 7J*SH[B]MKO4YM2EL8],B"O;.C
M,'5 OSF4G@<@XQVZU/INH6^JZ7::A:L3;W4*3Q%A@E6 89'T- %JBF2S1P0O
M-+(L<<:EG=C@*!U)/857TW4;;5M+MM1M6+6US$LT;$8RK#(/Y4 6Z*175EW*
MP*^H/%"LKC*L&!YR#F@!:*HS:M9PZO;:4TH^VW$3S)$#SL7 +'T&2!61X3\0
MWNM2Z['J$=M$VGZH]E'Y).&4(C DGJ<L?2@#I:*1G5%+.P51W)Q2T %%(752
M S %N@)ZT%E7JP'&>3VH 6BJ.IZO9:1;13WDRHDTT<$?/+O(P50/7D_D":)C
MJ7]L6HA-G_9IC?S]^[SM_&S9VQUSGVH O44FY<XW#/3&: ZEBH8%AU&>10 M
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !2-]T_2EJCJ\-W<:;+#9QV\DKX&VX=D0CODK
MS0!YK\,M FU;X/Z8L>L7]OYHGQ'&ZB/B=^#\N<''//<UI:_;:;K?Q,\(R;5N
M+:ZM+]7Y.V95"  _WEY/L0>X-31>#+ZWM?LL.@^&8[?D>4DLX3GKP%Q5O^P-
M;%U97(TGPXLUC&(K5UFF!A3&-JX7@8&,#K0!P6KV-K!\+_B'8QV\0M;#6G%I
M%M!6W!\DX0?PCYFZ>IKLO$]A8V?C+P(+*WA@5+^= D*A5 ,+DC XZG/XU83P
MWJ\=O?6XT;PT8;\DW:-+,PG)ZE@5Y/OUH_X1K5\6(&C>&E%AS:!99AY)[E<+
MP3W/4T 96A>&]*U#QWXR>YLEG>QU&VN+56=@(Y1"K!ASUW5G>'K*U\4>$-(U
MNYUFTM=2M;E9I[F&UQ=BY#$-$S%R3N)V[<<C  QBNMLM&\0:=?7-[::;X>BN
M;H@SRK//NE(Z%OEYQ[U3C\(W\.O'7(_#_A5=3)+&Y#2[MQZM]W&??K0!W,\\
M5K;RW$\BQPQ(7=V. J@9)/X5Y?K^@^(==\%WM]%86D>H2W"ZQ:RFZ?SHG0 Q
M+L\O&X1J$QNQDD]ZZG4+'Q/JME)9WUCX?GMI!AXGFFVL/0C;R*<MKXJ2R%FM
MKH0MPNP)]HG^[Z9VYH Q?$&MMXI^$MKK.G3(BW1MY)83)M\W]XHD@!]2<ICO
MT[U9T[PS'=^/[O6QIHM=+;3T@$+@(9)\G<X53QA"%)/7W S69J?A#7H?#S:;
MIOA_PRUBTZ33Z>DLBK.%.<#<N%.=ISWQBJ/A[P7KMM>QZA;^%-"T"6,L'2._
ME8SHR,I5@F1C)#>N5% &7H^G6VE?! >)[.!O[8A@GB%VK,9$A:Y(D P>RY/L
M<G@DFNMATBTM]3LO$>CZG8^<]C-';VVFVOEQWJ["R[QO;.T@$'U..]:.G:-K
M^DV#6%AI?AR"S;.8$EFV<]?EVXYR<^M5=%\*ZEX<GGFT?0?"]E+/Q(\+R@D=
M<?=X'L.* ,+PYI]CX@\.>&/$']M6D%Y;S0R27%O;8N99S\LD,KER6W,2",<\
M'@53_L#2KOP[\36N+..4VE[=R6YDRWDN+=&#)G[K9[CGC%=/:^$;^QUQ]:M?
M#_A6+4G)+7"-*&R>I'R\$\Y(Y.:E7PUK"0WL*Z1X=$=\2;I?/GQ.3U+_ "_-
MGOF@# -A;6=Y\-]8@B"ZE>NB75WDF2=7MBS!V/+#(& >G;%16MG;>,=)\0+J
MFJV5E?VFIS^?<-!_I5F(Y28RDA<;5"!0"!CKU.372-X;UATL4;2?#I6PQ]D!
MGG_<8Z;/E^7TX[5%=^$;^^UN/6;KP_X5FU&,@K<.TI;(Z$_+R1V)Z8H H6>@
MZ9JOQ1UVWU&V6\@?2;222.=3MD<M("S(>,\>G!Z5SEG;V]_\._AH][#%<L-<
M2VW3(')B!G4)D_PX5>/85WG]B:^-2GU$:;X?6]N$\N6=;B<.Z^A.WI[=JK_\
M(KJ1TA-).A>&#IZ2"5+8O,41P<[E&W@Y)Z>I]: .T@DM4*VL#PJ4C!6&,@;4
MZ @#H.,#MQ4]9EAHUI;W2:D]C:Q:HUJEM++ .-B\[%_V0>G'I6G0!P7QI_Y)
M-K7UM_\ T?'6WX]_Y)UXE_[!=S_Z*:M/5M%TW7;7[+JEI'=V^<F*7E2?<=#3
MKC2;&[TQM-N+<2V3+L:%R2&7T//(]J /-X-,L]+\1?#>]LH%BNKR&2*ZF!.^
M=?LNX!SU8 @8STQQ3['3Q/+\2-.MKQ=/,][%%'.V2J,\*8S[%C@_4UWI\-:.
M6L6-C&6L!BT))_<?[G/'''';BF_\(OHFV^4Z;"1?X-V&!(G(Z%\]?QH YKP7
M=R1>)M2TS5=!@TK7!:0O(]D0;:ZA5G"R)P"#EF&#SC'I6[XMGN#I*Z98E?MV
MIO\ 98<N4V@@F1L@$C"!N<'G'K6E8Z38Z<\DEM!MDD4*TCNSN5&<+N8DX&3@
M=!DTEQH^GW>HV^H3VRO=VX(AF).Z,'KCTSW]: //-0%[X1^(FB:[<V=G9:;J
M4:Z-<K;7#2*&Y,+'*+C!&W//%;&LIGXF0&]@&HZ>^CNBV@"R&&3S.7*'LXPN
M?]DCIFNHU?0M+UZ!(-5L8KR&-MZQS#*AO7'3-<9XC\*RWWB-IKWPE9:_IJV\
M<-H?M"QRVP&2P;?C<"3D$-QCIUR <[J7A5]$^&>A6VHH4OSK5LSE92617N/E
M7<#R50J,CTX]:V]3L=-T'QMHV@V\5C8:5?0W-PD=S$989KLM&/NE@-VW..<<
MG R:W-&\#:7#I<EK>Z5!':O<"XBT\3/+';L !D$_Q9&>!@$\=R=W5_#VD:_I
MZV&K6$-Y;*0528;MI'&0>H/O0!YMJ%O#X2AT[3%UB&31[G7F%WYL'^C6I>)F
M2#;NXCW[3@M@=^,@KXL\.6>E^$O&SQ7\4IN;);IK&VA\J&W< @2*H8[2V#GG
MG&:]&_X1O1/[!_L/^R[3^R]NW[)Y0\O&<]/7/.>N>:@MO!_AVTT231K?2+6/
M3I6W26ZKA9#ZM_>[=?04 <3J.@:7#XV\$>5:JAU&"ZBO65B&ND$ 8+(<Y<9
MX.?3I65=W!\,:5\0;;2U^R6%IJ=I^[A4[8(I%B\XJJD8&"W3'MBO4F\.Z2\]
ME.]DC36(*VKEB3"#P=ISQQQ].*=!X?TFVEO98K"$/?#%T2-WG\8^<'[W''/:
M@#DH?#FF?VPNJ0:E8[+W3Y(39Z=;B**ZC W"1@';.W@!O<#O7':9IEG:^ /A
MUK4,(74VU2SB-UDF0QNS*R;NNT@_=Z5ZII?@[P[HD-U%IFD6UHMT,3^4NTN/
M0GKCVZ4__A$]!^PVUC_9D/V2UD$MO#SLB<=&49X([8Z9- '+^&;#3H?BIXUF
M^R6J2Q-9-&_EJ"A>%BQ![$\Y]>:[V"XANH$GMYHYHG&5DC8,K#V(ZUGS>'M)
MEU"74FTRUDOY(3 TSI\S)@C:3]"1GT-,\-Z#;>&]'33K1$CB$CR".,$(FYB=
MJ@]AG'OU[T <S9V=NWQAUZ%HP8Y]&MVD4D_,3(X/Z 5PVF:79V_PI\':W'"!
MJD>JVZI=DDR*IN64J#V4@G*]#G/6O9#H&EG4IM1^R*+V>/RI)PQ#LG]TG/3V
MJO\ \(CH TV'31I< L89/-BMQG8CYSN"YP#GGZT <E9Q:9XH\0>-M)\0^6UQ
M#*L,2R$!H+4Q*5>,G[OS%F+#OC/05+>K /'GP]2":2XMQ8WJQRS'<\B^5$ S
M'N2.<^]=/J?@_P .ZU>V][J>CVEW<VX"QRS1[FP.@/\ >'L<U<N-$TV[U*VU
M&>T1[RU!$$QSNC!ZA?3/?UH \IFBM8OAM\38G2%$AU6],:$ !&V)MP.QSTQ6
M]8W,6I?$/3='U-8Y+2'P_'<V<$P!221FP[X/!8* !Z MZFNKN?!WAV\O;N]N
M-'M9+B[3RYY&3F08V\^^.,]<<4^]\)Z!J%O9P7.DVK167_'L%39Y/LI7&![#
MK0!Y3<V-I#\)?B-;0Q*L-MK5WY2*<!,&/ 'TZ5U&M:797_Q-\*QW,(ECGTNZ
M$J,3MD"B/ 8=QR>.AKK%\'>'$LKJR31K-+:Z?S+B)8P!*>OS8ZCVZ"K'_"/:
M3]MM;S[&AN;5/+@E+'=&O]T'/ ]J /,([>:W^'7CG3],G2TBM-=FBMXM^Q1%
MNB8PJ?X=VYE ]6QWKJ-.\/"Y^(::]!IGV'3HM-6+RW54+W&_(8*I_A3*[N^0
M!D"K7B3PFO\ 85S;:%I-C-]KNDGO[6=RJW:!LL-Q! <X'S$=NO0UG^'?!=K:
MZQ:ZC:^%8O#KV[%G:.\WO*"I&S:AV[><Y/H,#N "7XKVMM<>&+)KB"*4IJEF
M 9$#;09E#=?4<&JVHZ3IEY\6=+T^2T@>Q70K@?9@H$1 G0;2HX(SV/&17<ZE
MIECK%A+8ZC:Q75K+C?%*N5.#D?D0#59/#>CQ7L-[%811W,,7DQ2)E2D?]T8Z
M#VH \IMK\Z-X02R$T=OI$?BZ>QE,JEHH;8.Y56&1\F_:#R!C@\&N]\.Z#;:1
MXHU"YMM2@8WT"226-I!Y<*$' EQN;!89'^U@^E:\?AC1(M/N[!=,M_L=XQ>X
M@9=R2L>K$'J3Z]>!3]$\.Z/X;M&M=&TZ"RA=MSK$N-Q]2>I_&@#)\8:#H7BI
M[/0]5,D=XZR7-E/"^R6)HR@9D;U^=>.1Q[5SV@2:_8:YJW@GQ%=1ZW;+IGVR
MUO7C&\QEMGERCG+9Y!]CR>W=ZCHFF:O)#)?V4-Q)!N\F1U^:+=C)5NJGY1R.
M>*73M&T_23,UE;+'),099"2SR$=-S,23CMD\4 >2VY@;X8_#.5C&9QJUBJ,<
M;L;SN /7ZUKV/A31/$'CWQW9:I:BXMU>T*QO(V$+09+@9X;.<'MSCJ:[&/P+
MX6C5E70;'8TPG*F(%=XR0<'C&23CI[5B:7X5>;QOXGU#4])=+._^SK;/YRC<
MB1;&5@C9VDCH001UH XG1;1]4LOAFFKR2SF2:^@\QI&!F@5)!'G!Y!4#Z@^]
M;=II4?A_7/'VE:4ABT7^REN/LZD^7!.\;Y"CMD#)'T]JZ'Q7X?N-2\1^%6M]
M*,VFZ;+*\_ER)&$5HRB;1N!R#@\=,<<UTJ:'IJ6%Q8BT3[/<DFX4DDS$C!+L
M3EL@ <GIQTH \TM;_P O3/AIIMU/:PZ?=Z2.;N+S(7G6*+RU8;E&<%\9/7MG
M%1>*O#MGHW@S5;>'4!<J-8M9Q#"GEQV;23)N2, G:"#G;GC.>]>D7/A70KS1
M$T6YTNWETV/'EV[KE4QTV_W<>U)_PB6@#1HM(&DVPTZ)MZ6P7"!LYSCN<\Y-
M ''3>&]'C^+L-BEA$MI>:+++=6X'[NX=9D :1>CGYCRV<US\-^=%\(W%FDJ6
M^D0^,);&7S%+106N\D*PR/W>[:",@8)!X->LG0=,;4H]2:T4WT<?E)<%FWJG
M]W.<X]JBB\,:)#8WEDFF6_V6]8O<PLNY)6/5F!ZD^O6@#A=>\-V.GZ/XNNHM
M0MV-YHDLS6-G#Y4*LB'9-@,<,>F>^/:H(-+LM,UCX:W]G L5W=QM%<S G?,A
MM2VUSU8 @8!Z8XQ7=V7@[P[INDW&EV>D6T%C<_Z^%%P)?9NY'L:F/AG1F^PY
ML(S]@&+3D_N/]SGY>...W% 'F^G1:%I/A[XBW=Y&;**/5+F S6**DZ1M'%\D
M9QQDGITYS6IHD)T[XMV]N(+.RCE\.EFMK5LCY9T"%R,!FP2,X'7'-=I)X8T*
M6XO[B32;1Y=03R[MVB!,R^C>O0?D/2H[3PAX>L9K::UT>TAEM49(9$CPR ]<
M'KGWZT 8GPP_Y%W4?^PQ??\ HYJS_&4$US\5O!4-O=R6DK6^H;9HU5BI\M>S
M @_E7;Z9HVG:-%)%IUI';1R.9'2/(!8]6QZGN>]177A[2;W4X=3N;))+Z'(B
MG).^/(P=IS\N?:@#COAOY=KJNN6&KH?^$O24-?W$C9-Y%_RRE3L$QQM' -8>
MDV=OXN\(R:A?ZO:6.J6E])+<W*6W^F6TR2G"[R^>F%"[?ND "O4+O0]+OM2@
MU&YLH7O;==L5QC$B#K@,.<>U5'\'^')-?&NMHUF=4!W"Y,8W;O[WIN]^M ')
MWEQ=6GC_ ,9W-BI:\A\/0R0*!G,@\TKQ]<57\/Z7IVK:?X5\1V^LV<,L31XD
MM+?;-<NP >*5BY+$G.[(R"":] BT73H=6EU6.T1;^5=DDX)W.O8'U ]*IZ?X
M/\.:5J\NJV&C6=O?2YW3QQ@-SUQZ9[XZT >97+V<MEX:UC2L"WG\4IY=[<,&
MN[C=,ZOD@#:G50IR2H7.,5IZ^TVC:M?:O?V%KK7AV?4(I6O(2!=Z=(C(H&"/
MF0,HX'.&/8\]J? _A9A,#H-@1-,)Y 81@N#G/MS5O_A&M&^TO<?8(P\D@FD4
M$['<8PS)G:2,#!(XP/2@#@OLL'B_5?&.DZK>6$-U#=&)1<6^Z:"W\M3')$Q<
M;1G+9 ^]R>M=_HL\":9I]G_:0O)Q:1L))"!+,@ 'F%>O/KZFJ^J^#_#NN:A#
M?ZIHUG=W<. DLL8)P.@/J/8YHG\-V=QXLM->,$*7-K"8UF4'S'!##:3T"C<3
MCG)(Z8Y ,;XB:D-/AT!+I_+TJZU:*&_8G"F,JQ"N?[A8+G/&.#P:RO&=O;>%
MO#7B[4?#,LL6HW%K%)-!;L!' N0AE50/D8IN.>^S/:O0-0TZSU6QEL=0MHKF
MUF&)(I5#*P^AJKI/A[1]"T][#2].M[6U<DO%&G#Y&#N]>..: .,\06-IIFI>
M"=2\-110R7&H16K?9P +BT>-F?=C[P 7<"<X/-<S-H&F3^"_B7<2VB/+9:G>
M/:LQ)\AEAC8,G]TY[CG  Z5ZQIWAS2-)D1[&QCA**5CQDB)3U" G" ^BX%1C
MPKH:VUY;#3HO(O7+W4>3B=CU+C/S$]\]: .*UN+5I6LM8MK*RU^)-'B6_P!*
MN3B4*VYO-B8@C<V&!'?8*KP1:'JGC;P1>PV<3V<^AS2(;J)2Y51%LWY')49Y
M[<XKO7\+:*[1M]A56C@%LK([*?*!)$9(/*\GY3Q4UUX?T>^>Q>YTRUE-@?\
M1=T0_<\ 87T' X]AZ4 >?K96QU3XJ6[0(\/DP/Y;C<-WV8MG!_VN?K5$V5A:
M^"_AA/;6UM#,^H::99(XU5F+0-DL1UR0.O4@5Z?;Z%I=K>7=W#91K<7@Q<OR
M3-Q@;L]>..>U5?\ A$/#W]B-HPT>T&G,_F&W$>%W=FXYSQUH XR>WLYO&WQ
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
MT;,X./O* H(ST-<Y<):0_#3XFPR+ BIJ][L1@ %8JFW ]?2@#V?K40N(&G,
MFC,RC)C##<!].M5]*9?[$LGS\OV:,Y'^Z*\C6>R:Q\#:EIACBLI_$&8))WWW
M<RN9?,:1QC )."N#QMR>U 'LLEQ!$&,DT:!<;MS 8STS]:=)(D4;22.J(HR6
M8X 'UKRR'0-'U#Q9\1TN;"VGB6*V=$= RJS6Q)<#H&SSNZ\GGFJN@:DUQ/\
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
MH8T?,+H['(4*%P1QU]35N/PYI&L?%*\M-2LTO(9/#]M)(MPF#*_FN-[#CY\
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
M&4_B*;;WMI=EQ;74,Q0X;RY VT^^.E %73] TC29Y9]/TRTM9I0%DDAA568
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
M-6SE@ #DN?P ]<#?-W;"X^SFXB$W_//>-WKTZTJ7,$C2*DT;-']\!P2GU]*
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
M>=.X-M% T@#X0$!G)7GD8&<D]*X338;*^^&_P\67R9I$\0) 2"-RH99QMSU
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
M0,$\#U/K767EW:7'Q(U_2=;U)+)9;* 6:SK'LF@*MY@4N"/OYR!UP/3CM?\
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
M]5\$Z9Y,BI-:6T=O=0,</!(BA65E/*\@]>U9/C'5E?6_!UR6W:"VJ,EQ*?\
M5M)Y9$+$_P!W>>#TR ?0T =M;:C97ELUS:WEO/ N0TL4JLHQUR0<4R+5M-GN
M(K>+4+22>:/S8HTF4LZ?WE&<D>XK@-8L5/Q!\2>3&C:=-X<WZ@A *&X#-Y98
M=-VP'\ *QK6RLK3P=\+;R"WABNI-0LU:95 =@T+A@6ZG. ,>PH ]*T_Q5I&J
M:S?Z7:7L$EQ9%4D D'+$$D =]HQGTZ=J?I%VT&B6KZIK%E>3.YC-W%MCCE<N
M0%49(ST7&>HKE_"_V$^/O'-G<"W+RW=OMADQEU-LI/RGJ.#7&6EM:S_!GP/Y
ML43A=<@16(&0#=." >V10![-'J^FRQW$D>H6CI;-MG99E(B/HQS\I^M..I6
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
MNE[QITEM<+;EON_:^,9[;MFX#ZG% %[QKX@N-.\ :EKN@WEH\D$)ECE*B9&
M.#C! S[\_2MVRU2RNY#;1WMM+>1HK30I*I=,CNH.17DOBBVDMK+XJ+:C&E-!
M X1?N"Y* R[??&PM[D5O:KHFGP>*/ ]SH-K;PWYG9IGME WVGE'S&<C[PR5P
M3W;U- &SX=UK5M43Q9#>7EK'-I]_):VTXAVI&HB5E9E+<X+9.3^5=#9W:V^B
M6MQ?ZC:RGR4\R\4A(I6('S+S@ GD<]Z\]LHX+C1?BBDR1R(+ZY)5P".+9,'\
MQ^E0R7$=EX8^&.H27D"I;I"3:S2K&LV;4@L&8A=R#)&2,DXSDB@#T^"_L[J'
MSK>[@FBP6WQR!EP.IR*AAUK2KB">>#4[.6&W&Z:1)U98QC.6(/''K7FEU:Z)
MI_AKQQXBOX[:ZM-3F!:WLIT,B(VQ-K2IG;N;YFP2 /6KVE7D3?&0K/?Z?,\W
MA]4VVI CW"?(0<G<0#U]#T% '2)XFM?$7A&YU'0M9L[)N=EU<;76(!R SJ2,
M!@I(SCK6_=7UII\ FOKN"WCZ>9-($7/U)KQ,FQN/V8)(_P#1Y)[>VW,O!:-O
MM! )[@]1^==VUVZ?&B*"^($$NBG^SBWW2_F9E"_[6W;GV% '8M?V:6:WCW<"
MVS %9C( A!Z8;.*2#4+*ZN)[>WO+>:: XFCCE#-&?1@#D?C7B^NV"0^"O&J"
M-/[+BU^ Z?QQ&3-%YPC/8;BPX[[O>NNN+2QTSXMVZ6T,=I%)X=N/-%NH0D+*
MF#@=QSB@#N(-5TZYN6MK>_M99USNBCF5F&.N0#FIKBY@LX&GN9XX(E^])*X5
M1]2:\X\+R:CHNN>'='U 6>K:=-:R)H^KVPV2+$J!BLJ],%0OS#J0,\FND\:V
M<][!I26&J1:?JD=\);%ITWQ2RB.3,;CT*E^G(QD4 ;J:GI\ENMPE];-"SB-9
M%F4J6/10<XR<CCWIUIJ-C?M*MG>6]PT+;)1#*KE&]&P>#]:\AUV[35?"T;:O
MI-M87]GXIMH;TQ/F(N60O)&W4!E()[YSFM37=&;2O'\LOA.UCM;IO#MT;B*U
M0(NX<0$J.-Q?..^%/I0!Z1%JFGSWKV4-_:R7<8R\"3*9%^J@Y%$FJ:?%?)8R
M7ULEV_W8&F42-]%SDUYMX</ACQ!IWA*[3Q!<27]BT9M[*)H5ECDVXD1E"!]O
M7=D\@9SWIGA6_P##NK^"3IOB26,ZQ;ZG))=VK2[+EKL3$H5 (8D_*!CMQVH
M]#2>:+7;UI]5M#91VZ,+3:%DA.3N=FS]TC'4=JY*W\1ZMXHCU"XT#7=,LFL[
MZ6W\FY19$:!#M,IP=V<Y8'(7& ?6I](A@C^,?B18XXU\S3+5G"@#<2TF2?4]
M*Q="@M)_AOXXWQ0R(+_5>J@C@L1_0T >B6EVEMH=K<ZAJ-K(! AEO 1'%(2!
M\XYP 3R.>]3+J5@]A]O6]MFL\9^T"53'CI][.*\OLM6ATI_AC+JDJQ:0^CA$
MFD.(DNC#'L+$\ [=X!/]XUH:Q-X4TZVMO[.B29;WQ$DJ3?:6%L+P@L7+9(*C
M'W1P6XX.2 #K]8UC_BD]3U/1;VTFDM[>62.48FCW(I.#M8>GK7.7/B?68O#_
M ($OTF@SK%S9PWH,.2WFQEV*G.%Y![=^U8>FWD+/\48?M]M<.T7FYAPJM_H@
MW,JY/&>"<GW-37K+_P (/\+.1SJ&FXY_Z8-0!Z7#J-C<7$EO!>6\L\>=\:2J
MS+C@Y .13[:[MKR,R6MQ%/&#M+1.& /ID=ZX'Q/)+X,\9Q>(K*T,T&M1?8+F
M&-?O72@FW8X_O',9/;(KM=%TU=(T>VL0V]HU_>28QYDA.7<^[,2?QH =<:SI
M=GN^TZE9P;'$;>;.J[6/(4Y/4^E2SWUG:E!<74$)<,RB20+N &21GK@ D^PK
MS31M!\.7_B#XA0:I96301W2[_,1?W,;0*69?[N2"<C'(]JQM#TSSC\*(M;MD
MDN)+>\5Q.@+-&(B8U;/4!=O!H ]>FUG2[>SBO)]2LXK689CF>=51_HQ.#^%2
MW&HV-G D]S>V\$4GW))9556XSP2>>*\[DFTO2/B'J&BZA?1Z+8R:; FFILA2
M!X@7\U!YB%0=Q&0,9&,YP*9!HDFGVFA+X(UI9KFPM;E;:WU4[TO;9I%W890,
M %5VL!T*]J /1Y-1L8;(7LMY;I:$9\]I5"?]]9Q2#4K!K6*Z6]MC;2D+',)5
MV.2<  YP<GBO*[?Q):F^\&WMX9/#^D3V=U#",QF.WNA(JX+.I4 JKA6P.#QU
M-1>(M%\/VOAE#IMV]_;3>)K:5YY&1D61Y%\P1,@  ]<<9R.H. #U./7=(EE6
M./5;%Y&8H%6X0DMG&,9ZYXJTMW;/<O;)<1-/&-SQ!P64>I'45P_CC0+71M#M
M]?T/3;>"ZT.[_M'R[>)4\U",3KP/XDR?^ BJ_B:>XG^&VO>(;1)3)?B.8!%^
M?[$KJ, 'UBWO@]#(: .[L]4T_4'E2RO[6Y>(XD6&97*?7!XKF/&GBM])&G1:
M5J5A]I?4K>VN;=L/)Y;R!3@;OEZ]2#U[5BSG1M0E_P"$A\.>()M3UR/2;A+.
M*W:'&WRR5$B(@( ?: #T8@5AWM_HMS\*/!,T-Q;&2+4;!G+.-ZS!QYQ.>=V2
MQ)]\T >SL<*3D# ZGH*RM(NS!HEFVIZQ97D\C>6;N+;'',Y8@!1DC/08!ZBM
M&6."ZMF258Y8)%^96 964_H17B5E;6MQ\(/AT9XHW/\ ;-J@9@,X,SA@#[]Z
M /:;34+*_,HL[RWN/*;9)Y,H?8WH<'@^U6:X31[:VL/C%K-O9PQ6\3Z-;2/'
M$H52PDD .!WQ@5W= !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4455U+4K/2-.GO]0N$M[6!2\DKG  _P ]
MN] %>Z\.Z)>WGVR[T?3Y[K_GM+;(S_\ ?1&:NW%K;W=L]M<P130.-K12(&5A
MZ$'@UP^J>-);O3?">J:)>VXM=3U.UMKJ(!9&59%+%"<_*P  (QGGM77VFL:9
MJ5O/+8:G9W"0DK+)#,LBQL.S$'C\: '1:3IL%D]E#I]K':/]Z!(5"-]5Q@U&
M=!T<Q11'2K$QQ',:FW3"'U QQ5?2K^*T\.VEQJ6O6=[D;6U!=D4<S9/0 E1Z
M8![5HVEY:W]N+BSN8;B$D@20N'4D<'D<4 ,;3;![B2X>RMFGEC\J20Q*6=/[
MI.,D>U0?V!HWD)!_9%AY*,76/[,FU6]0,8!I->U-M(T2YO(HO.N%4);P_P#/
M65B%C3\6*C\:H^"?$7_"4^$;#5'4)<NGEW,>,;)E.UQCMR#^!% &JFEZ?%>?
M;(["U2ZQCSEA4/CTW8S4,>@:-$6,>DV"%Y1.VVV09D&<.>/O<GGKR:DN-9TN
MSN/L]SJ5G!-D#RY)U5N>G!/>F3Z[I%J ;C5;&$&,RYDN$7Y!U;D]!ZT /;1]
M,:XEN&TZT,TH*R2&!=S@]03C)IAT'1C D!TFP,*,62/[,FU2>X&, TESK^C6
M<4$MUJUC!'.H>%Y+A%$BGH5)/(.1R/6IK[5-/TR 3W]];6L+='GE5%/?J30!
MQMYX7U9];OYKC1/#6N6MS+N@EO\ ,<MO&% $>/*<%1CC!&22>]=3X?T:+0=*
M6RA2&-3(\IC@39$A8DE47LHS_7O5AM6TY4MG;4+4+=?\>Y,RXFXS\G/S<>E5
M1XH\/FPDOAKFF&SB?RY+C[7'Y:/_ '2V< ^U %R]TVQU*-8[^RM[I%.56>)7
M /J,CBGVEE:V%N+>SMH;:$'(CAC"*/P'%))J%E#9"]ENX$M" PG:0!"#T.[.
M.:KKKND/IXU!=4LC9%MHN!<)Y9;.,;LXSGM0 Y=&TM-0.H)IMFMZQR;@0*)"
M?][&:D?3+"2]%Z]C;-=J,"=HE+C_ (%C-11:YI,TEW'%JEE(]F";I4N%)@'^
MV,_+T/6JGAKQ3I?BJP:\TRYBE19'4JK@L KLH8CJ VW(SV- %;7O#9GT*ZM-
M!AT^QN9V1I-UN!'.H8%HWV\X894GK@FLO3O"+37]K=7OAKPYI,EM,LRS:;\\
MSLIS@-Y:; >_WLC([YKMZ* ,\:%I \S&E6(\V432?Z.GSR#D.>.6'KUJ=].L
M9+I[I[.W:X>/RGE,2EV3^Z3C)'M5FB@"G#I6G6]I):0Z?:QVTF=\*0J$?/7*
M@8-%MI&FV=J]K:Z=:06\GWXHH55&[<@#!JY10!G'0-&,"0'2; PHQ98_LR;5
M8]P,8!I_]B:5]K%W_9EE]I!#";R%WY'0YQGBKU% &7#H=K%XAGUH10K=2Q>3
MNCB"L5^4G>W5S\JXST P.^;MW96E_$(KRUAN8PP<)-&' 8=#@]ZGHH H_P!C
M:699I?[-L_,F!$K^0N9 >NXXY_&AM%TI]/;3VTRS-DQRUL8%\LG_ '<8J]10
M!#:VMO96R6UI!%;P1C"11(%51Z #@5&FFV$=ZUZEE;+=O]Z=8E#GZMC-6J*
M*5UH^F7LZSW>G6EQ,OW9)8%=A]"1FK30QO*DK1H9$R$<KRN>N#VS3Z* &)#%
M$TC1QHC2-O<JN-S8 R?4X 'X"J2Z%I"!@FE6*AIA.0+=!F0='Z?>Y//6M"B@
M"I!I>GVMU)<V]C;0W$GWY8X55V^I R:AF\/Z+<74MU-I%A)<3#;+*]LA=QZ$
MD9/0?E6C10 QH8G@,#1(T)7:8RH*E?3'I45I8VEA#Y-G:P6T6<[(8PBY]<"K
M%% &!JWAJ&31]0BT.&QTW4;F)HTNDME!&>N2N#SR,]LYK M/!DMW)"NH>%_"
M^G&&1)/M>G@O*2I!&S,2%.G7<<5WU% %2UTO3[&:2:TL;:WED^^\4*HS?4@<
MTV/1],AU)]1BTZT2^D&'N5@42,/=L9-7:* *4^CZ9=7\5_<:=:2WD/\ J[B2
M!6D3Z,1D4ITG3FNGNCI]J;EP5>8PKO8$8()QDC%7** ,[^P-&^S&V_LBP\@M
MN,7V9-I/KC&,TZ[T32=0C@CO=+LKE(/]2LUNKB/_ '01Q^%7Z* *LNF:?/<Q
MW,UC;27$7^KE>%2R?0D9%,BT?3(!.(M.LXQ< K,$@4>8#U#<<_C5VB@#/DT'
M1YHH8I=)L7CA7;$K6Z$1KZ*,<#Z5%?Z!9:A=Z=++!;A;!Q)#B$;U(P0%;^%<
M@$@=<#MD'5HH BN+:"\MWM[F&.>"0;7CE4,K#T(/!JLNC:6FW9IMFNV'R!B!
M1B/.=G3[N>W2KU% &>= T8P) =)L#"C%DC^S)M5CU(&, TZYT72KRYAN;K3;
M.>X@&(I98%9HQ_LDC(_"KU% $5M:V]E;I;VL$4$"#"1Q(%51[ <"JLFB:3-)
M<R2:79.]T +AFMT)E Z!CCYN@Z^E7Z* *7]CZ9]H:X_LZT\]EV-)Y"[BN,8)
MQG&.*R]2T_5K&.V@\)6NBV<4CM]J,\3+M!'#(J8#$'L>OK70T4 5=-L(M+TV
MVL8"3'!&$#-U;'<^I/4^YJ2[L[6_MGMKRVAN('^]%,@=6^H/%344 5[:QM+*
MV^S6MK!!!S^ZBC"KSUX'%5_[!T;RH8O[)L/+A),2?9DQ'DY.T8XY]*T** *L
M6F6$%V]W#8VT=S)]^9(E#M]6 R:BM=#TFQ-P;32[*W-S_K_*MT7S?][ Y_&K
M]% %:ST^RTZ-H[&SM[9&.2L$2H"?7 %+>6-IJ-N;>^M8+F D$QSQAU)'3@\5
M8HH @ALK6VM?LL%M#%;8(\E(PJ8/48'%16.DZ;I8<:?I]I:;_O?9X5CW?7 Y
MJY10!071-)1)D72[)5G_ -<HMT D[_-QS^-<_P"(_#=[//IQTFPT6YTZU602
M:5?1^7$S-C#J55@& W#E2/F-=?10!RNA>$K:UN)[RZT71K!IX#;R6>GQAHG4
MD$^82J[SQ@?*,9/7/&];Z3IMH\+VVGVD+0(8XFCA53&A.2JX' SV%7** *)T
M326MY+=M,LC#))YKQFW3:S_WB,8)]Z=<Z1IMY:QVMUI]I/;Q$&.*6%61".F
M1@5<HH IRZ3IUQ:1VDVGVLEM']R%X5*+]%(P*3^Q],^T+<?V;9^<J[%D\A=P
M7&, XSC'%7:* *5GI&F:?(TEEIUI;.PP6AA5"1G.,@>M2WEA9ZC$L5[:07,:
MMN"31AP#ZX/>K%% '(>,?#%QJNC:=IVCV=@D-OJ$-U)%(WE)M1]Q4!5.2:Z6
MQT^ST^(K9V5O:;\,ZP1A03CO@#-6J* *5OH^F6E]-?6VG6D-W-_K9XX%61_]
MY@,G\:/[(TS^T_[3_LZT^WXV_:O)7S<=,;\9_6KM% %0:5IPNI+H6%J+B0$/
M,(5WL#U!.,FHX]#TB*"6&/2[%(I?]8BVZ!7^HQS5^B@"E)HVES:=_9\NFV;V
M7_/LT"F/_OG&*632--FT]=/ET^T>R3 6V:%3&,=,+C'%7** *9TC3&\[=IUH
M?/54ES O[Q5&%#<<@=L]*8VAZ0\,4+:79-%"<Q(;="$/^R,<?A5^B@#G%T_7
M;_Q 6U5M.71[2?SK..VWF64A<+YN[@;<D\=PO3'/1T44 <9HGA&2/Q+X@U'6
M=-TV>._NDGMF/[UXPJ*N#N08^Z#P:ZBXTO3[NYCN+FQM9IX_N2R0JS+]"1D5
M;HH IZAI.FZLB)J6GVMXL;;D6XA60*?4;@<476D:;?>7]LT^TN/*&(_-A5]@
M]!D<5<HH J7.EZ?>V(L;JQMI[0  02Q*T8 Z?*1CBF2:+I4MK#:R:99O;0<1
M0M I2/\ W1C _"KU% ###&8?),:>5MV;-HV[>F,>E*J(D8C555 -H4#@#TQ3
MJ* *5AI&F:493IVG6EF93ND^SPK'O/J< 9J$>'=$$\LXT;3_ #I7$DDGV9-S
ML#D$G')SSFM.B@!DL4<T312QI)&PPR.,@CT(JC_8&C&!(/[)L/)C8ND?V9-J
ML>I QP:T:* *D>EZ?%>&\CL;5+HC!F6%0^/][&:MT44 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !65XH4M
MX2UE5!)-C. !W_=M6K10!Y!=W-AJ'P]^&L F@N(QJ6F0S(&# 'R3E&]_4>]=
M!ID-I'\4_%ML(X5ADTVS>2/: I(\P9(^F*[,Z1IK1)&=/M#''G8IA7"YY.!C
MBE.EZ>9'D-A:[W!#MY*Y8'KDXYH \K\,6LM]\,? XT[6(].UB+S)+%ID#Q2N
M ZM&P]U9NG(P<5W'@74KC4M%NC>:=#8WMO?3P7*6[%HI)0V7=">Q)/XYK:;1
M],>W^SMIUHT.=WEF!2N?7&,9X%6H88K>%(8(DBB085$4*JCV H YC5'N=;\5
MP:?IUY:Q_P!D*+NX\Z$S#S7#+&I574Y"[VZ]T.*Y[PU)+X1^)VJ>'K^ZMVBU
MU/[4M3%&8D$V2LJ!2S$$X#=>U>AQ6-G#</<16D$<[YW2+& S9ZY/6FRZ;83W
M'GRV5M)-P?,>)2W'3G&: /)+^2PN;/QOX6EUG20^I:H[K<7EXD30EA'N#(QW
M'9MPI'!QCC&:W=1TS26^*/A6U:"TFA;2KH %%*RC]W@D=#QD_G5N'PKKB3SQ
M7MEX9U6.69Y/MU[ QGPS$@,FTAMH(4891@ <5U&F>'=-TRRM8$M+=WME"I*8
M5!&.>./E'H!TZ"@#SW[5HUKXG\6>'O$&L#1H)Q&+>)_)BAEL_)5 J%T/"D.,
M C!)P,YI(;ZP\.^,-.LKS6+S2])ET.*'3+J[\L!MKMO1FD0A6*F,]N H/.!7
MI]SIUE>R127=G;SO"=T;2Q*Q0^H)'%+>6%GJ$(AO;2"YB!W!)HPXSZX- 'E-
MYI&@64/@>VTMC=:<VO,(9;@JPD1DD+;"  8RQXXP>V016YH]AIS_ !5\9I);
M6S 6ED2K(I RCAN/< 9KN9M.L;C9Y]G;R^6,)OB5MH]!D<4TZ7IYDDD-A:[Y
M,AV\E<MGKDXYH \9T/5AIGA'X;WM]?S6FD!;J&:[0*RPRG*Q%MRL ,!USCC/
M:KWBZP\/)X$\27NE7[:BMU?VDL]T7C>(S&9 WEE %W;<;L>H[YKUG^S+#[(]
MI]AMOLTGWX?*78WU7&#TI#I>GFUCM38VQMX_N1>2NQ/H,8% ''-!:V7QHTZ.
MUBA@#Z!,I2-0H($R;1@>G-5?AMKVDZ5\-(I+_4;:W6SGN!<F20#R=US(%W?W
M<DC&>M=XNFV"3),ME;"5  KB)=RX&!@X]*5M.L7AFA:SMVBF;?*AB4K(W7+#
M')X')H L@@@$'(-%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %17%S!9V[W%U/'!"@R\DKA54>Y/ J6J][96^H6IMKJ)986969&
M&0=K!AD=QD"@#/\ ^$M\-_\ 0PZ3_P"!L?\ C5G^V]++V2#4+5C?EA:;90?/
M*C)VD=< =JXT11_\+\9?+7;_ ,(P.,<?\?-:E_>Q^'O$OAG1+72[4V=_/<[)
MBWS6[!'D(1=N #G&<],C% '6T5P<OC'Q#,?$Z6>DZ>'T.3#>;=.1*OEB3C"_
M>(/? 'O3X_&^IEO#-_-IEM'H^O21PQXG+3QO)&74D8VXX(QG/0^P .YHKAM5
M\<WD<.I7.CV"WJ:=<- UMY4K27)0@2;&52JD'(&<YQVKL8;AKK3X[B&-D:6(
M.B3*5*DC(##J/<4 5KK7](L;Z*RNM1MH;F5Q&D;R $N1D+]3V'4UHUY1H6JC
M3O#OC#5O$5M9W=C::W=2-'M+LTR.BQA0PQU"A3U'%=9=^)=2T/5]'MM:M;46
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
M<*"QP06^894' Y^8T =E17*0>)]2M_&2Z+J]E:6\%S927EO+#,7*"-@&63(
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
MO&"W-W:H^L^%K2U$H:XDBUD2R%!SM52BCD@ DGIGO5#1-5L-.\7^)-6N-?\
M#9M]4:!HECU52Z>7'L^;*@<\'@\>]=Y]@L_^?2#_ +]BC[!9_P#/I!_W[% '
ME=O9Z;<^#=>T+4/%/AZWEO[^6_M[BUU)9/*=I1*F00O1@,^HK2L]:DUO2KK3
M?%GB?PK';RVTEL_]G7X+3EU*EFW$!0 2<#/..1C!]"^P6?\ SZ0?]^Q1]@L_
M^?2#_OV* /._"NMW>G6UGI.K^+?"KZ?8!42ZMKX>?<HO"!E)PG09.3G&.^:@
MLIK6QTGQ7IB^)/#$D&J7%W/:N=2 ;,_9^"%"\]-V?;OZ7]@L_P#GT@_[]BC[
M!9_\^D'_ '[% '!;_#M]\,8O"NI>(]"6==/2U\R'4$95D10$<$X/#*&Z4ET/
M#^I_#R7P_>^,-)&H7,8DFO$O(_\ CYW"3>.1P' P/0 5V+7.A+K":26LO[1>
M,RBV"J7V#&6([#D=:N_8+/\ Y](/^_8H X?P[XJNV>+_ (27Q/X41(%QFPO@
M3<MC&YMQ 4=\#.3CH!@Q_$2_TKQ7X-O-#TWQ'X>26Z*9DN=2150*ZO\ P@YS
MMQVKK_M6A'6/[(#61U'RC,;8*I<("!N([#D=:N_8+/\ Y](/^_8H X+6]<_X
M2+29-)?Q+X8TFVN4\NYGM]4%Q*8SPRH"J!21QN.<9Z55N6TG3M8\/R:%X@\-
MOI6F6KVPL[S4541,<8F7&=S@ CG'4\C)->C_ &"S_P"?2#_OV*/L%G_SZ0?]
M^Q0!Y%#9PP^#8-+/BKPL]Y8ZR-2MC]O"QR@3M)ASR5)W8P <8ZG/&E?:C+8>
M*7\0:#XH\*2R7]O'#J-G=Z@$CWIG:\;+D\ XY'/X\>C7,6F65M)<W4=I!!&N
MYY)%554>I)Z4RP_LG4[&&^LH[:>VG4/'*D8PRGN.* ,W3KO5+M-*DL-0TG4K
M0R2?VE<1N3@XRJP[21PQQACG '>NBID<4<*[8T5%ZX48%/H ;(7$;&)59\?*
M&;:"?<X./RKE/ 'A[5/#.CW5CJ?V-FEO)KE6MI6<8D;=@[E7I6[>ZYI6G7"V
M]YJ%M#.5W")I!OV^NWKCWZ5/9ZA9:C&TEE=P7**0&:&0. < ]1[$'\: .:CT
M#5=%\9:KK.DK:W5IJZ1FXMYYFB:*:,;0ZD*V5(ZCKGD9Z5F7/@._M?#>EQZ;
M+:S:I9:Q_;$OG%HXIY&+[UR 2HP^ <'[HS7H-% '(Z%H6MVGC75]<U V AU"
MVMX_+@=V:-HPW'(&1\W7C..@J7Q/HNLW^NZ%J&FFSG@L'D:>SO)&1'+* L@*
MJWS)SC([]JZFB@#S%OA]X@?1K^+^T+"+48M=?6M-GC#E"Y8G;(#T!!(P-WU-
M;MYIGBO6_"FKVFI_V7#>7ME):0P6\LGDIO4J9&<KDGD8 '&#R<\=C10!P.@^
M$=<\,ZO9W6F_V>MI/:)%JUH;APCS(H431?N^&('.<9^O-*OA/7!I'C6S(T_?
MK\DSVY%P^(Q)$(_F_=]L9XSZ>]=[10!PEOX3UC3-6T/7+/[')?6NEKI=];-,
MPCFC7!5D?;D,&&>5Y!QD5L:+X9%O/KM[J2PR7.MRAKF*,ED6-4$:Q@D M\H.
M3@<L>*Z.B@#S9?AK>KX1LK :J1J]C>1R6U\.L<"$HJ#C_GB6XZ;B:W_%_AN\
MU;0M.TW1TM(UM+NWG GD9%"1,&"C"MUQBMV[UC3K"]M+*ZO88KJ[;9;PLWSR
M'V'7MUJ[0!P][H/BG3/%UYKGAR33)8=4CB%]9W[NH21%VJZ,H.?EP"".WY%_
MX9U^V\3Z9XFTRXL[S4([-K*_@N6:%)HV?S,HP#%=K'@$'C SZ];=:I8V5[9V
M=S<QQ7-ZS);QL>9"HW$#Z"K= 'E^HZ3JFB^'?%:ZG+I"/X@OU%JCEGC\R4)'
ML;<!QA3\W;KCC%7](@UO1M:M%U70]**7BBR%S;:G-<3*@!8 "5<[.,D ^_.*
M[F^L+/4[.2TO[6&ZMI!AXID#JWU!XJEI/AG0]!9FTK2K2T=AM9XH@&(],]<>
MU '+>&O#WC'P]#'X?%[IDN@V[D07AW_:EASD1[<;=V. V>!S@]*ZOQ%ICZWX
M9U32HY%C>]M);=789"ET*@GVYK3HH X*7PUXDN;3PDLZZ4)=%N$EF"7$F&58
MC'A3Y?).2W(&.G/6H]4\'^(;R\\9S6EW:6;:W!;QVLJ3/OC,2E2&P@P&!(R"
M2,]Z]!HH X?3/#>O0>,]/UN:+1[6VBTMM/DM;5G(B'F*XV94 YVX_AQGOCG0
M\!Z%JGAGP\FCZ@]F\5L\@@DMV8F16D9\L"!M/S 8&>G6NHHH XOX@VMOJUA:
M6EGJ*6^O6]] ]BT; R1R%L$E>NW87)]@3SBI_$?@][W2]%31I([>\T.>.>R$
MV?+<(-IC<C) 9>,@$UO)HFEQZS)K":?;#4I$$;W0C'F%1QC=UZ #\!5^@#F(
MO#]UJ/B<:]JL<,$D5BUE!!#*9-N\Y=RQ5>>  ,=,GO@<M;^"O%:>&?#VB.VD
M!-#U&"X242R$W$<3$@D;?D."!CYLD]1CGU"B@#/UNUN;[0+^SMA$;BXMWB3S
M'*H"RD9) )QSZ5R!\):Y_8O@JR T[S-!FADG8W#XD$<9C^7]WWSGG'I[UW]%
M 'F.I^!_%%[I.OZ<)M*E:]U%;V&\FDD\V1%E5UB<!?E"A< @L,<8&<UTGBSP
MO=^([32I8;M+35+&X63[1%D8C<;)E7ORA./<"NJHH Y7Q;X9OM1M-*N/#]Q!
M9ZGH\XELQ,I\EEVE&C;'(4J<9%:6A)KS1R7&OM91SL J6UDS-'&!G)+, 2QS
MZ8  ]S5NTUC3K^_O+&TO89[FSVBYCC;<8BV<!L=#\IX]JNT <5XK\&S>*/$^
MFSW5O9S:/!:W%O<1R3,)&\T+\R@(0"I0$<]?3%9]]X6\7ZE\.+OPO?7&FW%T
M62."]>XDRT2R*R^8/+^_A<9'7K]?1:* .2U#P_J>H^-M-U>6*R%C#836D\?V
MARY\W:3M^3! VXZC.>U9-MX+UJ+P1+X(FEM'TPDPQW_FMYHMB^[:8]N-X&5S
MNQT/;![BVU2QO+Z\LK>YCDN;)E6YC4\Q%AN7/U'--OM8T[39[6"]O88)KN41
M6\;MAI7/0*.IH PO%'A ZU)HCV4XM'T^4QNPZM:NA26,>Y&W![$9HT?PA_9/
MC/5=6CF46-T%D@M5&!%,P"ROCW$:8^K5U5% '&1^'-9C\0>+M0"V!BUFWABM
MU^T.&0QQLF7^3@'=GC.,50_X0_71X7\':6!IQFT*[MYYF-P^V18E9<+^[ZG=
MGGICO7H5% 'EEQ8ZKKOB'Q%>Z39Z'J-A+.+.99KV:W9O*4*R2*@*N V\9;DC
MC[N*V)[/5_%,?A75+>SL;4:;>O-/"UR2IVAXL1E4(93]X'CC%;]WX-\-7^H-
M?W>A:?-=N<O*\"DN?]KCYOQK;551%1%"JHP !@ 4 <+XNTJQ\1^)="2SOT%[
M'-+!>)"P8O9E<S1R = 2$7V+UW=4+'1-+TR\N[NQT^VM[F\?S+B6*,*TK=<L
M>_))_$U?H \POO!'BFYTG5;#SM)E>?55OXKR623S)E6576-_E^7:!@$%A@
M#K71V&B:U:^-]3UV5+!X;NQAMU5)W#;X]QR1L. 2WJ<8[UUE% 'E]EX \0:9
MH'A>2VFT_P#MOP]-.R*97,%Q%,3O4MM!4X(P<'D5T6A:)KEOXVU;7=12PB@U
M"V@B\F"9Y&C:/=W*J"/FZ\?3O7744 9'BG0H_$OAG4-(D;8;F(B-_P#GG(.4
M;\& /X5D:AX,;6/AW-X<O[P_;;F,237:CK<[A(7QQQO'3TXKKJI:GK&G:- D
MVI7L-K&[B-#*V-S$X  [GZ4 <\^AZQKMSH4FOQV40TF<7;?9IFD^T3JA52 5
M7:OS%L<G.![U4A\'ZG-;^-K6\>TBB\0%S"\4K.8]T0C&X%1Z9X/M7<T4 >>P
M>&_%<]]X1NKQ=)A.AEUD2*:1_,4P^7N!*#!.<[<<8ZG/"CP?KI\->,M,(TX2
MZ[=7$\#"X?;&)45,-^[ZC;GCKFNPU77=,T2/S-1O$@4*7.03M4<%B #A1D9)
MX&:O0S17$$<T,B212*'1T.592,@@]Q0!QK>&M;CUSPUJMN=/\RPL'L;N.21R
M &V?.A"_-C9T.WKUK%N_!'BJ?2+^P\[299'U9-0CO)9)/,N%64.J2?+\FT#
MQN&   .M>GT4 <KI6AZO:^/-3UNZ%B;6]M((/W4K[PT>[G:5Q@ECQNXQWJ#3
M_#VLVFJ^+KQTL2NL%&ME6=\J5B$>'^3C.,\9]/>NQHH XFSTBSTCX8P^&?%-
MU8Q(MBUO*R39#JJ\LNX Y'7IP<5I^!M*NM)\)V2:C-)-J,R+-=RR##LY4 !O
M=5"K_P !K4O]$TO5;FTN=0T^VNIK-B]N\T88Q,<<KGIT'Y"K] !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M5GZ[J\&@:%>ZM<JS16D32%5ZMCH![DX'XUH5F>(=%@\1^'K_ $>X=DBO(6B+
MKU0GHP^AP?PH P+?Q+KP\0V5C)I37-K>12$SQV5Q MI*JY"R,ZX96Z!@!S_#
M6+#\0/$#>$K/Q--ING)8_;OLUU$LKF0J;@P[D[#''7KSTK?\/6/C6W$,.O:A
MI<\-HI$;VHD62Z(!"F4GA1W.T')QVX.)_P (+KG_  K7_A%_-T[[1]M^T>=Y
MK[,?://QC9G/\/Z^U &A#J6L'XJZG9RWEL--M=-BF6,QM\JL[;CG=][Y>O3&
M..YAC\<ZK<PZ1J=EI,UWIU_,BM!%83^;#"_W9?,QL8 8) '?@G&:TW\.:D?'
M,NMI)9_8KW3X[2[A?<74JS'Y,  @AB,G&.N#TK/\->&O%V@11:$=5TZ7P_;-
MB"XV/]L$.<B/^Z/[N[KCH.F !]AXH\2:CK6JVT=AI4-II.H+#=223N28=@8E
M,+RP!SR .W/6HHO'&K7,>CZE::3-=:=J,R*\$5A/YL$3_=E,F-C #!( &,\$
MXS6GX?\ #U_8:KXDFU 6CVNKW'GJL,K,RC8$*G*CL,Y%9WAGPWXOT&*'0WU7
M3IM M6Q!<!'^V>2#D1G^ <?+NZXZ#., %?Q'KM_X@\$^+Y],6T73[2&[M/WR
ML7GV(1(RD$!0#D#(;.WMFNK\)_\ (FZ'_P!@^W_]%K7)CP7XAT[3O$NAZ9<:
M;+I&K_:)(&N6=9;9YE(9<*I#+D\'((ST/2NR\/V-SI?AW3M/NY(I)[6WCA9X
M@0IVJ!D9Y[4 <H?&6IPZ+XSOAIEB+C0YY%$:RMME58E?<S;<DX/H/3-3VOBO
M6UU[PY;:A96*6>NP.8?)=C)#(L7F?-G@@C/ Z>IJN_@_6GTKQI:%K -X@DD:
M)O.?$0>,1_-\G. ,\?3WJW-X:UB74/!]S_H(&AJXG7SG_>%HO*^7Y/3GGZ>]
M &1HOBS4=)TCQGKFNW$-Q;:=JD\(CAC*L658D15RQ 4\#ZG.:W;WQ)JF@:KH
MD6LPVCV>K3BT#VP96MIV&44Y)WJ<$;AMZ=*SG\ 7=YIWBS1;ZZMO[+UJ[DO(
MI(U8S1R/L(R#QA60'C.?:K__  CVL:R="3Q UELTFX2[+VTC,;F9%*HQ#*-@
MRQ8C+<X% $OQ(O\ 4-+^'VLWNF3I!<Q6['S&4L0.AV\C#<\'MZ5@^(#J*>*O
MA^Q%M/>^9=[<9C3FW/7.X\=3]*Z[Q;HC^)/"6J:-%,L,EW;M&DC#(5NV?;-8
MUQX?U^\UGPMJ-PVF[](,K3I')( V^/R\+E3TZY.,],#K0!#!XNU8Z'XL^V6-
MC)J6@EPZQNRPS)Y0D!Y!(.#C'ZTZ;QN+6R\+BYFLM,_MBR$_VFX1C DFQ"(A
M\RX)WG!+=%[DTW_A%-9(\:<V&=?7$/[Y_P!U^Y\KYODYXYX^GO5E/#VJ#0-)
MT>[L])U"Q@L!:W=K<2-MD=0H5U/EGLK<$=^O% '2:7+>3Z;#)?QQ1W3 ^8L)
MRG4\J>X(P:YCQZUCJL$'A:\U&*RAU".22YE>41D1(. "3U+E..X#5L>$-!?P
MSX7L](><S&W#8.20H+%@@)Y(4$*,]A3=)TR_76-5O]5BLV:Y=%@,4C.8X4&%
M0[E'\1=LCN_M0!D_"_7GUOP9##<RI)?Z9(UA=,K;@SQ\!@>X*[3GODUGW'C_
M %+_ (15?$]G9VDED^H&S%K*664+YIA#EQGG< =NWH>M:%EX>U/1?'VKZ_ U
MA%HVH0I]I@\QPX>,8$H&W .,@COUS7)Z3#K4FG'Q!:)X5O=.EN7U%'N+J:'D
ML2K-&-T:2!<#.,@CGG)H Z>^\2>*F\5W'A[3M-TG[5'IL=\LD]Q(4R7*%20H
M/53CCW)[5'J'C;53::A>:-IQO!87+6YM%LYY&N2C;9-DJC:N#N R&SMYQG O
M:=I6JW'CA?%,L-O!:W.DQ6IMVD;SHR',F2-N,Y8KC/;.>U4K7PUXLT+6]230
MM1TS^Q=1NGNV6\C=IK21SE_+"\,">0"1_/(!;OO%MW/>7=EI-NT=Q:6T4T@N
M+&>;+R*66(B/[AQC))[]#@U23QMKEQ=>%8%T%+.76H[CS8;UW22"2)"2"-OW
M<C(/4CL,YJ:_\,^)--\4RZWX7OK%Q>P10WUMJ>\AS&,)(K)SNP<$=#_*Q>>'
M-9N/$7AC4VN;6X_LHW#W+2,R&5IDVG8H4[57/ )/&![T 9L?BSQ5-;>(K=++
M2!?Z%(?.D9Y/*F3RQ(H5>H8@\DG XZYXT%\;?;K;1$LH3%=:IIXU EK>2X$$
M>$X*1\L2SXZ@<$YZ LM_#.L0W7B^8_83_;F# !,_[LB(1_-\GH,\?3WK.'@G
MQ%IUAX:O-'O=/BUK1[+^SY4F+M;W4.%X) #*<J",#K0 LWCS7[;1;6XGT!8;
MIM9CTR03B2%959P%EB#*#M8'N>#ZUHP>(]>.NZUH5Y#IT5[;V"WUI-#O>/:Q
M9<.#@D@KVQGVINM>'/$6M:3IJ7-SI[WT.IP7\P#.D*+$01''PQ.<<L>Y)QT
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
M9FBVP^5R"H!SUZ^WO5 ^$?$4GAWPIITTNEM)H=Y;SL4DD572%"@ ^4\MG.<
M#I@]: -GP]K^IW?B76="U>"T6XL4AFCEM"VQXY V 0W.05/USVJ[KNIW]A<V
M,5M';Q6TOF&YU"Z.8K8*!M!7<I)8G Y&,&JFG:'J-MX\U;7)C:_9+ZVA@5$D
M8NOE[N2"H'.[UXQWIOB+0]7OO$FB:MIL]FT=B)5DMKS=LRX $B[0?G7!'/8G
MD9H PF^(>I'P5%K4.GVDLZZI_9TZ^8P4_OO+WH,=\@X)&/>MO2_$&K'QM<^'
M=7MK)2;$7]O):.Q 3?L*-NZD''( ^E<\? 7B$>&KK23=Z9(9-:_M))/WB?+Y
MWFX/!Y)XQV]372+H>IGXB+XB<6@M/[+^PF,2L7!\SS-WW<8[8_'VH T->U&_
ML$M!901%9IMEQ=3G]U:QA22[#(ST QD<GK7!Z]XTU:_^&?BF\LIK6&[TR[>R
M:YA5BLJ?)\\8S\I(D'<XQQGBNM\6:'JNJWFB7FF36I.G71FDM+PL(IP5*@G:
M#\RDY7CK7/S> =:N_#_C#2[C4+#_ (G=R;J"2.-QM<A.&!)P,QXXR><^U %G
M6[[Q'!XW\):<M[8K'=+=R.JP.%9DCXS\^2,/P/7GGC&@/$FJZM'K<^@PVCQ:
M3</:B.X#%KJ6-074$$!!D[02&R0> *9J?A_7[_5O#>LK/IJ7^F&=9XR'\HK*
M@4[3U)7 ZXS[4VP\-ZSX>U'7!H\EE+8:K<->*+F1D>UG<8<@!2'4D XROI[T
M 43\0+_4W\*-H5A:R0>((IV1KF5@8GC0D@@#H#U(SG!X'6IH?$?BU_$P\.2:
M?H\=]_92WK3":1HE8R%#Q@$C@\>_WJ2#P-=:3>>#DTMK9K'P^DROY\C+),94
MVL0 I Y);KWQQUK4.AZFOQ$E\1*+1K5M+%BL9E8/D2&0,?EQC)QC\?:@#,T[
MQ]+>>&M)N9;18]4U"[ELO*C1Y41XB^]PJC<RXC) '/(&1R0R3Q9XH73?$!BT
M42W6EJLUO-):S00WT14E@@?E77!XR<\>M4HOA_KD/AFSAM[^SMM;TW4IK^RG
M4L\3>8SEHW!4'!#D'&>E=7IL^IZ?:27WBW4=+MW;;&J6[E((^?[TARS,3[=
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
M[O0[DQ+)M=(IDVJP;;DD'#=-V#C.: /2*H:QK6G:!ITFH:K=QVMK']Z23U]
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
MK6FZC?WMC9WD<]S8E!<HG/EEL[03TSP:OUYI"?$'_"Q_' \/+IWVC98,6O\
M>5XB;"@)@\^N>,=#VNZ9\0WU?2M%\NU-KJ5_]H$R&"2X%N8&"R?*GS-EBN.1
MP<D\8(!WU%<+#XUU2UTR?^UM+>*\_M%+"TE%K*D=T'Y641G+C #$KR?EQGGA
MLWBSQ'9QZ_YFFI/%8Z>U[:WSV<UK%(5!+1,KDG=QD$'!'IB@#O**X*S\6Z^M
M[X3DU"WT[[!K\879 '\V&0P^8#N)P5.#QCCU-=-XIUP>&O"^HZT8&G^QPF01
M*<;CV&>PSU/I0!KU3L=6L=2FO(K.X662RF-O<  CRY  =O/L1TKF6\0Z[;>+
MM$T:4:;<0ZG;/<&:)'0Q^7MWC[S9!##!XYJ*R\2>(-0TSQ6UK:6']HZ3>R06
M\(5V6<+&K $Y!W'.,_3B@#MZ*Y;2O$EQK>E^&[JPDM6;4H_/N,Q-A(U7Y]HW
M<$.53DGEO:L>;QQK%SIJ:QHNG-?6IN2@LDL)S++")"A=9A\F>-V,$8XSF@#T
M&BN%D\2>*+O7O%&EZ?!I,1TF."2&6<2/O#HSX8 CDX SD8_VL\='X6UH^(O"
MVF:P8A$UY;I*T8.0I(Y ]LYH T;N[M["TEN[N9(;>)2TDCG 4>],L+^UU33[
M>_LI1-:W""2*0 @,IY!YYK@]+NM8N]3\>I?7\$T%JQA5%MRI"^0&4*=YP!N.
M<@Y.3QTJAX5U_6M$\+> Q)%8MI.HK!8; ',ZLT9*ONSMQ\O*X_'T /5*JZAI
MECJUH;34;.WN[8D,8IXPZDCD'!XKCM2\9:M+!JEQH-F+DZ?<O;K:M83R-=-&
M0' E3Y4.=P&0W3)ZX'7G48XM&.IW226\26_VB5)!AHP%W$$>HH M(B11K'&B
MHB@*JJ,  = !3JX&\\:ZMI_@^Q\93V]HVCS^5+/:JC>=#!(0%</NPS#<I*[1
MU//&3+)XB\5W_B?Q!HFCVVCHVG1V\L,UT9&5A(KG#!<<G:.F .>O% '<T5YK
M;?$76-0TOPU<6FEVB7.I7LEA=0SR,/*F0/G!'\.5SGDX.,$U-_PL#4?#]SXA
MLO%=K:?:-,LEU""6PW*EQ$QV@8<DJV_"]<<^W(!Z)17'7_B36/#]WH4FKI92
MV.JW*6;_ &:-D>UF<93DL0ZY!4G"^OM5;2]?\7:YJVK6EK#HMO#INI&UEDE$
MKEH]BME0",L-V>< ]..M '=45Y1H_BGQ#I7PD?Q+-<V=[,+R3*2V[*6W7C1M
M\P?'\60 . ,<]:[*ZUZ_@\>VV@I';/;W.G2W2,58.KHRK@G)!!W>E '2U3.K
M6*ZRND&X7^T&MS<B'!R8PVTMGIU.*\\C\>^)O^$/A\3S6FE+:17YMKJ!1(7=
M/M'DY0YPI''4'//3I74/KNH?\+%/AX16BVSZ2][',0S/O$BH 1D#;R3COQR*
M .GHKS#0-9\6I\/=7UJWGLM1OH+N[<0RVSJ9 DK!@")..!\HQQ@#GK75VOB"
M75'\/G3)K::&_MS=SN8FXA"KROS?*2S*,'/?^[0!TE%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !535(;R?3+
MB+3YT@O&7]S+("55NV0.HJW10!R%AX3FM?$=_P"($MK"SN[JR^S/;VKMY<S[
MMWFN=HY[#@G&>3FN:U+2KCP_X'\,^#I]1TI+TW($;W:,;>=8LOACE2ASMQ@Y
M)'H3CU2J][I]EJ=L;:_M+>[@)R8IXQ(I_ C% '"Z2FNB34=&FC\.RR7UK([7
M&GRREE? 0--OW$Y!X.<_+CIR)O\ A#-6'AWPEIBSV6_0;F"=W+/B81*5  V_
M+D-UYQCO796&FV&EV_V?3K*VLX<Y\NWB6-<_0 "K5 ')1>&]4A\1^)M45[,I
MJ]O##%&78&,QJR@D[><[R>.F,<]:SE\%:LGA;PKI"SV1?0[R"Y:0L^)A$"
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
M/@#1O#8N;(RZ=>1W)G)<*X27S -N."<XZ]LUVNCZSI^O:>+_ $RX%Q:L[H)
MI7)5BK<$ ]0:OT <G%X=U/2?%>I:UI#VCQZLD9N[2Y=E"2H-HD1@IR"."I S
MC.12IX'M5\!7OAF27S#>+*\UP5QF:1BYD [88@@=L"NKHH XJ3P")IO#=S+>
MLUUIK.;Z7'-X'^=P?8RJK8Z8R*T==T&^U+Q5X>U:WDMUATIYG=)&8-)YB%,#
M XP#GW]JZ0D 9)P*QK/Q5HU_JD>G6]V6N983/"&B=5FC'5HV("N/=2?6@#GK
M7PIXGT36-0CT/6;&/1-0N7NGCNH&>:U=SE_*P0IR<D;N!Z'G-A/"VL:/XOOM
M8T*]M#:ZG'$MY;WP=BKQKM61".IQU!QGU].RHH \FO-%O/#O@_P_X1N=6TC[
M;-?R31&ZA802*K-*59MP((9EP5P> .F36I8:=?ZFFJ>&-8CT.2VU*UD:>YTF
M20RHWRJ&E\S))(/RDG^#&,#CO+[3[+4[8VU_9V]W 3DQ3Q+(I/T(Q26.FV.E
MV_V?3[*VM(,Y\NWB6-<_0 "@#G/#6D>+K(V]KKNLV-U968Q$]M"Z37&!A?-)
M.!CKA1R0,GKF[XST"X\2>'6L;2XC@N4GAN(GE4E-T<BN P'.#C'%=!10!RG]
M@:N_C6PU^::R<6]A):21KN4L78,6'!P!M QSGK[5B-X#UL:5/#%?6*W!\0-K
M2(X=HI S%O)D& < D$'U X&*]&HH X4>"=6N+GQ<UYJ5F8O$-HL)\J!@8G$1
MCSRWW1G/J?:NF\.65_IV@VEGJ4UO+<01+%NMT*IA5"CJ<D\9_&M2B@#@O$5G
MH_BWQ9HD5CJ,4MY8SRK?+;2J^+8#]Y%* > 7$:X/JWH:U]=\-W5SXETOQ'I4
MT*:A8H\$D4^1'<0OU0L 2I!Y!P?<&MVUTZRLI9Y;2SMX)+A_,F>*)4,K?WF(
M')]S5F@#B[[P,VK:;XH^V7$<>HZ_$L3M$"R0*B;8U&<%L'))XSGH*9%X9\27
M7B'PYK&HW^F*^E1SQ2101.5<.JKD$D')VD\\#C@UV]% '.^.-!N_$_A2ZT:S
MEAA>X:/,LV<*%=7Z <YVX[=:KWWA[4[[QE9:WYUO!'#82V;*CL7!D*DNIV@<
M%1CU]JW;#5K+4Y;V*TF,CV4YMYP49=D@ )'(&>".1Q5V@#S>R\!^([>P\-6S
MZII>=#NS*C+;N?.4JREV^;ESNSCUR2:Z/6O"2:MXKTC6UG,)M%:*YC _X^(L
MAT4^RR*K?G72T4 <EXF\-:O=:]8^(O#FH6UKJEM"UM)'=HS0W$+$-M;;R,,,
M@BM[2+:_M[(G5+N.YO9&WRF%"D2' &U%))"@#N<DY/?%7ZQK3Q5HU]JD6FP7
MA:YFB,T :)U6=!U:-R KC_=)XYH SAH.KZ=XMUG6=,EL98]6C@5TN2Z&!HE*
MAAM!W@YSCY?K67=_#V[L=/T27PYJ:6^L:0\SK/=1[H[KSCF42 <@,>1CIV]1
MWDDB11M(YVHH+,?053T?6;#7],CU'3+@7%I(SJD@4KDJQ4\$ ]0: .:U;PGK
M/B'PYY6I:O##K<=Q'=VL]I$1#;2Q_<VJQ)(Y;))R<^@ I[:+XKU/P[J=IK6H
M:8UW=6<EG$EI'(D*[UP9'W$EF] , <COFNC_ +6LAK8T?SC]O-O]J\K8W^KW
M;<[L8Z\8SFKM '%/X3U5H?!Z"6SSH!4R'>W[[$1CX^7C@Y[^GO6EX[ODL/!F
MHL]U%:M.@MHYI4#(KR$(I8'C;EN2> ,FNCJH\]C>7-QI<C0S2K$KS6[ -\CE
M@"0>QVM^5 ' Z&NLZ'JFGAT\+74,VRU7[!+-]H6'/\&\M\B_>*@@8!KI?"^@
MWVBW^NSW<ENZ:G?->((F8F/*JNTY SPHY_2M73M#TC2"YTS2[*R,GWS;6Z1[
MOKM S5^@#FO"WA)/#5YJTB3F2&ZN6DM8L<6T;'>R#T^=G/TV^E9&D>$?$^@S
MSZ5IVM62^&Y9GEC$D+&ZME=BS1QL"%ZDX8YQGI7>44 <G;>'=3M?$?B?5 ]H
MR:O%#'%&78&,QH4!8[><[L\=,8YZUH>#]&N?#OA/3M'NI(I9+.(1>9%G#@=#
M@]/I6Y10!Q\?A?5;35_$T]M=V;6FLXD6.1&#I)Y0C(+#C;QNZ9[<=:I#P7JR
M^'/"6EB>R+Z#=03M(6?$PB4J !M^7(;KSC'>N]HH X:+PMXGT;7M2D\/ZOI\
M>DZG<-=30WD#226TK??:+! .3SAN >WKV$MA#<:6^GS[Y8)(3!)O;+.I7:<G
MU([U9HH X.#P1J;^$8O!VH7=K/HT3HOVD;A/) CAEB*8V@\!2P;IVS4.F-J*
M_%CQC_9T=I)_HM@'6XD9,'9)M((4YQSD8&<CD8Y[+6M;T[P]I<NI:K<BWM(O
MOR%2V/P )I]OI&EV][)J%OIUI%=S#]Y<1P*LC_5@,F@#SG6]!D\-_P#""Z?9
MRQS78UJ2:264%5EE>.1W)QG:"20.N!CKCGH=0\#IXBDUNXUQHUFU*R6P1+=B
MPMXE8N"&(&YBYW= . /<]+>:/IFHSQ37VG6EU+"<Q23P*[)_NDCC\*9JFMV&
MCH#>2N&*-((XH7E?8N-S;4!.T9&3C R/6@# 3PUJVI0:):Z_/9R0Z3<1W/FV
MY;==21@B,LI "<G<0"V2.PJUX8T&_P!&U37KFZDMGCU.\-V@B9B8SM5=IR!G
MA0<\?2MRPO[75-/@O[&=)[6= \4J=&4]ZLT >>I\/]2/P]U+PG+J5KY3RO)9
M3)$V03/YP\S)Y^; X[>M:$/AWQ%-XOT_Q%?7FF>9;V4MM);01OM.YE;Y6)SU
M7J1QTV]SV5% 'G1\!ZN?AU-X7^U6/FR7AN?M&7V@&?SL;<>OR]??VK?_ +"U
M%_B!!XC9K58$TTV+0AV+9+ARP.W'48Q^/M7344 <AX?L#X'T^]CUC5]/BTQ[
MV66WDD/E']ZY?#LQQG)( %1_#W0;72[74;VSE>2SO+J0V(;[L=L'8JJ?[)9I
M&![AEKJ[VPL]2MC;WUI!=0$AC%/&'7(Z'!&*G50JA5   P .U "T444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%9/B>>[MO"VJW%A<+;W4-K))'*T>_:54GID<\?\ UCTK6JKJ5DNI:5>6+.46
MY@>$L!DJ&4C/ZT </H?B#4+#POX)TPSV\^I:U;QB"1XF"Q1) )'9QO)=@!CJ
MN2PZ8K9TKQ!?)XUO/"VJB&29;1;^TN84*"2(ML8,I)PP;T."#T%9B>!-2_L'
MP]&^JVPU?P^R?8KA+<B,QJ@0HZEB3N4<D$8XP..=[3M"E7Q'/XAU%X6OY+5;
M... '9%$&+D9/+$L<DX'0#'<@!J^M3P^(-,T&Q,27=['+.TTJEEBBCQDA01E
MB6 '/')YQ@Y-UXDUW1K*&VU6ULQJ5[JPTZPE0GRY8VY$S*"2N%#97/) Y&>+
M?BOPO>ZOJ&EZSHVH1V.L:8SB)YHR\4L;@!T< @X.!R.GZB#5?!]_KFBP?;]6
M3^V[:\COK>ZBA(BAE3[JK&6R4QD')R<D^@  X:_JUAXR3PW?-:S-?6;W%A=I
M$R .A^='7<<\$$$$>GO7.V'CGQ--X5\.>)KE=+%I?WL=K<6L<3[\22F/>KEL
M#''RX.>N><#K8M"O;C7HM>U%[4WUK:O;6L,.[RT+D%W)/))VJ,8X&>N:P(O
M&IP^ ]'\-+J%H7TZ\CN?M!B;$@23S -N>,DXSGM0!:N_&%Q_PE5_H4=Y96-_
M#)&+2UO8B/ML952S(^X G)90!G!7G.>+K>)KNU\>:CI-[]F73;721J(D1&\P
M?.5.XYP<!2>!WJOXB\(7WB>TO-.U&6QDM)IUEMYRC>?98VY"'N<@X.5QNY!Z
M5:E\+3W/C2\UBXF@>QNM,_LU[;:=^S<S;MW3G<1C'XT <AXNU+5M=^'>FZW(
M]K%97M]9S+:B(ETB:9"GS[N6^[GC')QTR>DU/Q/J=Q>:U::(H$VED1*K6,LX
MGF,8DVEE("+AE7USD]!SE-\/_$1\)1>%_P"W+%M/M)XGM)Y+5C,(XY ZJ^&
M.,8XZX'2M.Z\)^(;+Q/=ZSX=UNSMAJ2Q_;[>ZM6DC,BJ%\V,!@0<#H3]2: *
ML_BCQ7<ZUHFF6UE8V%QJ>FRW+QWB.S6\J;<@X8;AEO8]_:NNN3J4?AN1FGMX
M]36UR\J1EHQ(%Y*J2"1G.,GZUCOX8O\ _A+='UA;^.6+3[62WD$RDR3>85+/
MD< Y7IC'T[=-/$)[>2%B0LB%21[C% 'CTT^I7/PA\)W=W<174\VI:?*F4*$D
MR@G>V6R2>X ^E=OIFM:X/&>H^'-2DL)G6P2_M9H(7C"AG9"C@L<X*]01GV[9
M:> M97P;I'A]]5LG&F7<$T<HMV7<D+;E!&X\GN>@QP.];BZ!J"^.YO$GGVNQ
M]-6Q%OALC#EPV[ZMC&.E '/VWC^^7X>:9XAU%(8#<WSV]W<0P.\=K&))%\S;
MG./D5<YX+9]J[#P]?3ZCI[W,EY97L+RG[-<V?W)(L#!^\W.<@\]JPM"\+:UX
M?\,:?I5O?V<KVMW+++OB8)<12&0F,C)QS("#S]T<5I>%/#$7AJ'41$(HA?7C
M71M[<8B@RJKM0>GRY)P.3T% #/&>HV]MI<.G37<=J=3E%J97D";(R"96R>AV
M!@#_ 'F6N<^%NH6UE/K?@^&[CN(=+N#+82)('#6LIW* 1UVDD'ZBNNCTR_/B
MR35;B:W>U6V^SV\2JP>++;G;.<$MA,\#&P5F:MX7U&Y\=Z9XFTZ\MK=K6W>V
MGCDC9C<QL<[201C!Y'7F@#/U+QAJGV;Q?=6 M(5\.G @N(RQGVQB1B2&&T$'
M"X],\]*9=>)O$_\ :'A6RMTTQ)-<MIY6,L4G[EDC#KQN[!AD=R.HSQA3R2ZO
MXBUW4+/6?"QC%UY#V^LVY\V,1 +A@''R[@S#<.^?ITT&F:SXAU/PQXCN)+&"
M331<B2%%<K.)/DWH3@JI50PR#]Z@!C>(]=DEOM+C>V&JZ;;Q"XDAL)IXI;AT
MW[0 1M3&WJ<G=VQRZ#Q?J=XVFZ?-8R:9JDU@;R[C:U>X,/S[ H5#W(8Y)X
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
M<=.I-;^ER:K+\6]?ADU%6M8+.U*0F'A48R':#G@YY)YS[8% '<@*B@ !5 P
M. *SEU[3F\1'01,W]HBW-T8C&P'EA@N[<1@\D#@^M<W\39]0@T;2OL-[]F$N
MK6D4H\O=O#2K@9STR,D=^F>N:-]#J;?%VTAM;NW2\/AR0-<R0EE7_2$R0@89
M/MN[YYQ@@';ZMJMKHFF2ZA>M(MO%MWF.-I&Y8*/E4$GDBKM>9W'C?7HOA=?Z
MXILO[4TZ]>SG8PL8Y=LXBW*-WRG!!YR*UO$WBY](\2KI5S?Q:1%-:J]E>7,!
M:"><LP,;OD!0 %.,@G=UZ9 .VJM?:A::;"DUY<)#&\J0JSGJ[L%4?B2*DM3*
MUI"T^WSC&I?;TW8YQ^->=?$2.Q\3R7N@SWZVWV&U\^([B/\ 3&YBY']U02?^
MNH]* /2J*Y3PGXL_MWX>0:^8FDN8[9_M,"#YO.C!#KCL21Q]16&GBSQ!-8^#
M[ZVN;&3_ (2%@LL36Q<6Y,9D^3:ZDA<%6R3Z\=* /0?L=M]L^V?9X?M6S9YV
MP;]O7&[KCVJ:N$LM8\5:GXKUW3HKS2X;72+RW#,ULY,L+H'9?O\ #8/7GD#@
M57@\5^)=4T[2]<TC3Y+FVNIE9[(VX4"V8_>$A;[X&#TP>1CO0!Z'17 WWBCQ
M!J%OJMSX=MFEDL+R2V@MC;;TN#&VUPS[AMR0V,=, G.>)O[;\27WC:30H)+*
MQC?2([Y3+;F22!V<J58;P&(P?0<]#0!W%%>5MXT\4IX ;Q0\NFC^SKHV]U;+
M;L?M06?RF8-N_=\<@8/(Z\X'2:GX@U&ZUS5-)TG?%)I\,9:1;;SMTLBEE!&1
MA0 /<YZC'(!V%%>>_P#"3^+7U#PC93VEEIUUJ\=R+N">-G,,D2$[@0_*GA@O
M!Z#=67KOB'7YOA]XWMI[Z%+_ $>5H/M=O!L\V)D5A\I)VMA\9!/MSS0!ZM15
M/2DN(],MUN9TFDV#YTCV#&..,FJOB5]8B\/WDV@F ZE%&9(4GC+K(0,[, CD
M] <]: +]W96M_!Y%Y;0W$6<^7-&'7/T-/@@AMH4A@B2*)!A4C4*JCV Z5RVF
M>)9]=M/#4NF7,3?;XFN;LM%G;$BX< 9^5O,95[_Q=<5E_P#"6ZUJ'@:\\9Z6
M]M]E@,TT5C)$?WMO$[*VY\Y#D(S#' X&#UH ]!HKC=,\4W>J>,[2P@>/^S+[
M01JD):+$B,SJH!.<$8;.,=>]7?!&MWNO:/=7%_Y)F@O[BUS$A4,L<A4'!)YX
MH Z6BN,N=6\0W'C^^\.VEW86]NNFI>13M;,[(6D9<$;P&/R^PYZ&N>_X33Q2
M/ ">*I)=-465S]GNK58&/VD+/Y+,&W?)Z@8/3KS@ 'JE%<O#K.HO\1+_ ,/M
M)#]E72TO(7$7SH[2,F"<X(^7/05SUOX^OT\#:5K>I[88I[^:VOKRVMF=;:-'
ME57V9.,E$!)R!D\=* /22<=:*\S\4:IJMUX9T.YM-<M)H;G7K:(7%I&&2>(S
M#9GYN,8&X \D8X'%>C*EPMH$,T;7 3'F&/Y2WKMST]L_C0!-17F6E>,?$I\&
M-XNU*73FLH%N4DM(865Y9%E:.,ABQVC( (P>.<G/&W!J/BK_ (2&UM?(:;3K
MJ"037+V@B^QR@94@;_G0GC'4>M '57=E9ZA!Y-Y:P7,.<[)HPZY^AI]M:V]G
M L%K!%!"OW8XD"J/H!7D^C^(=?TCX/+XA&H0W5Q]L;*SV^=V^\9&)(8?WLC
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
M^X1\NW/0#D]]70)1=^/TUF?6XI[J?3Q9-;1:5/"AVLSY#.3CKWSGGIQ7HE%
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
M'Z1X/OM+\#7WAQM3MY6N!<!+@6Q4()F9FRN\YP7..14;>"[\Z?X3M1JEL/\
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
MLH2V6W"JPP6(!.7]#VYXYH YSQ,-6GA\"7]_?))]IUNTDEMDB 2-V1R AZX
MR#N)SP>.E>CZC_R#+O\ ZXO_ .@FN*'@+6I=.T33[KQ/'-!HU[%<VK_8,2,L
M88*LAWD$X(&0!WSDGCM;^WFN=/GMX)DBED0H)'CW@9&,[01G\Z /&](T/5?&
M/P0T#P[96(ACF*-)J$\B;8D64L6102Q;C&"!U/-===+M^.FE+DG&@2C)ZG]Z
M*Z'P=X>E\*>&;31'O5NTM5*QRB'RR023R-Q]:I7_ (5U&X\;P^)K;5K:&2&S
M:S2"6R:1=C-N))$JG.<?X4 8'Q+46/BSP-JUD-NIMJR69*\-) _WU/J!^F33
M=,GU.#XO>.#IEC;W;>18;EFNC#C]TV,81LYY]*ZBW\)"7Q'#K^LWS:C?6R,E
MH@C$4%L&^\43).X]V9B:;I/A:[TWQEK'B!]2BF&J+"DEN+4KL$:E5PV\^ISD
M?E0!L:/YSZ3:SW4"PWD\,<ER@7&)2@W9^F,?A7.'5=:\0R>(5T*[AM9-*G-I
M;))&&$\ZHK-YA()"98*-N#P3GL.QKC9_!>I6WB:^U;0?$+Z9#J15KZV:U68,
MX&-\98_(Q'J".^#TH DBUK4M5\3MX>69+">ST^*ZO98%$A\Z0X")O!&T8))(
MR<CIS7.77COQ!'H%T$^Q+JFFZY'I=RQB.R=6=0KKS\F0PSPV.<5U,WA%[?Q#
M:ZYHU\+6[CM!93K<1&9+B('*[L,IW@_Q9]C7+>/-&AT'P8%%XOVV^UVVNI[E
MU"[I6E7)"YX50  ,GA>2>30!J1ZKXGTSQS!X>U74+6Y@U:TFFLKJ"U\LV\L>
M"RE2QW+@@\G--T?Q/J][X8DM;BXC3Q/%J9TZ55B&Q7W9W!>Z>4"_O@\UNMI8
MM]5_X2?6[Z"0V%G(D1BA,<<,9PTCX+,22%'T Q[UD^'K72-?\;7GC#2I&FM'
MM8[=95R(YIANW. 0,E4*IN]V'8T =-KFK1^'_#M]JMP&E2RMWF8#@OM&<?4_
MUKD]2\1ZWH.BZ'XANKF*ZM;V6".^M1$%6%9L8:)A\WRD@88G/M7:ZCI]MJNF
M76GWD?F6UU$T,J^JL,'^=<Q:>"[G^R],T?4]52]TS398Y(4^S;)91'S&LC;B
M"%P,X49VCWR 9\%O>GXV7W_$P.U='A?;Y2_<\]_D_P#K]:M_%B6[M_AOJDMG
M=O;,HC5R@&71I%4KD] 0W:M.+PY=1^.;CQ(=1B*S6BV?V;[,>$5RP._?UR3V
M_"K/BOP^GBGPQ?:*]PUN+E0!,J[BC*P8''?E1Q0!RWB2#4%^(G@N&*\C-V;?
M4!]HEBR!\L?.P$9('N*B7Q5X@A\$>+[A[JUEU/0+F>%+AK?"S(B*X)0, &PV
M/3CH:WY?"^HW/B+0]9N=8BEFTR.9&7['M$OF@!NC_*!M&.ON35)O MT^C^*-
M/;5XL:_-)*[BS/[G>H0@#S.>%&/>@"#6O&$FDG0VU.ZFT[3;VSWR:E';AT6X
M.W:CD@A%(+'ISZC!KK]'EGGT6QEN;B"XG>!&DF@QY<C%1EEQ_"3R*R?[ U-(
M;>!=2M);=;);2>WN+(O%+C.'QYG!P<$<@_EB_P"'-#A\-^';+1[:1I(K6/8K
MOU)R23CMR3QVH YGQRNG:_=+X9U&61++[,]Q<F.-W^=@4A'R@]#N?ZQKZU/\
M,->EUGP7##>$G4=,=K"[!R"7CX#<\\KM/U)K<T32;O39]1GO+Z*[EO;CSRR6
MYBVC:%"_>;( 48Z=_6LBV\-W.@>*M<\41Z@'M;Z-7N-/BLR2QC7 93OY?&1T
MYSTH YY?&7B"[\*Z'KUG<0)<ZGJ@L9+"6V\Q8%:1DP "KEU"Y.6P>> .FD^H
M>+;_ ,:ZQH5GJNGVR6EM;7$<ILBWWRVY2I?OM/.>/3G-<EH5U+'9Q:CI7C7P
M_=:C*&F%E/IJ/>/(V28V*.)"W.TG:/IBO1]-\/7EOXOO?$4U[%_IUM%!):"
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
M_8=Q#<*WV,GSGC&T9'F< @\C]:Z35=.&KZ'>Z9-,T8N[9X'EBX*[E*DCTZT
M<9I7BG4_^$H\.Z=<7T=ZFJ6D[712$"**:-58B&0 !UR2O5N@YK,M-2OM&\/?
M$G4]-DA2ZM-7N)E,T9=3MAC.,9'/O^AK<L_ NIPWWAN[N?$0EDT2.2!%CL51
M9(F14QC<<-A1D\CT IS>!+IM&\4:<VL1;=?GDF=Q9G,.]0I 'F<\*,>] %2?
M6O%%KKOAB'^T+*2+78I$,;6I MW6+S X(;+]#D' /MV?9:_XC2#QAIIN+&\U
M+1GC^S74ZB"-EDC#CS #@;<GG(SCM6I<>$[RXO\ PU=G5(0VAAL+]D.)BT?E
MG_EI\ORGWY_*J&I?#V;5%\4++K(C_MUH'S%:X,#0[0O5SN!VC(.,\]* )=!\
M1W5QXZN=#-X]]8G3$OH;B6W\IMQD*$# 4,AX(('XFM?Q+>WMDEA]FN8+6VEN
M0EU<.09$3:2!$I!W.S!0!@]>AJC8^%-1A\7P^([S71<3_8/L4\26BQHX#EP5
M^8E1D\@Y/N.E6O$GANYUG4-'U&QU(6-YI<SR1F2#SHW#H48,NY><'@YXYH X
M+Q!XCU?5/A9XN<WLD4VFZB]D)A!Y<DT.Z/AU(^4D28. .G05ZQ:QS16ZI/.9
MY!G,A0+GGT'%<5)\.9)M#\3:5/KDLD6MW!N@YMU#0R'823@_-R@X&WC/UKLK
M"&Y@LHX[RZ%U< ?/*L8C#'V7)P/Q/UH XA?$VM:OX,U+Q;I5S%'':O</;63Q
M!DFBA9@=Y^\&;8Q&" ,C@]3$_B?7]=U_1[31;RTLK35M$;4(FFMC(\+?)C/S
M8;[V,<=>^*TH/ UQ8V.K:18:JL.BZE)([0-;[I8!)_K%C?<  <G&5.,]ZN)X
M1:W\5:9JUG>106NGV)L(K/[.3^Z)4_?W\$;1CC\Z +VMK.G@K44NI$EN%TZ4
M2R(NU6;RSD@<X!/:O/M,U?Q+X8\%^#]8-W9W&BR0V5K/8BW*O''(JJL@DW?,
MP)&1@#G'O7J5_:)J&GW-E(S+'<1-$Q7J P(./SKF+'P9<)I>D:1J>I17>FZ4
MT301QVQC:4Q#]WYA+L"!@'  R0.W! ,Z\\0^)=6M]7N?#EO*TMA>26MO!Y<1
MBG,3!7$C,X89.[&W&!CK4/B%-2NOB)X'<W+64LT-X_DE%?R&\E-PST;J1G\J
MT?\ A"-4L=?O[S0O$TNG6&I3&>[LS:K+B4_>>-F/R%OH>?P T-1\+7%WXDT+
M5;?4(X(]'25(H'MS(7$B!#N;>#P ,<?7- %&TU?5_$K>(&T>]CM/[+NWL;=&
MA5Q--&H+&3/.TLV %(/&<G.!BP>.-;U^+P5<:4]I9QZZ+B.=)8#(8I(T;)!W
M#(#*2!@9P.>:Z2'PI>:7K&K7FB:I':P:J_G7$$UL9?+FQ@R1D.N"1C(((R,^
MU0#P(EI/X8_LN]2VM= #^5%) 9#,70JQ9MPP2"3TZG\* *BZMXAGO;O04NI)
M;_3;:(W%Y:6T6))I Q7*2-@*% X'))/*XYZ7PU=:O>>';.?7K%;'5&0BX@1@
MRJP)&002,$ '&3C.*QM:\':A/XF_X2#0-=;2;V6%8+M7MA/%<(I.TE21AAD\
MY_KGI=.LS8V,=N]Q)<2+DO-)C=(Q)+,<<#))X' Z#B@#S?33J,ND_$E[O4I+
ME8KB[AVO&HZ6R8QCH .,?UI^@ZKK>C:?\/Q)=VTNFZG;PVC6JP8:/_1]RN'S
MDGY>1C'/XUT'_"%W43>)4MM9$=KKC/(87M0QBD>,(QW;AN&!D#C![FFMX*NS
M9>%K8:M"!X?=&1OLA_?;(S&,_O./E/OS^5 &=<>(_$^KZ??:EX;M)99+:\D@
MM[4I%Y,ZQR;&WLSA@3M8@C&..#UKOX7>2&-WC,;LH+(2"5..F17&1>!M3T[6
M;^71O$TUCI.H3M<7-C]F61ED;[YBD)^3=]#BNTC18HUC0850% ] * '4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 445D>*=;'ASPOJ.L>6)#:0EU0G 9N@!/IDB@#7HKCK9_%
MR^(;%2MU+I5Q%(M[)<"V0VS[<H\01B2">-K;L<<FLO2=;\0R^+KKPCJ&IJM]
M;3?:Q=I'$!-98&U53'#[B,^@!/ID ]%JEJ>IQZ5;QS2P7,PDF2$+;PF1@6.
M2!T49Y/:N0N+WQ1J?CK6] L=:M["WM[.">&868D="Y<8PQP?NC)/IP.<C(3Q
MMXBE\$V5[)+;P:E;:XFE7Y6'<LN)@C%<G"Y!]#[8H ]3HK@]1O?%%]X_U#P]
MIVM6]A NF1WD4ILQ*R,9&7&"><[>N?P[BCXD\4:WHMOJ%[_:,<DUIJ4,2VEM
M")(!;LZ)B5RN4D.XG ;CY>,<T >BM% TZ,Z1F8 E20-P'MW[_K5?3M3CU,71
MC@N8?LUP]NWVB$Q[RO5ES]Y3GAAUKD+=+Z3XRZE'_:MSY,>E0RI"50HH:1P5
MQMSCY0<YS[],48O'&JV7A?7+J\E@N+Z'Q ^DVC>5LC7+JBE@#G R6/.3TS0!
MZ517&7VK:MX>\7Z)IL]\U_8ZR)85>:) ]O.B[E(V!0R$9&#R,=:Y>7Q3XLB\
M"ZEXF;5K<MI>I2PFW6T4+<1K.(R&/5>#QCGU)SP >MT57OKN/3]/N;V;/E6\
M32OCKA02?Y5Y]>^*==L_AY:>.A=K(A6*ZN--\M/+\AV VJV-X=0P.2Q!(/'.
M  =QJ>LV^F210&.:XNYE=XK:W4-(ZH 6(!(&!D=3U('4BGZ1JUKK6DP:G:&3
M[/,I9?-0HPP2""#R"""*XJ_M[FX^,FE-%J=Q&CZ//(@$<9V+YD>5&5/!]^?>
MM;XG/<Q?#;79;6[EMI([5FWQ8R1W7)!P#[8/O0!KWOB*PL-;TO29C,;G4RXM
MRL1*':I8Y?IT'3.>E:U>:Z];WD?B#X>Q1WQDN3-<[9YXU.W-LW\*A0<#I^M/
MC\8:MHMCXJM[^X34;K2KZWMK:=HECW^>(]FY1A?E+^V0.W6@#T>J]]?6FF64
MM[?7$=O;0KNDED;:JCW-<YIDGBF+Q2L5Q#<SZ'+;DO+>?9UD@F!X"^4?F4CU
M&0>]8GQ)D>;Q5X$TR;_D'W.J&2=3]UWC ,:GUY)X]J .FG\9:79V+W]W'?VU
MDJ[OM$UE*J$?BN1GMN SD5MRV\%QCSH8Y,=-Z@X_.DN[6&^LYK2YC$D$\;1R
M(>C*1@C\JYB+5;S7?%FN:)97\FGQ:/' K211H[R2RJ7R=X(V@ < 9))YH ZP
M*JH$"@*!@*!QBA$5$"(H50,  8 KRT^-_$-UH.D212VMOJ"^(ET6_P#W&Y)"
M'(++D\ @#CKR<$5K6^L^)+'7/%&CFX35KFTTU+[3\PK$2[!QY9"]1N48[\]:
M .]JEI.I1ZQID-_%!<P)+G$=U$8I%P2.5/(Z?E7*^$_$G_"1S3K9:[))-%;;
M;BRO[58[BUGR.610I*]1]>YSQF:-XUU6]\&>%#--&=7UZZ>W-QY8"Q*K.68+
MTR%4  ]R"<\Y .U@\0V-QXDN-!3SOMUO;BX<-$5786V@@GKSGIQQ6K7F$]Y-
MX:^)/B/4KRZDOTL_#2W*;U57*K(YVG: .H/.!P1Z9K8L[OQA)J.C744,T]A=
M+_IZ3BW6.$,N5>+8V\@'LQ8D>] ';T5Y[X;O_%NM2:K=-K-F(],U6[M/LYM
M%N%080,V<H <'(R>N2> &:9XEU8>)O#-A+J?VV/5;6?[4ZP*(4FC16S X4;U
MR2,DL,8YSF@#OKFZCM;2XN"KR"!&=TB7>YP,X"CDG'0>XHL;M;^PM[Q(Y8TG
MC60),A1U!&<,IZ'U%>;^&9]7M/"WC748]8FFNK74;\1FYB1P3%T8@ '.% QG
M:.PK3LO%-_?IX,TL7'E7NL:=]MNKI47<JK$K'8"-H+,WH0 #QTP =Y17F^H^
M*==TI/&.DM=QR7FD6']HV5[) "9(BK':ZC"[@RD9 P1VJQ:ZUX@M=?\ "'VW
M4HKFUUV%UFMQ;J@B=8/,#*PY)X(.>.> * .PU.]L-#LKG5;M/+BB0O-+'"78
M*!DD[03@ 5FV7CCP_?36,27<T+:@ UF;FUE@6X!&1L9U 8D$< YYJ3QO_P B
M#XC_ .P7<_\ HIJX6#P]JOC#P-X&T];:.TL;-+.\FO'E!=@D8PL:CG)SU.,>
M] 'K%%<!=ZYXDUJ/6Y/#J7"SZ?>26EM&JVYAE>/&X2EV#\G(^7;@8ZTRYU+Q
M=J'C,:%;ZC;:29=#2^(^RK,;>8R!2N2</@@C.<8SQT( .U@U..?5KO3E@N5D
MMD1VE>$B)P^<!6Z,1CGTJ[7!CQ7J.DZ[XR75)X[JST73X+N%(H1&3E)&89R3
MD[1WQ[5#J7B'6]#\,Z+XIGO1=07+V_V^S\I B)-@9B(&[*EA]XG(]* .ZOKR
M+3[&>\G\SRH4+OY<9=L#T4 DU%H^J6VMZ/::I9[_ +-=Q++%O&#M(R,BN2DU
M74/$]MXK-E?M96VERS6$2+$C>;(D8+M)N!.W+;0%(. 3GGC2^&__ "37PY_V
M#XO_ $$4 =16/K7B;2_#TMG'J4D\;7DRP6^RWDD#R-T3*@\G'2MBN!^)W^O\
M%_\ 8S6G\GH ZW4-:M]/-O&8YIKJY#-!:Q*/,D"C+8!( P",Y(Z@=2!3M&U>
MUUW2H-2L_-$$V<"6,QNI!*D%3R"""*XW6[2ZE^,.A!-3N(@VG73(%2,^6 T0
M(&5/![YR?3%=;XBBU670;S^Q+D0:FL9>W9D5E9P,A2#V/3/:@#4HKC-%\1W'
MB.P\,O87DB2W,;3W^Z--RK&-LB$;?E;S2J\8X#>E9R>)-;UCP)J'C'3+Y81
MUQ-;6+1(T4D,+,"KG&_<P0G(8 9'''(!Z)17#Z3XGO-6\9Z9!%,R:9J?A[^T
MUA9%W1.70##8ST8\'/-:'@;5[[6-+U%]0F$TMMJES:(^P*2D;[5R!QG% '45
M2?4XX]9ATPP7)DEA:82B$F(!2!@OT#<]*XSQ1XKN=*\0W6FW>I2Z)'+ G]EW
MCP*UK-*0=PD=E.T@X&,KQSWK5FUC4H_B?9:/]HC.F3Z7+<^4(ANWJZ*"6SS]
MX],?C0!U=%>7WWB_7W\*:CKEI="&_M=8-BFF&%7!'FB,(1C>7*L'X8#VQ6Q=
MW_B-OB!;^'HM7MXK>71VN6E6S&X2+(J%@"3SR< \#/(- '<4QY$C!W'D*6V@
M9) ZX Y/;\ZYKP'K%_K&@W']IRI/>65_<63SH@02^6Y4-M' )&.E9<*7K_&B
M\C.J7/V>/2(IEAVIL ,K J/EZ':#GK[XP  =1H.OV7B/3VOK#S?)6:2$^;&4
M;<C;3P>1R.]3OJ<::S%IA@N3)+ TPE$),0"D#!?H&YZ5Y+8:EK>@?#[5->T_
M4(XH;+6K@M:& ,+A6NMK!F/(X;C;CIWSQWL^KZE%\4+/1OM$9TV?3);GRA$
MP=71<EN_4],?C0!U5%>?^&O%EQJNO0:=?:E+8ZQ%++]MT>[@5 R8?:86VY8
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
M#GIG/RXKT:@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *IZMI=K
MK6D7>F7J%[6ZB:*10<'!&.#V-7** .2T#PGJ^D+%%>^*;G4[>T4K9136R+Y9
MP54R,IW2$ ]R/7K@AE[X&DN[;2I$U7R=7L+MKO\ M);?+RLV0P(W?=88!'3"
M@#  QIQ>*K&\>4Z=;WE_!"Y22XM8=T88<$!B1OQWV;O3K5_2=7LM<L?MMA(T
MD'F/%ED*'<C%6!# $8(/44 <+9RW$WQCUV.RU6SBN!IEJCJ\7F!V!?.%#@@C
MZG@\]C6Q>> HIO#=IH]K?M"(KY;^:X>(.\\PD\PL>0!ENOMP,5U^T YP,^N*
M6@#GX?#EQ'XUE\1MJ",9;-;-K<6^!M5BP(;=UR3^'YU@WGPUFN=,U?3$\0W$
M5C?WWV](_LZ,8I3(LARQY9<KP./J:[ZJ4&I"?5KO3_LEW&;9(V,\D6(I=V>$
M;^(C'/ID4 9(\+3)XMCU^+5IED-FEI<QF)#YX1BRMG^'DG( Z=,5G+\/+>;0
M=;TC4+YIXM4OGO\ S(HO+>"9F#90Y/0J,?CG.:WM:\16>@RZ='=I<,=0NX[.
M$Q1[@)'.!N/0#_"M:@#GH/#MU+J-AJ&KZC%?76G1NMJ4MO*4.XVM(PW'<V..
M"!R>.>,>3X>2R^#-3\-OK \K4+I[EYA:_,I:3S& &_'WA^5=S10!%Y/FVA@N
MMDV]-DF%PKY&#QD\'TS7(VO@+R-!7PW+JAG\/)*'2V>#][Y8?>(C+NP4R,?=
MSCC-=B702",LN\@D+GD@8R<?B/SJII^I#4)+Q!:7=O\ 9;AH";B+8)< '>G]
MY#G@^QH R[CPW<3>-+;Q$FH(GV>U:T6W-OD%&8,26W=<J.WX5?\ $.C0^(?#
MU_H\\CQQ7D+0LZ=5R.HK2HH Y-_"%[->^'KR?6_.FT9G8%K4 2ED\LY 88&W
MI[\Y/2HI_ $%^?$T>I7IGM]>:-Y4CB\MH6C4*C(VX]-H/(ZC\*[!CM4M@M@9
MP.IKE!\1= \J^F?[>EO83M;W<QL92D$B]0Q"G&,CGIS0!8\/>'=5TQT?6/$E
MQK)@79;B2!(@G;<VWEVQQDGN>.:N>)?#5CXHTL65Z98VCD6>WN(6VR02K]UT
M/8BM2WN(;NVBN;>5)8)4#QR(V592,@@]Q4E &#;:5KIA%MJ6O17-OC#-!9>1
M-(/1GWD#/?:JGTQ4,WA:2W\3S:]HU\EE<W4"07<4L'FQ3!/N-@,I#*.,YQCM
M6O>:D+.]L;8VEW,;N1HQ)#%N2+"ELR'^$'& ?6KM ''W/@.-],TNRM+\PFRU
M,:K)+)"':XG#%B6P0 "6.0.V ,8J>X\)74^NZOJJ:OY,NHV LAY=O@PA=VUU
M.[[P+$UU-9.C>(K/7+K4K>U2X1].G%O-YT>S+;0W /.,$=0* *=OX9F7Q!_;
MUU>6\NII9&SCDBM3&NTL&)<;R6.5&.0!SZUC)\-DC\(:7HJ:O*EWI%Q]IL-0
MCA >-]Q;YE)(8?,01QD8KNZ* .0B\$S3Z]=:KK&KF^-YIO\ 9UQ;I;+%&Z98
MGN2/O>N>O.. GAWP9J6A^1:S^*+N_P!*M/\ CTLY8$4IC[@>0?,X7L..@]!7
M844 <KIO@PVFC^(-,N=1,\.M3W$\C1Q>6T33##!3N/ [9_6J=GX"O8+OP[<W
M'B.>:30T>*+;:QH'B9 FW'.#A1D\^P%=M10!R5OX+EM+/Q%9P:NXMM8EGF$;
MP*?(:;[YSD%N^.F,\YII\#;=/\.B#4C%J>@((K2\$&0\>P(R2)N^8,H&<$<\
MC%=?535-1ATG2[G4+A96AMHVE<1(7;:!DX H P+SP:;ZPUU9[Y3J&M6XMKBZ
M6#"I$%*A43=QPS'DGDGV )/"%Q)<^&9SJ:!M"!" 6W^NS'Y9S\_'R^G?GVK?
MTK48=7TBRU.W#K!=P)/&'&&"LH89 [X-6Z ,W7]+DUO0;[2X[D6XO('@>0Q[
MR$=2IP,CG!_^M2>'M*DT/0+'2GN1<K9PI!'((]A**H49&3S@=?TK3HH XR7P
M->V_B*]U+0_$MUI5MJ+B6]M$@257DQ@NA;[C$#DX/\JT(/"SVWC"+7HKX"./
M3QIRVIA)_=!MP.\MG=GOCIV[UT=9.O\ B*S\-VL%Q>I<,D]Q';KY,>[#.P49
M/0#)[T 9Z>$4?Q!KNHW=TEQ;:S;):SVAAV@1J&4 -N[AFSQ^55K/P3)'I6GZ
M+?:J;W2-/ECD@A:#;*PC.8TD?=AE4@=%7.T9[YZ^B@#CG\$7%MK&KW6DZV]E
M::OE[RT:W64>:5VF2-B1M)[Y!!_+%O1_"U]HFEZ#IUMKTYMM,!693;I_I2;<
M*I_N@'GC)K0T7Q%9Z[/J4-HEPC:?<_9IO.CV9?:&X!YQ@CKBM:@ KF_%7A>;
MQ+-I+KJ"VJZ;>QWT:^1O+R)G )W#Y>>G7WKI** .=NO#=U<^+[#Q!_:,:O9V
M[VX@^S$JP?!8D[\YRHQZ>]:6M:WIWA[2Y=2U6X%O9Q%0\I1FQD@#A03U(JOJ
MWB6PT>;2XYQ-(-3N4MK=X4W)O?D9;H!@$_A6P0",&@#DO!6C6=M/K.N6D,D4
M>L79GB60$8C ZA3]T.Q=_HXJ.'P*UG8ZII%EJIAT34I)'DM3!NDB$G^L6*3<
M JG)ZJ<9.*[&FJZ."496P2#@YP1U% ',W_A!FUO3-4T?43IDME:-8E! LJO;
MDJ0H!/RD%1@\_0U9\*^&3X8M;Z#^T);Q;J\EN_WB*NPNQ)'')^I_(5OT4 <U
MK7ABZUF+5K.74HSINIH$DMY;7S#%\H4F-MPP>,\@X.#CKD'A4P>*+#6H;S;%
M86)L8[8P[BT9*DDMN^]\H[5TM4-:U:WT+1[K5+M9FM[6-I9!#&7;:!DG'T%
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
MF9/('+9)X[\8KK8PXC42,K/CDJN ?PR?YTZH;NY2SM);F19&2)2Q6-"S$#T
MZT <;+\/)&\.:WH2:W(MCJ<\LH5K=281(^]@#D;CGH3T&>#UK4G\,7-SXAT+
M5Y-1CWZ3%+$(UML"42*JL2=_'"C'I[UJ:%K-KXAT.TU>R$@MKJ/S(Q( &Q[C
M)J:]OX+"TN+B7>XMX_,=(E+OMY_A'/8_E0!R6E> +K1KF6ULO$EW'X=DE:7^
MRO)0[=QR464_,$)[#MGGDFNWJAHNK6^O:+9ZK:"06]W$LL8D #;3TR 35^@
MHII=!((RR[R"0N>2!C)Q^(_.G4 %%%% !1110 45DZ;XBL]4UO5=)@CN%N=,
M\H3F6/:I\P$KMSR>%].XK6H ***R4\16<GBJ3PZ$N!>I:?;"S1XC,>X+P3U.
M3V'8T :U%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M;?8X[GR05F@P!LD3/(X!X(P>16QH^APZ4][<&0SWE_-YUU.R@;V"A0 .RA0
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
MP-B8N$#[QGY?E.XG.W'!QQ5[7?$.F^&[.*[U2:2*"698%9(7E.\YP,(">QH
MQ(?$JZI)8ZCI]]*=+ATPZA=@(A,@8?NU/RY!^60G!&-H'>L*[\2Z]!\-K?QW
M%?[WVI=S:<8T\EH68 Q@[=X8*?O;NH/&#@=)X)\.VNC:#<*EFUNNH7,MTUO(
M.8T=B5C(/3"XRO8DU6MO ,5OHI\/'499?#PE\Q;)XP7"[]_E>9GF/=VQG'&Z
M@!=+U;4+[QYK>E-?2_8DL+:YMQY<8:%I"^<';S]T?>S5GX>:O?:]X#TO4]2F
M$UW.LGF2! N[$C*.  !P!3[SPI)+XK.NV6K7%BTULMM=PQQHPF122I!(RI^8
MC([>G6K'A+PVGA/PY;:-'>S7<<&[:\JJ",L6(&!TR3UR?>@#CA;ZE<>/?'YT
MW57TZ2."Q?S8X4D8L(7*CYP1M]>,GL15^Q\1ZGJWAWPEJ$NH1VBZA;E[M;>/
M=<3R;!M$2;6&,Y+<< #D#-;4/A66#6M>U./4OWFL1QQR(8 1$(U*J5Y]"<YZ
MGTZ5F6GP\-A'H!L]<N8)]&ADM8YEA0^9"^,JP8$9X&&'Y&@#(T[QMJTOAG3H
M)IO^)I?:Y)I*W+QJ&1%=LR%1\I<*N,#C<1P1Q5ZQM;BT^-LB3WTUX&\/;D:9
M4#*/M R/E !&>>G>IC\,K0Z+/IYU>^W_ -HG4K.YP@>TF+%LKQ\W+'.>OM6E
M8>$KJW\51^(KW7;B[O%L?L3(((XT==^_H 2.<=\]><<4 =11110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%8WBP2GPAK!AN9K>1;.5UEA(#J0A/!QQT^OIB@!-7\3V6COI(DCGG35+J
M.U@E@ 9 S_=).>F 3QGI6U7D5W;W"?#WX;!;R1Y)-2TUHVF52(LPG  4+D#W
M.?>M2;Q-JGA6]\9P75_-JL6F:?#?6IN416#.'!0E%4%=R@].!F@#TFBN,LD\
M5)K^EW*333:7*C+J"W<D."2,H\6P9!SU&<8/KS5WQEKMQI":/:6C^5/JNI16
M(GV@^4K9+, >"V%(&<C)Z'&* .FHKAY]0U72/'<&@'49I[+5+&6:WEE1&DMI
MH\;L'&"I!'# X/MQ7)#7_%UO\,-+\>-K[SR0A)+JP-O&(YXS)L89 R&YSD$
M8P!W(![+17GBGQ'KGC/Q7HT'B6>QMK)+5[9HK:(NAD1VQDKRN1SW.!R.<T?#
MWC?5]<A\+:1=RBWU"_DO([VYA4 L+;(.S(P"QQDXXPV,<8 /4:;)(D,32RNJ
M1H"S,QP !W)KSC4->UO2KOQ?HG]HRN]CI)U73[QHT,B+ALQO\NUOF7@XSC.<
M]:R?%%MK<OPPBUB]\2WDWVR/3G-LD<:(C-)&&Y"Y((;H3U'IP #U^BN.>]U*
MR^)&EZ-_:EQ/97&FSS2)*D>2Z.@#95 >C'CI[5S&H^)?$,/@'Q3?Q:Q(+O3-
M>>S@E,,>3#YT:!2 N.CGD<^] 'K%4+'55N[6YN)[2YL4MY9(V^V*$RJ'_6#G
M[AZ@^E<Q;W6KZ=\2H]'N-8FO;2_TR2ZVRQ1KY$J2*OR;5'RX;HV3QU-<CKNH
MZKJ?P?\ %$M[JEP\]IJTUJ)$"(7C6=8PK +C&#VQGO0![)17$>([O5?#.L:!
M?R:S=3:&]Q]DU!)8X?E+Y$4A8("%W$*<8ZCWSNZ%/=7UWJ=\]W))8M<F&TB*
MJ%58_E=@0,G+A^I/ &.M &P9$618RZAW!*J3R0.N!^(IU<%J,%Q+\:--5=2N
MXX_['FD$:%"JXEC! !4\'C)Z\#D56M]:UCQ#X*U?Q/8:G):7%O+<M9VP1#$$
MA8@+(",DL%.3GC=QC% 'HU%9>@:P-:\,:=K+1&+[7:1W!CZ[=R@D>]<QH=UK
MWBCPWI/B6QUA;:2XN!/+;2(I@%MO(,7 SN"@?-G.X'H.  =W17#:?J&J>+8_
M$L]EJDVGOIU_-86:1(A4/$J_/(&4[MS$\=-N,<\UBV/BW7/$<G@*YMK]M/CU
MN*Z%W"D*, \49^9=P)'()&21TR#CD ]3J"\N#9V-Q<B":<PQM((85W/)@9VJ
M.Y/05Y]::OXE@TGQ=86L]QJU[I%_'';R%8Q.\+"-W PH4N%9\<<G'!Z5);^)
MO[2\)>)]1T77KLS65HTBP7<"K<6,J([%75EY!(')SW /% '?6=P;NR@N3!+
M9HUD,4R[7CR,[6'8CH:S=)\16NL:KJVG0P7$4VER)'-YRA0Q==P*\GC&.N.M
M<S:>(K[4)O!^B"[>*;4=+%_>W*A=[!43Y5R, LS$DXX XQG(PH=4N?"FH_$.
M[%PUU<)>V$4<LP7(,B(BEL8!VAQZ9V\]: /6Z*XR"W\5Q:\V+FX72)K5Q(UV
M\+RPSCE7CVC!!'53QZ5!\.)-=UCP_I7B'5-=EN1=6;![3R(U3?OX?(&<X!&.
MG/;% '<-(B,BLZJSG:@)P6."<#UX!/X5DZ+XCM=<O-4M8(+B*33;@6\WGJ%R
MQ4-D8)XP1UQ7->(X+B7XK^%DCU*[@CDM+QMD93:I4)R RD9.X@DY/IBL(QZF
MMQ\2;[3M7GT^2RN3<)Y,:-O=+96 ;>#\O'08/O0!Z;>:@UI>V-L+*[G%U(R&
M6% R084G,ASP#C Z\U=K@9_$&JS7_P /KB.[,4&L+F[MU1=KDVYD')&1SZ&H
M)?$UU;^+GTK6;Z]TBYDU%18.\2FSO+?<,1A]IPY7.<D'<1SCB@#T6LZZUS3[
M/7+#1IYPM]?)(\$?]X( 6_0_H?2M&O&_%\K:C97/B^QM;U]4TZ]2ZT]UM)#&
MUK#D%=X7&UPTCYST91VH ]DHKD?$_B>>+X>CQ!H9+).D,@F";S#"[+NDV\Y*
MJ2>>!CG@&JEC=ZI=?$&?3;'7)[C1$TU;EI%6*4).S%0F_:>J_.!GMZ'% '<T
M5Y-I/B#Q%;?#@^-+_79+EX8[B(VC6\:QNWGM&CL0 1M/H0, #CDGH6F\3Z1J
MJZB[7$^BI:3/>QWDD)<.J%D:+RQWP01TYR!0!W%%>>Z;=>+=3M_#VM64DC17
M1BEOXIY(1 T$BY/E@?,&7(VY//?-9DFH>)+CPYXXO1XDN8I=#O;G[*8X(?F6
M*)'"OE#E>W&#R22>@ /5:*\\&JZW:ZWX-O9=6DF@UW*7-D8D6&/,!D4QX&X$
M$=V.?:F/JGBCQ)I^IWN@230W=M?RV]JI>$6^(I-A$@.6.X D^F1CIR >C4V2
M1(E#2.J*6"@L<<DX ^I) _&N"6?7]4\?:CHK:Y/96HTN"Z"VT<1:)W9@0C,I
MR/EZD$^F*YR?4]4\0>"? 6H7FI7"74VNQ6\[0!5$A6210Y7:1G]V#CIGMTH
M]BKGKGQ=;0W;1P6%_>01W@L9[FUC5TAE..&&[=@;@"0I )^M;@B?[+Y/GR;]
MFWSL+OSC&[IC/?ICVKR32M7N?"/@KQKKJ7<US);ZW>0QQ3!/+,C3*@D;:H.<
MG) (&,\"@#V"BN'UJ^U7PKK7AQ_[2GO[/4[Q=.NHYT3(D=24E3:HVX*G(Z8[
M#K5?PDWB#6M4U::Y\1S_ &?2]<GMA +>+$T2HN%8A1C&1@C'?.<C !WTDB1*
M&D=44L%!8XY)P!^)('XUDQ>([67Q9-X<$%PMW%:"\,C*!&R%M@P<Y)SGMVKG
M?B9',\?ACRKVYMP^OVD;+"5 ;+9!((.2" 0#QGJ#52ZL+JZ^+[VD.J7%LW_"
M-QJ]U&B&9O\ 2&Y&5*@D]3M^F.H /1:*\QT?QAJ]SX:\.VLTSS:CJ&H7-E+<
MQJB.RP&3D!OE#,$4?B<<XKJ?#,?B*WU+5(=6<R:<61]/:=T:=01\ZOL&" >A
MZX/- '2T5R.L:O>W'C'_ (1VT^THL>GB\D:U>-)&W2%!R_0#:2<=21VR#@7U
M_P"--,T[PS!J&I1P7UQK:V,K)'&XFA9796< <-A1D*0/SH ]-JA?ZJMG9074
M%I<WZ321HHLU#G:Y W]1\H!R3Z5PDEWJ\4GCS0I];O+A+'3X[JUNF$:31[XY
M"RY50,93C ! /7O5?[9JFB?"KP?=6.K7"M,VFQR!XXSF.01J4'RY QWZ^] '
MJ5%<!J+^(-2^(NH:#:>(I["T&E17<;1V\3M&YE9<#*\C"\YR?3%5VU/Q1XCL
M-4NM!EGBN[6_EMK4%H1 ?*?81(I^8[L$GIC(QTR0#T>L-?%%M=7=Q;Z99WFI
MFV<Q3R6JH(XW'5=[LH9AW"Y([U)K=Q?1>#M1N8$"Z@NGR2(L9W8E$9( /?FL
M3X3) GPNT$VY!5X"[D=W+,7S[[LT =%I&MV>MQW3VGG#[+.;>99HFC99 JL1
MA@#T8?TXYK1KE?%^K-X?BL([#;!=ZWJL%FT^T'87&"^#P6V)@9XSCKC%5)K_
M %/1O'UAH+:A/<V&L6DSPO*J&2VFB )(.W!4AAPP.#[<4 =K17D%CK_B8> -
M \53Z_-+.^HI!/;>1$L4T;7)C.[Y<[L="" ,#CN=KQ#XFNM+\2WMCJU]>Z/;
MS/&-*U!8E:T?*KN21MIVL6W#)Q@8(QU(!W U!CK9TW[%=[1;^?\ :]@\@G=M
MV;L_?[XQTJIXD\16OAC2QJ%Y!<2PF5(CY"@E2[!03DC R16'/K=]8?$R^LY[
MR232H=!.H"WV+\CB4J2"!D\+W/<UR?B:?4-=^$EIXANM1E#7ES:3O:(%\E4:
MX3;&.,_+\IW9R2#V.  >P45PM]JFLZYK7B'3=*DNX'TSRX87MWA'[UHA('??
MDD98#'3 /7/%&YN_%LWB'PSI%UJXT^XU#3[DWHM8XW5)8PHWH2O4ENAR!Z4
M>D4UI$1T1G56<X4$\L<9X_"O-O$FHZYH^FZ[MU^:ZN],TZ.6W%I"F498RSR7
M&5VC>1PN?N]!GFGW+7>I?$;PA<'4;J#[3I,\[1Q%-BMB,G 93UW<DY/3!% '
M=VNH-<ZC?69LKN$6A0">5 (Y]RY_=G/..AZ<U=KSBX\7:EH5S\0KBZN&O8=%
M2W>SB=%4*7BW;3M R-S#D\X%6-8U/6/#5MX<U?\ M.6_BO;N"TOH)$3:PFX#
MQ[5!4J<8&<$'GGF@#OZ*\NGO?$=U!XZ9?$ES!_8LK/:&."'/RP"0*V5.5SZ
M'W[5Z!X?OY-4\-Z7J$P42W5I%.X7H&9 QQ^= &,WC[35N]4MC8ZH9-+(^V[+
M4N(<C<"=I.1CGC/%;^F:G9:SIL&HZ=<I<VDZ[XI4/##_ #QCM7GFB-JP^(/Q
M$32;:SFF>6T -U.T:J?(X)"HV1[<4_2K"Z\"Z?X8\$6D\L\URES///!L1FVD
M,53?P!F3KUPIZ$Y !Z75+4]0;3HH'6RN[OS9TA*VR!BFXXWMR,*.I/:O/->O
MO&F@^#M4N+C4#%)#?P"QF<1/*\$DJH4EP,9&3R,$UH^)6U_PW9:;(OB.XNC=
M:];1/OMXE_<R.H,?"].#@]><4 =_17'6^HW?B3Q9XBTJ+4+BP@T@0PH;<)O>
M21"Y<E@>!P .G!SGC&#I/CC5=6@T'19Y5M]4O-1N[&ZNXD&"ML"79 <@,WRC
MN!EL=J .WLO$5K?>)-1T-(+A+FPCCED>10$8/G&TYR?NGL*V*X'PU:RVGQ9\
M41R7<MR/L%F4:;&Y5S)\N0!G!SSUKOJ *U_>+I]A-=O%+*D*%W6( MM R2 2
M,\5S\'CJQN-#36H=.U5]->/S1.MN"-G][ .<?A6WK?\ R =1_P"O67_T$UP?
MPW&OMX%\*+&EB=+,8$^"QE,>U\<$8^]MS[4 >E45Q=CJ%_XKU;Q+;VVISZ<F
MF7/V*W$"H3Y@0,9'W*=PRV .F!ZFN<MO%WB#7=+\%W,5]]@GU&^FL;Y(X496
M:,2 NNX$CE,@=,]0<4 >KUC>(O$MGX;T&[UBXCFN+>T_UJVP#,/S( ZCO5K3
M+&[LM'CL[O4YKVY565KQXU1VR3@X VY ('3M7D)AG'P*\5S37]U<[KB[7;,5
M/(N"-V=N23WR?RH ]K1@Z*XZ, :=7"K>:MHWC[1+*?5IKRSU6RN'D@>)%2%X
M@A!CVC<!AB,$M]:H:?JOBSQ#H>E>(=(:17N)5FD@FDA%LUN6.Z/'WPP'\77(
M/;@ 'I-%8/C6\O-.\%:S?Z?<FVNK6SEGCD"*V"JDCA@1VKD)]1\3:'+X1UF;
M6WOK35[BWLKNQ>!%1#*ORNA W9!'.2<^PX !Z;17FRZKXJ\2:+/JWA]Y8[I;
MV1+:)WA%L8XY2A20'Y\E5))Z@GC J>=_$6K>/M6T6W\13:?;1Z?;W47E01.8
MW9V!4$KROR]^>G(YR =K:Z@UUJ-]:&QNX1:,@$\J 1S[ESF,YYQT/3FKM><7
M'B[4M"F^(5Q=7#7L6BK;M9Q.BJ%+Q;MIV@9&YASUP*LZQJ>K^&H?#>J_VG+?
MPWMW!:7T$B)M;SA@21[5!4JW;."#SSS0!V.KZG%HND7>I3Q32PVL32R+"NYM
MJC)P"1V%/TR_CU72;/485=8KN!)T5\;@K*& .._->?7VH7OBSP9XRU%-1GM8
M+7[9:6T$2KMV1(0Q?())<Y[\ C&#R>P\&_\ (C^'_P#L&V__ *+6@#;JAJFK
MV^E?9DD5Y;B[E\FW@CQOE?:6(&2 ,*I))(Z5PT&N:SKW@+4_%MAJ<EK<0/<R
MVMKL0Q".%F 1P1DE@AR<@@MQC%5]7N9O$.N_#?54O+JS&H>9,(HQ&?)+6K,<
M;D.3SCG(QT H [[1-7&M63S_ &*\LGCE:&2"[CV.K*><8)##T()!K2I$4JBJ
M6+$#!8XR??BEH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ J"]M(K^QN+.<$PW$31/@X.UA@_H:GHH
M XY? *?V/HFFOK=_)'H]S%<6SNL><Q#;&IPH&T _4]S5U_!UI<:UJVHWEQ+<
M)JMHMG<VSJHC,8!  P,@_,><]ZZ2B@#E/#G@EM DA237]4U&SM>+.UNF4K",
M8&2 "Q .!DX'ITQJ>(_#MGXFTQ;.[:6)HY4N()X2!)!*ARKJ2",CW'<UKT4
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
M4("CU)/:J7AS0DU'1?#EW>Z@][#80QRVT6Q0%E\O:&<C[S*"P'3'<$\CL:*
M.,3X>0V^L7ES8:WJ=GIU_*9[O3877RI';[Q!(W(&[[2/J*UK;PTEMXMN?$"W
MLQDN+=+9K?:OEA%)*XXSD$GOWK:>:.-XU=U5I6V("<;C@G ]\ G\#63I7B.'
M5M<UC2DM;B"?2FB64R[</YBEE*X)XP!UQUH J1>#+/[?X@N+NXENXM=54N[>
M15" *FP;< $?+[^]-L?!R00Z9:WNIW-_9Z5(LEG%,J@AE!"%V RY4'CIZG)
M-;-_?RV4MDD=A<W0N)Q"[0@8A!!.]\D?*,8X]:NT <;-\/HQ-K2V&LWUC8ZR
M)&N[.-8V0R.NUG4LI*Y[@'GVXQT>BZ6NBZ+9Z9'<37$=I"L*23;=Q51@9V@#
MH/2K]% ')KX%@@AU2QM-1N;?2=3D>2YLD"D OQ((VQE W<<XR<8JWJ7A2&^U
M/1;R&\EM!HY8VL$*)LY380<C.-O&!BNAHH !TYHHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ K.
MU]M27P_J#:.$;4A;O]E#D8,F/EZ\=?7CUK1JIJE@NJ:9<6+S30+,NWS86 =/
M=20<$?2@#SJ'QU#:Z-X@U"WFU&/4-.L-\NCZJ#YD,N3B3)Y9"2,X..!C&:W+
M>Q\3KKFG7$=\6TN:)X[\3W0<N2OR2180;6SV&!@]*U#X1LKF[N;K599-1FN+
M(Z>[3*JCR"<LN$ Y)Y)]N,55\.>!X?#TL6-9U:_M[8$6EM>3AH[<8QQ@ G )
M SG /% &'H^JZK]CUOPU>ZE<R:]!J(M8;DE0YAD^>.4 #'$8<D8P2A'>K5S>
M:MKFM^(-'T^XGA.E)##"\=R(V$CQ!Q(^5.[J!@\?*>.:Z8^'-//BI?$?EG[>
M+7[)G/RE=V[./49(SZ$BLO6/ MMJ7B#^W+/5=3TF_>,0W$EA*JBX0= X92"1
MV- &#+<>*?\ A)?".E:AK1MY[VRNA?K9JC(9(@HW(2O!.X]<@'H*V? -]?3Q
M:]87U[+>G3-6EM(9YL>8T85&4,0 "1N(SBKS>$+3^VM(U..\O(WTJ*2*"(,C
M*PDQO+EE+,3@$G.<\U/H7AN'0+C4YH;VZG.HW1NYEGV8$A !*[5&!A1QSTH
MP8KA[SXUSP2D^5I^B PJ>@:67YF'OA%'X5M^+;R73_#-T+(A+RZ(M;7'_/:5
M@BG\"VX_0U7U+2GL_&5GXGMXVD'V5K"]1!EO*+!T< ==K @CKAB>V#K7VEQ:
MC>:=<RR/ML9C.D8QM=RC("?H&)'OCTH P/&.E6]G\*=6T^W!2&RTMO(QP5,2
M;D/U!4&M?0M4>\\'Z;JUT#OFL(KF4 =S&&-5O%]G/K6ASZ#:[E?45\F64#Y8
M82<2,3Z[<@#J21V!(V[>VAM;2*UA0+!%&(T3L% P!^5 'D'B6XO/$?P4E\2W
M.H3K+=O%,;=&'DK&;A0L>W'88.[[V1UQQ75>*[V^2_U=(-3N"UOIGG6]K8?*
M]O)\Y,LK'"X.!A2><-A31)\+K Z+>:%%K.JP:)<2B5;"-X]D)WAR$8H6 R.F
M<<UH7/@6TN=6OK_^U-3B.H6JVU]%'(@6X"J55F.W((!/W2/YY .?O-=U:W\/
M^#?%\^H3+I\D=O\ VQ @4(5E0 2],@*[#(!Y!K5U&ZUVXT[Q!JFBO/<%9D@L
M[974;EC91.R$CAR?,49R,H".M0:A!::'X;B\"0VNIZI+=6#6]N\T)>/;C8/,
MD4!4"C![<#/4\]$?#=NGABUT*UN;BTBM5A$4T!42*8V5@?F!!R5YR#G)H R_
M!.NV6N2:BUG?7S>28TET_4%*SV3X;*MGD@\'.3T//&!G?$&S:?Q%X-87=S$'
MU4)MC8 +^ZD.X9'7M74Z;H,.GZG>ZH\TEQ?WB1QRS.JK\B9VJ H _B)]>?0
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
M.[1$LP78-WR8QMXP,>O7F@#F9/$VJ>&(O'-O)J$M^NDO:&TFO-I9/M"@'<0
M"JL<].E=%867B:U\4VLQN=VCRPNEU%=7(D?S ,J\>%&,\@C(&.@XJRW@C39[
MW7Y[R>YNH]<C2.[@E*;,(NU=NU000.^?>D\.>#4\/O&7UK5=22!=EK'?3!U@
M7&.  ,G'&3G R!C)H J?$&]U.P@T%M,U&2S>XUFUM90J*RNCM@YR,]NQ'>J6
MHC5_#VO^$['_ (2&^O8+S49DG%PL>9$\MW4$JH/!'T]JZ3Q%X;A\21V*3WMW
M;"RNX[R,V^SF1#E2=RMP#VI-7\-0ZQJ6DW\U]=Q2Z9*9H5B\O:S%2I+94YX)
M'&.M '*:WKUZNJ^+K:ZU*739K"UCET=$8+YN8R=X!_UI,@V;>1P!C)R:FHQ:
MM/>_#;^T;VX35)Y)GGDDCCWQ.UJQ90%4+D9(&0<=\]X[YUD\7:S+<ZSXHT&[
MDN%CBAM;1IHKB-%"K(A\IP<\G (QGIG-=+9>&+O5%T34=8U2_-[I<LLENWEQ
M1F16W*#*NT_,4(! Q] : .4U:YU$^%?B1HUQJU[<)I2;K>X=P)2CP"38S*!D
M9S^!QTKT;PW;FV\.Z>AGEFS;QMNE()&5'' '%9Q\$6,C^(C/>7LR:_&$NT<H
M N$V IA000OKFM?1M,_L?2X;'[9<W?E*%$URRER  !]T = .@]^I)H \YL;Z
M7PY>?$?6_M-W=-I\XD2&63*N?(4@-QT!..,8%:&KZEJWA_0O#OB*+4Y[PW-Q
M;17\$F#'.DV 2B@?(02,;>W7-=(G@ZP76-7OFGN9(=64"[L79?(<[/++8QNY
M7C&<=\9QB*P\%6UG;:?93:A>WEAILBRV=M<%"(ROW,L%#,$_AR>PSG H M^,
M)[JT\&ZS=V5U):W-M93312QJI(94+#A@1CBN/^WZUI.@:#?R:W=7=QX@>RM=
MDHC5+=FC9V*';P6"[><\G/-=[K.EIK6C7FF2SS0Q7<+0R/#MW;6&#C<".A]*
MRKWP7IVI>$(/#=[-=36UND:PW!=5FC*8V,K*  PQUQ]: ,R+2?%AGUFU_M1K
M:RN+;?I[O<"6>WG'!Y*_-&<@X.<?C4/A?6[KQ)HWAZ+[5<17\>\ZI\PW!H?D
M=&XXW2%2!_=!Q70Z!X=.B*SSZKJ&J7+*$%Q?2!F5/[J@  >I/4X&3P,2Z5X<
MT_1M3U:_LXRLVJ3B>?GC<% X^IRWU8T <=:ZKJOB3P7K7B2TU.>SO+>:Y-G$
MF/+C6$D*CJ1AMVW))Y&[C&*Q=8\9^1K/A'Q7-9.?.T&>=XD!(C+F'+'&2$7.
M20"<#.#7<_\ "#VD;:I%:7]Y:Z?JKM)=V4138S,,.5)4LFX=<'Z8-3S^#[&;
M7;'4Q//&ME:M:16BK'Y'E, &4@J200H[]J ,G5=0O/#_ (=TH0ZK)J%SJU]!
M:K>,RA0),MF/@@# (7.>H)W5?T&T\167B.\%[.KZ+- KP137'FS12@X8 [1E
M"#GDG!^M5HOAQI2^$YO#4][J%SIK/YD"RR)OM6SN!B95!&#TSGTZ5J^'_#9T
M3=)<:MJ.JW)7RUGOI S(G]U0  ,X!)ZG R>!0!SOC&UDN/B/X)5;V[A622\!
M6*3 !6!CN QC/)&3VK,-E>77C'XB-:ZK=:>T,=I(KVP4,S"V)&2P/''08SZU
MVVN^&K?7;W3+UKN[M+K3I6D@EMF4'#KM93N4C!'X^AJO%X/@@O\ 7+Q-3O\
MS=91$N,F,A J[%V?)U"\<YH YA_$6L7.@_#O4Q?R1OJEU;17L:*H6;=$S,3Q
MD<KT! YI^K^(KG3?%-Q9ZY<:AI<4UY%_9FH1C-F\?R9B?&0K$AP2W//!  K;
M'@*S72]!T]=4U$0Z',DUJ<Q;BR@JN[Y.0 2.W6K%]X/AU&*\M+O4;N73KRX$
M\UFX0KD,&VJ=NY5)4$C/K@C- '24444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10!DZAXCT[3-=TK1KF7;>:F9!;KV.Q<G/IZ#U-:U>1>+8+SQ!I6IZ]8:7?/J
M%M=1W.DW2*A01VY."/FR0Y,K=.0R]<5U.N>*+R^^%4GB3PZ&,\UK',FQ0[1*
M6'F$#NR+O_%: .THK@K%[R\\?)#H^M7TN@#3?.F9)%F1;@MA1OD5CDKDE01C
M /?G TO4]9L_ %_XPN=>U"[N=.:^2.VD*^3)B1D0R +D[2 >".!C'J >N45P
MR6OB/3]5L=7COHGTL02&_AEOWG-S\N4>(&,!&SV7 (/2L_23XJUW1M \26-_
M;1/,T=S>>;?N89(6'SQB+R]JD9P"#D$<D]: /2:*\L9M8OK/QZ7\1:FC:3<2
M-:-$ZH5*P*X!PO*Y[# .3G/:9=0U> ^ ]<?6+N636I(8;RV8J("LD!?Y4 X(
M(&#UH ]-HKS83>)?%UCJ]UHUY':7MMJ,UM:NUZZ)#Y4FW:\0C*MN R=V3\W&
M.*FC&K:M\0K_ $FXUZ\AM#H\%R4LI%4)(SL#Y;;<A?ESGJ?7'% '?S3Q6Z!Y
MI%12ZH"QQEF(51]22!^-%Q*T%O)*D+S,BDB./&YO89('YD5X[)=7NO>!/ 5[
MJ-]<R73>(([:21)2GF!994#$#JV(U.?7->Q+&(K81AF8(FW<[98X'4GN: ,W
MPSKT/B?PY9:U!"\,5VA=(Y""RC)'./I6M7AFEKJ^A?!;1_%FFZY>K-81H_V
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
MJ.UM+A)C+-;VSY8AF9!E_E*JQ!ZY[4 =@GB.-O&;>&C9SI,+$WHG8KL=-X3
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
MY[;<^:XQCIMXZ=,Y/>@#LM6O+C3]+GNK6PFOYXP"MM"RAY.0."Q ]_PJZ#D
MXQ[5R'Q/O+[3?AYJM]IU]-9W,"HRR0XSRZ@C)!QP>V#5'QGK%YHNL+<7\.IG
MP\;, W>F.=]G/N;,DB*<LNW;@G(&#P<T =[15+2)DN-%L9H[L7:/;QLMPO24
M%1\WX]?QJ[0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 56U"S.H6$]H+F>V\Y"AE@(#J#UP2
M#@^^*LT4 4K#3ET[2(-.AGE*00B&.1@F\*!@=%"\#';M7#:MX2A\+> I]&TT
M:U?:?<72&6.!U::V0N&=X@J@GI]T9Y/0C(/HU% 'GGA^VN9=4MI=(\1>*KJW
M#$7*ZM;[(U3:>GF1*2^<8VY]^*Z32/".GZ1H5WHOF7%Y8732-)'=%6SYA)<?
M*HX))_I6_10!RWAWP+9>')8S%J6K7D$ (M;:\NO,BM@1CY%P.Q(&<X!('6H=
M*^'6E:-?F6SOM46P$WGII9NO]$1\YR$QG /.,XSVKHK2[NY[^^@GT][>"!U$
M%PTBL+@%<D@#E<'CFKM '-Q^#+2*+78UU"_QK3,UT2T><E=AV_)Q\HQ_]?FF
MOX)LWLM"M3J&H"/1'1[3#1YRB[5W?)SA21_]>NFILC%(V94:1@"0BXRWL,X'
MYT <G<?#S3)=>NM4M[_5;$7K;[VTM+HQP7+=RZ@9R>^",_B:TH_"]O#XDN-<
MAO+N.YFMEM2B^7Y:QJ25"C9V))ZT[PIXA3Q3X>AU9+5[599)4\IV#,NR1DY(
MX_AS6U0!R2?#W3(_#5IH:WNH""SO!>VLPD02PRAR^0=N#RS=0>M=3%"(;=(0
MSN%4+N=BS'W)/4TCW,*7,=NTBB:569$SRP7&3^&1^8J6@#E]/\"Z=I]A;Z8+
MN]GTFVE$L%A,Z&)"&W*"0H=@&Y 9B,XZX%5-8^S^,-:@T.;1;[R=,OX[J:ZN
M;<I"=@)7RV)^?<2%(_NEO;/9T4 %9>I:!I^JZGI>H7<6^XTR5I;<YX!9<'/J
M.A^J@]JKZSXC&CZWHNFM92RC5)V@6<.H6,A2W(ZDX7TQ[UN4 9>G>'[#2M2U
M6_M(S'<:G*LMPW'+*H48_(GZDU!H?AJ#0$U%;6^O)/M]S)=RF8H2LK_>9<*,
M=N#D>U;=<U=>*YOM%XNEZ1-J<-A=):WAAD D5R%8[$(^<*'7/([]<&@"%/A_
MI:>$6\-F[OVL_/\ M$<AD42Q2>9YF58*!][GD'K5R?PE9W&JZ=J;7FH+>6,3
M0^8L^#.C$%ED..1D \8_+BM^B@#D!\.M*CUJZO[>^U2VM[R4S76G076VUG<]
M2R8SSW (!Z'CBM*+PM!!K>J:M%J%ZESJ4:1S#,950@(7:"G& 3Z]><UNTC,J
M*69@JJ,DDX % &9X=T&W\,Z';:19S3RVUL"L1G*EE7.<9 &:H)X.M8Y]=F74
M+_?K0 NN8^,+L&WY./EX[_GS3]4\50Z=?Z#!':R7$.L3"**Y5U")E"X)'4Y
M]/QKH* .8'@;3TLM&AAN[V*YT9?+L;Q&3S8TV[2A^7:RD  @@]/6K9\*:=)I
MFJV5P9K@ZLK+>SR,/,ERFP<@ #"X    _.MRB@#F)O!%I/I^DV<NJ:FZZ7<I
M=02-*C.9$&%+93& #C  'KSS3-0\!:?>^()=:@U#5-.N;E%2[%A<^4MT%&!O
M&,Y XR"#7544 <MK7@/3-7O+&^@N;_2KZRA^SQ7.FS>4_D_\\SD$%?;%;^G:
M?#I=A':6YD9$SEY7+N[$Y+,QY))))/O5JJ4UW=QZO:VL>GO+:2QNTMV)%"PL
M,;5*GD[LGITQ0!FQ^$--36-5U O<NNJ*!=VCR9@<[-F=N,Y*\')Q[9J+3_!=
ME8P6%JU[?75CI\@EL[2X=&2%ESLY"AFVY^7<3CCT&.DHH KWUK]NL9K7SY81
M*A0O%MW '@XW C]*RY?">FW6FZ58WPDO$TN:*>V>;;N5HQA<X !X]N:TI+U3
M;WC6BBZGMMRF%& )D"A@F3P"05_.G6$\]SI]O/<VK6L\D:O);LX8Q,1DJ2.#
M@\9% &3<^%;>Y\66WB-KZ]6\MH6@C13'Y81CDC!3)SZYS48\(6K&)+B^O;FU
MAO?MT=M,R%$EWEQ@A0V QR!GT'3BNBHH S]/TH:?=W]P+V\N/MDWG%+B7>L/
M &V,?PKQTJAKWA.W\0:AIU[/J%];RZ=(9K;[.8P%<C&X[D.>/7BM^B@#!7PG
M8RZK;:GJ,]UJ=W:G-LUVZE83_>5%"H&_VL9]ZDD\-P/XJ'B(7EVEX+0V812G
MEB,MNQ@KG.[G.?TXJIJ/BJ:"ZU&#2M)EU1],:-;R.&0+("XW8C4CYR%()&5Z
MC&3Q7037,-ND;32",2.L:[N[,< ?6@#'\/\ A:V\.7.HS6M[>3'4+EKJ=9V0
M@RMC+#"C'0<=*35/"EIJ>OVNM?:[ZTO8(6MRUK,$$L1.XHW!XSSD8/O3K+Q&
M+SQ=J6@&REA>Q@CG\YW4B0.6 P!G ^4]>?:MR@#CU^'&E1^'!H4=]J:V2W7V
MI1YRL58/Y@ RIX#'/J>Y-:@\,PCQ.?$'V^]-Z;,61&8]GE[MW39UW<Y_IQ6Y
M10!R+?#W3G\+WWAY]0U%K&]G:>;YX]Y9FWM@[. 6YJ:Y\#6%UJMUJ#W^I+)>
MVRVUZD<X1+E5!"EP%!! )^Z0/;K7444 <<G@U].;PY;Z7J>KK#I1VG?=#RY(
ML %9%Q\QVKM4  #)/7J[XH))-\-];MH(99IYX/+BBBC+L[$C@  FNOHH Y[3
M-!MYCIVI3WMY>26L)%I]I"CR2R[2V H);'&6R<9]3F71?"UGHEMJ-LD]Q=0:
MA/)<3QW6Q@7D^_T4<'TZ5N44 <S8>"+"QMK2Q^V7L^FV4PFM;&=U:.)E.4&=
MN]@IY 9CC ]!C2U?P_I^N7&FSWT6^33KH75N1QAP".?;G./4"JUQXG@CTN[U
M&WM+B\MH'\F(6Z[GN9 VTK&O<!N,Y X/89K-T[QS+>Z[9Z3<>%]:T^6[$ACD
MNTC5,(N23AR?0=.I% &MKOARWU^;3I;BZNH3I]RMW"("@'F*" 3N4YX)X]ZI
M7'@FR?7KO5[2_P!0L);Y E[%:RJL=S@8!8%20V.-RD&MC3M4BU W$04Q75J_
MEW$#?>C;&0?=2""#W'H00+U '&R?#31G\.Z7I"76HQ-I;;[*]BN-MQ 3UVMC
M&#Z8Q5JZ\!Z5?>'CI-[<7]RQF6X^W2W!-R)E^[('QP0.!@8QVJYIWB,:AXIU
M?0S92POIL<,AE=U(E$F[! &<#Y>_//05N4 <W8>#H+/Q!%KLVJZG>ZA':_9/
M,N)5PT>[=RJ*HZX_+N:O>(?#UIXDL8;:ZEN(3!<1W4,UNX5XY$.58$@C\P:U
MJ* ,&+PK!!XB.N)J%_\ :_L8LOF=&7RP=PZKDG<2<D_IQ68GPXTR+3K*UAU'
M4XGL;Q[RVN4E02QN^2X!V8*MN.00:[&B@#E!\/M'^RZ[;//?RPZT/])22Y+
M-M ++G^+Y0<G/3C XKH--L1IMA%:BYN+G8,&:Y?<[>Y. /R JW10!SJ^$+5C
M"EQ?WMS:P7GVZ*VF9"B2[BXP0H; 8Y SZ=N*J7OP_P!.O9]:/V_4H;;6%;[7
M:0S*L3.4V&0#;G=@#C.#CD&NMHH Y+4/A]IE['I317VIV5[ID7D6]]:W&V?R
M\8*,2"&'L15F[\%V-W;Z7";R_0:;="\B<2*SR3#/SNSJ2Q^9O;GV%=&S*BEF
M(50,DDX %9]WJ4ZVUC<:=8MJ$5U-&K-'(J>7$W)E^;J ,<#DYH KV7ARWL?$
MFH:XEW=/<WR)',CE/+VIG;@!01C)[]^:-5\.6^KZOI>I2W=U%-IKM) L10+N
M92I)!4D\$CK6S10!S?\ PA.F23ZZ]W)<WD>MA1>0SE=AVKM4KM4$$ #OVSUY
MJ:P\+06DUA+<W][J!T]2MG]K9#Y.1MS\JJ6;;QELG!/J:WJ* .<A\&6-L=:%
MO>W\4>KO))-$LJE$>0 .R J<$X[YQVQ56[^'NE7>@:5I375_&VD[?L%[%*$N
M(,#  8+C&  <CG%=;10!S5UX&TG4/#DVBW\EY=K,XE>[FG)N#*,;7#]B, #
M QQCK5O0/#<6@HY;4=1U*X<!3<:A/YKA1T4<  ?09/?.!6G>336]C<36]NUS
M-'&S1P*P4R,!D*">!D\9-+9RRSV5O-<6[6TTD:M) S!C&Q&2I(X.#QD4 9FK
M^'+?6=3TR_FN[J*7393- L)0+N(*DME23P2*K3>$+6Z6:"YOKV>QEN_MC6<C
M(8]_F>9@';N"[P#C=_,YZ*L/4O$8TWQ1HFB-92O_ &J9@EP'4(ACC+D8ZD\>
M@'/6@#4O[&VU/3[BQO85FMKB-HI8VZ,I&"*Y6'X<V4<.EP2ZSK,\&E7"SV4<
MEPO[K:" N0@)&#W)(Q@$#.>RI&8(C,>@&30!R4_P\TR37;K5+>_U6R%ZV^]M
M+2Z,<%RW<NN,Y/?!&?Q-:9\,VW_"4IX@2ZNDN4M/L:Q+L\H1;MV,;<]0#G/Z
M5CS^/Y+4Z0MQX9U6)]6D$=HK/!EF*[L$>9\O'K4FH>.9--BB-UH%_!(^HP6+
M++)%A?-(VR95FRO)Z=P0<4 :^@>'+?PZM\+:ZNIA>W3W<OGE3B1^6(VJ, ^E
M2:+X?T_0!?#3XO+%[=/=S9_OOUQZ#VK4JEI-W=WVG1W%]I[Z?<,S!K=Y%D*@
M,0#E>.0 ?QH YW3_ (=:5I>IR7%G>ZI%8R3>>=+6ZQ:>9G.=F,XSSMSCVQQ6
MKI/AN#2-8U34XKR[EEU)UDN$E*%-RKM! "@C  '6MJHKJYAL[2:ZN)!'!"C2
M2.>BJ!DG\A0!RNG?#K2M*U)Y[.]U2.Q:;S_[*%U_H@DSG(3&<9YQG'M3[CP!
MI\M[JT]MJ&I6,.K*WVZUMI5$4K,,%\%258]RI&>];'AW7;3Q-X?LM9L2WV>Z
MCWJ&ZJ<X*GW!!'X5J4 4=&TJ#0]'M-,MI)G@M8EBC,S[FVJ,#)^@K+C\(6H-
MHEQ?7MU;6=U]K@MYV0JD@)*G(4,0I8D GCCL*Z*B@#F6\$6"R:FMM>7MK9:H
M[27EE"ZB*5F&'(RI9=PZ[6&?:NCAACMX(X846.*-0B(HP%4#  'I3Z* .3D^
M'^F/IVLZ>M[J,=IJTLDL\*S+M0R'+A 5.,GUR1V(R:N2>$[>74]%U"34+YI]
M(1TM^8\$.H5MPV<Y  [>U=!10!Q4?PQTB+3[:P34=76UM+Q;RSB%R +9PQ;"
M?+TR3UR1V(K:MO"]G9^);K78+B\2>[2-9X?._=2%%VJQ&,DA3CKCOC/-;=%
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
MX01:P75VTL5J",'RU/ X)&3DX)'<U9T_PCI^GIJL7F7%S!JLKRWD-P59)'<
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
MM>6=M?&[2=(& #!8=P/3KR>3G'!'(KHK+P[;6/B"_P!:CN+EKJ_5$G#LI0A
M0F !Q@$_GSFN:\96L]YX\\'-%'J*16TETTUU:V[L(=T6$RVTKR>,'CUH YVX
MU[6?!LOBW2?[4N;ZVM#926EW?2[Y+=;B38P9R#D+R1D'&.AKJ8]&\06FMO<#
M4_LVEW%H\4EN=1ENI/. )62(RI\IP#D#C'.,UM?\(II4MAJ=I>1->C5/^/V2
MX(+S8&!DJ    ,!0,=1SS5/1? ]CH<,D<&HZM<$Q&&%[N[,QMT/58PPPO0=L
M\"@#C]"@U2X^$S>*)O$FL-J#:),VW[0#&&4,RN%(/S?+C=G."?;&E9ZW=WUY
MX'T*>ZN$BO\ 2/MMU,LK+)<.L:87>#N'+%C@Y.!VSGIK3PC8V7A%_#$-Q=C3
MFA: 9=2ZQMG*AL=.3SUYZ]*9-X-TV73])MO-NDFTC L+M' FA 7;@'&""H (
M((/?- '$:SXLU;P@?&6GQW,MQ#9):2V%Q<L9&M_M#;"&9N6"G+#=D\8)-:FL
M:2FG?$SP&T=W>S;FO5?[3<O*&(MF^8;B=IZ],#VXKJ6\)Z5<:=J5G>Q->C4\
M?;99R-\V!A<E0 , # 4 #J.:H6O@#3H+K2KF74=7NI-*+?9#/=D[ R[<?*!D
M8XYY/<F@#JZ*S]+TF+2C>F*YNYOM=R]RWVB8R;"V/E3/W5&.!VK0H X'Q_\
M\C9X#_["Q_\ 19J;XHJS:%I*HY1CK=B X .T^:.>:W-:\+VFNZCIU]<W-VDN
MG2^=;")U"H_3)!4YX['BI=>\/6WB&VMK>\GN$2WG2Y3R6529$.5)X/0\XZ4
M<YI0N]/^)6J:$-5U"XLY])BO1]IF\QHI3(Z$H3]T$ ' XSVK&T74?$=U\*]'
MO[9KK5;E;^8WD8N3'<7,"RR@JCY!W#"' (R%(]J[D>&[=?$<FO"\NQ?26HM"
MV4V^6"6 V[<9#$G/].*J67@JQTW2++3;*^U""*RN6N;=UE4NCMOW#)7# ^8W
M!!ZT )X'U:QUC2KJXL;J^E1;IE>"_P!WGVC +F)MQ)XZ]>]'BRXDG>PT:"SG
MO/M4GG744!0-]GC(+??91AF*(1GD,WI6MI6CVVDBZ,)>2:[F,]Q-(1OE<@#)
MP !PH&  .*9#HL<.O7&KBZNGGGB6%HW93&$4DJ ,9&"Q/7G/.: .)\"7$FA>
M-->\+7%G/96]TQU;389RA(1SB51L9EP'Z#/0FH=:U'5)'\9P37E];:K;;3HL
M-K(ZAU\L&/:J\2%GW!L@X]A78ZIX3L]6\0:?K<MS>17NGAEMVA=5"AOO C:=
MP/H<UPTEEYWB#5I+U?&VE7EQ>,P32C*UM*H 1'#*&0$JJDYQCIT% %W4K?65
M\1>"=)GUS4X#?6MV+X1S $NL2MP0.H+$ \XP,<\T^*/4]2U?6O#4%_=2C1[>
MW@BGEU.2"<L\>_SF,:?O#DXYX^3IR<[MAX5EN&T74M6O[Z34],$H@9GCR%<D
M8DVKAFV;58],@D>M2:WX%TS6]9BUC[3J.GZBD?E/<:==&!I8\YVOCJ/U]^E
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
M;6C3DP3Q2%$,?E?=_BX(&>.I/-=(;Z33/'WCO4(H_,DM='MID0_Q%5F('Z4
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
MK:SP6T]R9C"723=@DG&=H) ) /2@"V?'Y_X0S1/$:Z4[1ZG/#$8O/'[GS'V
MDXYZ]A787,KPVTDL4)F=5)6,, 6/ID\"O'X_^2%^#O\ K]L/_1XKV.3_ %;_
M $- &1X4UX>*/"]AK2VYMUNXRXB+[BHR1UP,]*V:\*T^SOM(^"FC>+--UC4H
M]0L8XWCMQ.?L\J&;:8C$/E.<]<9SWKL)&U/Q=J/BFQ@N#;SV%P+6V9+^6!K;
M]TK+)L08;+%CDGD#'3J >BT5Y_I=W=ZOXK/AW6-1,QLM'AF8VDS0BZE9F5Y<
MJ0<#: !T!8^V(VFO=/UWPGX/NM:N;Z*9;M[F]W&.6X,0RD993G@-\V#D[1GJ
M10!Z)17EFJ7>I:7/XZT2#4+W[)::1_:5E-Y[&2V<H^4$A.[!*9 )XY'2DE@O
M+:?P%=1:UJJS:JJV]X3=,RR(;<MPARJD$<, #W))YH ]4HKRBYUF^\)+\08+
M2\NIH--2TEM/M<[3M 9EPY#/DD _-@YZ5TMAH^JVOB;3M2AU&.'398GBN+9[
M^6Z^U$KN1TW@!6&"21U&?2@#LJ*** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ J&[M
M8+ZSGM+F,203QM%(AZ,K#!'Y&IJ* ,+3O">GZ=]B4275S%8?\>45S,9%M^-H
MV^I X!;) S@C-4KKX>:#=:[/J^V[AEN2#=PV]T\<-T1_ST0'#>XZ'OG)KJJY
M>;Q1J%S<WPT32%U&'3[U;.Z'VD1R%L*7* C!VAQU(S@^G( _5_ VC:QK,>K.
M;RTOA&(9);&Z> S1C^!]A&1^M6KWPKIEY)I\T:26ESIRE+2>U;8\2$8*=P5(
M X((JEIGBC4-9>PO=.TA;C1;N>6$W*W($D01F7S"A&"I*GHQ."..PZB@#G[W
MP;I%_H-UHTZSFUO)?.NF$I$D[Y!RS=>H7IC@ #@8J>;PU:7&M6&KRSW3WEC&
MT<#F3@*V-P(Q@YP,_2MFLZ?4GGTB[NM&BCO[B'S(XX3+Y:O*A*E-Q''S C-
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
MVR,H^:XC!R <'\>G:G:U$VG?$/P/;6MS=I;RM>K)"US(Z/B L"P8G)!)Y/\
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
M@*D[0G\.,=@>O7'\57L\6D:WJ^FWUW=3VFLQ*+\S&);?][&AMXT!.]1DAL@
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
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH *BN7FCMI'MXTDE495'<H#]2 <?E4M-D_P!4_P#NF@#C- \9ZSXB\+0>
M(;+PW$]K,'*0+J'[\A6*G"F,+G*G^*M[PWXDT_Q5I"ZCIS2! [12Q2KMDAD7
M[R.O9A7-?!H@?"30R2  LV2?^NTE<?H<L$EOXQU,7EU;:7JWB&*&Q-H!NO'#
MX94)(&)#\I;(&,Y/!H ]K=UC1G=@JJ,EB< "H;*\@U&PM[VU?S+>XC66)_[R
ML,@_D:\O$+FZ^(VDW-ND%DFF0SQV44Q>*)FBDR5X &=JD@#&1WI;*?[!X=^'
M>DPO';VNK6Z-<-*6*2R"W4JC8(X8GIG!*@<@D$ [SQ5K-]H&A2ZE8Z4VIM"=
MTL*SK$5C )9\MUP!T[U6/B#5#XFGTE=#9(C9_:;2ZDN%"SE2@=&4 E"-X )S
MG!J#PUX=DTB]U:UNM0AO+666*YM[#RSML^OW=S-P67('&"#BNG6&)9GF6-!*
MX 9PHRP'0$^V3^= %72=4MM9TY+RU+!&+(Z.,-&ZDJR,.S @@_2KM<+X$D=/
M%7CFU!_T:/55D3T#O$I?]0/SKNJ "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ JCK"7,
MFF2QVELMS*^%\LW36^1W^=02/PJ]10!YU;>$[FSTQ=,@\)P+IZY M#XEN3#@
MG)!0IM()).,8YJ_J6E:EJNBIH]UX.TK[!&5,<,6K-$(RIRI0I""I'MBNVHH
MX&U\/7EG?3WL/@[3OM%Q +>9Y-:E?S4 (^;=$=S8)&X\X)YJ&3PG++X<&@2^
M"M-DTY6#)')K<K,A' *N8MRX' P>!QTKT2B@#FO".E3Z+;26?]B6^GP'Y]Z:
M@]T\K]/F9T!Z =2?2NAGD>*!WCA:9P/EC4@%C]3Q4E% '+VO@JQE\.7^F:N@
MN3JERUY?^6[('E9@V%((.U=JJ/9>>IKIP   .@I:* "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
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
MC<S;]@!)&/FR<^QQYW<:!K]YX#\<V/\ 8T\=W>ZP][;1ET/FIYD387GKA&[
M'C!-:?B"#44\5:?XI/A6?5-/GL?L=S8-'&]Q;D2%TD"DX.=Q! /'>@#H[/QU
MI-_I%M?6RW#RW-TUG'9; )_/7.Z,@G *@$DYP ,YK$\*S--\5O%A>UN;5A:6
M>Z*=PW)\SE2&(P>.A_ 56U?3=6BN_#7B?3_#OE1Z;=3O-I-NJ"80S1B,N0#M
M,@QG /<#/!-:7A]-1F^)&MZK+H][;6-Y96R133A%^9-^01NS_$.WUQ0!I^*[
MW2+>\T"+5;*YG:;4XELWBR%CN,-M+$,.,;N.?I3+KQM!#K.I:1;Z1JMY?6$2
M2O'!$OSJV<%2S ?P]\9[9JMX\M;R\G\,_9+.XN1:ZS#=SF),^7$JN"Q_[Z'
MYIFGPW=M\2O$.I2V-T+*>RMHH9A$2)&CW[@._P#$/K0!TFAZS:>(=#L]7L&8
MVMW&)$WC##U!'J#D?A5%_%,'VF>.WL;NYAM[Q+*:>'85CE8J.06#8&\9./SJ
MA\,K&\TOX?:7I^H6LMK=VZNDL4HP02[$>QX(Z5S^LZ'>2Z[/J^@VFHZ5XB%Z
MJ,T8/V2_A#@;I?X<;,]<-D< \4 =7J_C"UTF"_N!97EW:Z<<7LUN$(AX#'AF
M!;"D$[0<9]>*JW'C_3DU-=/L[#4M0N)+%;^ 6L((FB8X!4DCWY.!QUR0#SB6
M-[X?\4ZU;W?@UM=M-2O&O+.]ACB<H7 W1R%R-H!'!YX-65N&TOXOVZS6C''A
MB-'6RA+K&1.>BCG;D8&!QQ0!MV?Q!TB_T*UU.WBNRUQ>C3ULVC"S+<\YC8$X
M4@ DY.,4LWCS3[;1]:OY[*^1M&D,=Y;!%:1?E# C#;2I!!SFN9_LKQ#HUA<7
MMK879CU?Q ][?6UHRBYBM6&  <\,=JEMIR-Q />J-QHNKKI/Q"LH?#UY"NJJ
MC62@HV\F%5P2&/S9!)/3KR3U .S7QW:E49])U6(3SPV]F98%47;2J6'EDMC
M"DDMC'XU5UCQ[]F\)^(=2LM-N#?Z.S0SVTQ0>6^T$.2&(*8(/!)/I1KLVMQ^
M'O#_ /9]A?/!YT2:E#;@+<K$$((7)&/FQDJ<XZ'O7,MX<UB;1OB'IT&A7%M_
M:0$MD'=,2?NE&W(8Y;(.>V>] '?Q^("EEIXFL;K^T+M"8[3,?F.% +/D/M"\
MCDGN!C) J3P]XDL_$4-V;>.:"XL[AK:ZMIP \4B]0<$@CN""0:XS7K7599O#
M?B1/#,U_#9P26MYI<RQM.(W"8=5)*[@R=,YQZ<X[#PT#)9RW(T-=&BF8&.V:
M-$E( ^]($) )[#)P!SUP  U+Q+#8W%Y;V]E=7\]E )[E+8)F)2"0#N898A20
MHR>.V1F.+Q=87<.F-I\<]Y-J5N;JW@C4*_E#&7;<0% + <GJ>,USTK:UX5\?
MZS?1Z'>ZMI>M+ Z/9;"\$T:;"K!F&%( .<X%27=EK.G^/-+\5363W$$VFOI]
M]!:_O&M29/,5@.KC/RD@=LXH T+CX@Z7;>']0U:2UO@--G^SWUL$3SK=\@<@
MM@@Y!!4D$'BM2Y\1VUKXDM]#DMKG[1<V\EQ%(JJ494QN'WLY^8=JX77/".J:
MKH7CR_MK5UN=;: VMHY"NR0*H!([,Q#8!YZ9P>!I--JFJ?$'P_K0\/ZC;V$-
MC<Q2M.J*\98H>5W=.,=R>>,<D M#XFZ:=,&J?V7JPT]+HVMQ<M"@6W82>7E_
MFR1N_N@X[XJV?%%\?B0WAU=+G-K'8"Y,JO'\VZ0*'.6!"C:PQ]XYZ=*XR?1M
M8D^$.MZ.ND7G]HW.HR2Q0&/ED:Y$@.<X^Z#WKJ9+;4(_BG%JT>FW4MA>:,EI
MYR[5$+B9G.\$@CY6ST/I0!=N_'6G626MU-;70TNYN1:IJ("&+>25!(W;@I((
MW;<=^A!J/_A/;9]8O-,M]&UBYGLKF*WN/)MPPCWC(<_-]W!'O[<5RWA/3M0T
M:SA\,7_@F.XO+5S%%JYAB:VDBW?+([$[MP'\(!)([9XZ/PO;7<'C?Q=<SV5S
M#;WL\$EM+(F%D"1!&QZ<COC- %9_BKI,>F#5#I6L_P!FI.T%S=?9ALMB'V9?
MYLXSZ XR,X/%;6H^+K2RN[BUM[2ZOY;:R%],+;9A83G!RS#).UL 9Z?2N"T
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
MK$TTFQ=QVJ,G [GB@#)_X0G0?^?>Y_\  Z?_ .+H_P"$)T'_ )][G_P.G_\
MBZ;9>+%N=832Y]-NK>[FL?M\",R-YD8(!7(/#@D<'CGK6?I?Q%M-3LAJ/]DZ
ME;:6$N&FO9D39"8F(*MAB<G'& 1DXY.< &E_PA.@_P#/O<_^!T__ ,71_P (
M3H/_ #[W/_@=/_\ %U';^,K9O$5EHMY9SV=Q?Q/):,[HZR;!EE.UCM8 YP>/
M>M/5]9ATC[&CH9)[VX%M;QA@NYRK-R3P!A3_ "&2: *!\%: HR8+D#WOI_\
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
M%>@44  Y XQ[4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%
M% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %17,KP6TDJ0O,R#(C0@%O89('ZU
M+39?]4_^Z: .(MOBCIDOA^S\07.E:I9Z+=2>6M]*L3(AW%,N$<LHW C.*W1X
ME0^-$\.?8Y0SV#7RW)==C*'5<  D]6[XZ=Z\U\&^&M1\8?!'1]#:[MK32[AF
M-Q(JEYF1;AFVJ. I)4<\\=JZN1$M/C%9)&I\N'PW*%4<G GCP* .[HKS'27\
M3>)/#NC>)K#4+>VGDD6YN'DU&4PM%D[XC#LV+@<9'(*YSG)JOXJU;4++3=:U
M6PU6]NKBSU:)5GAD,=M;)YD:&W*;MLC#<=QVGEN2",4 >K45YOXQU>\TC6-0
M;5O[4@T6:%$M-4TZ5REC)CYC-&I'<@Y(/&!5JYO=0\3^)=?TJRGVQ6$,"P-%
MJ,ELP,L>\2_(IW]0!DX^7IR: .^JE97EU<7=]%<:?);102A(96D5A<+M!W #
MD<DC!]*@\.)J<7A^SBUJZM[K4HT,=Q/;GY'921GH.>.>!SFN$?4-572OB4!K
M%[YFFN[6LNY=T6+<. O& ,^@% 'I]9?B+61X>\/WVKM:RW*6D+3/'$5!*J,D
M_,1_GM7#VLVI:?K'@*[.LW]S_:\1BO(9Y=T3C[/O!"] 01UZGN35+4;J7Q;\
M+?%NNW%[=QR!;U(8(IV1(HHMRA&0':Q8 DE@3\W&,# !Z)%JUS<-H[P:9+);
M7\1DFG$B@6OR!E# \MDG'%:M>>_:[VV\2?#NWAOKA+2[LYA/;!@(WV6X*DC&
M3@GN?2C2SJ'C30-1U.WURYTS48]1FB@='8QVR12X"/%N"OE1D[L_?] !0!Z%
M43W$,<\4+R*LLN?+0GEL#)Q]*\X\9:A=I!XKNK'5KV>>QLTEMULY3%'8%8]_
M[P[L2,QYVX; P#@'-.GMQJ7Q,\*74\UR)+C1II7$=PZ+N'E'@ X .><=>,YQ
M0!Z517F4+^)/&&C7VHZ3?1V=_%J$T5O(U_(J0+%*5"/ $*-E5R=V3\V<C@#T
M.: W^EM"\[Q--%@RVTA4J2/O(W\J +5%>::!J=_?:1!X5O+VZ_M^UU(VU[.)
MV$ABC/F&4'.=KIM4=LN/2M#29;CQA>>*8Y-0O;-M/OWT^T6WG:/R=B*?,(!^
M<LQ)^;(P ,=<@'=T5Y3H/BC5M9D^'5_<W$L4NHO>0WL:.1'/Y4;@,5Z<E=W
M[_2GZGJ6J0V'Q,2#5;V+^S DEHPEW-%_HX<@%LD L?\ "@#U.BN?\*Z9/:V2
MW]QJ^H7TM];P.\=S(&CB8+R8QCY<YYY/05SWBZZN3=>(OLVIWLTUGI@EAM[*
M5H18OM=O,E8, Y; (4@G"],'- 'H-%>>2:YJ$\7@2:_N)(=+U*T\R_N(G,>9
MS K(&9<%5)WG@@9 !XZXNH7'B&T^&_C#4SK.J1BWNI1I<K.-QME90K!BNXY)
M8;LY( .>Y /7:*\^U+^T-$U+1["/5KV[?7KH^:;NZ\M8]D)8I$RJ3&&;'3)X
MP",YJOJ5UXC\'Z3K$USJ$#6UQ=6J6"R7;SR6:RR".0M(Z9*\DJ2&Q[T >DT5
MQ TGQ%8ZM=3C4Q;:7/9.AMS?R74JSC)$D;2IQP"".G?%<I!=:RO@CP1KX\0:
MD;^]O+6VGW2[HWCE)5LH1@GODY.?;@ 'L5%>;3ZI?^$_%'B:WCOKS4+:WT#^
MU8XKR4R%95:0$*>RG:.!QZ8JUIUCXCN9-!UJVU2*.VE16OC+J$DR722*,%(S
M&$1LD$;<#MR* ._J)KB%;E+9I%$TB-(J9Y*J0"?H"R_F*\=NKK6D^'_B?7/^
M$BU0WFD:M<K:_O@%VQR@ . /F!'&#QZ <YZ9[*.?XW02M+= G0#-M6Y<*&$Z
M#& <;?5>A[B@#O+BXAM+:6YN)%CAB0O([' 50,DG\*EKAOC!"LOPQU9B\JF,
M1L-DC+G]XHP<'D<]#Q4ES=.WQ L?"(N;N.Q32Y-0=A<OYD[^:$53)G?@?,<
M^G88H [6HGN(8YXX&D432!F1,\L%QDCZ9'YUR?@[4+\>(_%'AZ\N);J'2IX3
M:W$QW.8YH]X1FZL5Z9/.",U1U.PCG^-6ELTUT,Z/.^$N74 K+&. #@ ]QT/?
M- '1^'/$:^(CJH%G+:MI]\]DZRLI+,JJ2?E)'\7J:W*\;>"[3P[\1M4M-5OK
M*>PU>ZN(!;2; 72.-LMQ\P.,8/'M73-J^H:_XDBT=2%1='AOF1+Z2T9WD9@6
M#1J6(7:!C(&6YSQ@ [ZHEN(7N)+=9%,T:JSH#RH;.,_7!_*LCPG;:S9:$EGK
MU]!?7\#LAGB8L2N<KN) ^;:1GCG@]ZXBTD_L#7_B9K$+7,LNG+'/%')<2,K'
M[+OPP)P1GIGH.F,4 >IT5P6GV'B.:YT/6+;58H[26,&^,NHR3+=)(HVLB-&$
M1MQ!&W YQTK.\+6>J:MINJ:E<^)]8$MAJ-_!$B2J$9%)5=X*G)'4=,8X YR
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
MGR28SM8D@8Z\CTJ71_%MKJFN7FAS6MS8:M:()9+:XVG=&>CHRDAEY ZY'I0
MESX0M;E+Z%]0U$6M_&([JW\U6650@0Y+*6!*C!(()_*J^K^ =*U35+?4X;G4
M-+O881;^=IMR8&DB'1&X.0/S]^!74DX!.,^U87ACQ'_PD<6IN;)[1K#4);%D
M>0.6*8RW' Z].>E &M9V<%A9Q6ELFR&)=J@DD_4D\DGJ2>2:P3X)L3%KL1O;
MXKK>?MGSISE=AV_+\OR\?_7YKI:* .=;P=9NVB,;V^SHO_'I\R<?+L^;Y>?E
MX_\ K\U2N?AUI,QU=(;S4K2TU;>;NSM[@+"[L,,X!!(8]\'![@CBNOJ&XNH+
M58VGE6,22+$F?XF8X % &)_PAUB+S1+I;J^#Z,C): RA@ R[6W;@2V5XZ\=L
M54;X>Z/_ &W=:E#<:C;I>2>;=V,%T4MKA^[.@ZY[C.#W!YJ_9>(S=^,-1\/M
M8O$UG;QW G:0$2!RP& .GW3U/X5NT <K?^ -(U"[U>>2>_CCU>/9>6\-R4B<
M[=H? _BQ[X..0:F/@K33+H\PN+]9M*B:&*47)W21MC<KGN#M'3&.V*Z2B@#D
MI?AWH[ZY=:G#<ZE:K>/YEY96UVT=O<MW+H.N>^",]^IKI+^[_L_3KB[%O/<"
M"-I/)MTWR/@9VJO<GL*LU2U"ZO;:2S6ST\W:S7 CG83*GD1D',G/WL$ 8'/-
M &'X;LX]1UR^\6/I4]A->P16T274>R8QIDEG7)VDEL8]$6K4WA.T.KWFIV=Y
M>Z?/?(J7@M74+/@8!(93A@.-RX/O6_5+4;J]MC:"ST\W@EN%CG(F6/R(SG,G
M/WL8'RCDYH R]0\&:5>V&E6D!N-/&E.&LI;*0(\/RE2 2"""#@Y!S54_#[23
M#K<8N=1 UE52\)N-VX! IQD'D@<GKR>175T4 5M/LUT[3[>S2665($$:O*06
M( P,X [5AW_@?2[_ %?4=0>>^B;4H!!>PPW!2.<!2JE@.<@''!QZ@U9\7^(C
MX4\,W>M?8GO%M@"T22!."0,Y/N1T!K;!R : /,M?T*'2;K0M-V>)TTO3[-TA
MU+2WDFF5R57RW" D+M0?PXZ 8P<Z&G^%WUO1]2TR^U3Q!/HEXB*HU/:MP2"2
MV,H&5#\G# '(.,#KWU% &#K?A+3O$.A0Z5J3W$H@99(;E9-DT<B_==64###Z
M5'#X*TH:%>:3?27FJ17JA+F:_N#++(!]T;N,8ZC&,'GJ<UT5% ',:/X(L]&M
MI84U35[IGA,$<MY=>:T$9ZK'D87H.V>!Z4W_ (0/3AH.EZ,MY?K::7.EQ; .
MFY60Y3)V\@'_ .OFKWBSQ&GA/P]<ZU/:2W-M; &58F < L%! /!Y/K5*/QK#
M#K>GZ3JNFW>FW&I*39R2LCQ3,!DIN1CAN1P0/:@"Y_PB]FWB*;6Y9[B:XGM/
ML4L<A0QO#DG:5V^I)Z]_3BL_0OA]I?AZY5[.\U1[:)BUM93W;/;VS'/*(>XR
M<9SC-%GXRN+_ %S5])M= NI;C2G1+@B>(*2Z[EVY89R/I5W1?%EEKEQ?6,,%
MQ;:K8X^T6%VHCE3/0\$@J>S*2* *;> =-?P_J>B/>7[6>I7#W%R"Z;F=SN;!
MV\ G!_EBKTWA2RGUJPU=[F\%[:0&V\Q)=GG1[@VV0 #(R >,>]9^B^-+G7[*
MZNM/\/7;K;7$ELZM/$I,B'# 9;]:Z33KS^T-,M;WR9(/M$2R^5*,.FX9VM[C
MI0!!KNBV?B+1+K2=05VM;E-C[&VL.<@@^H(!K/N?"%E<MIT_VN^34-/W>1J
ME#3X;[P8L"K ^A&/3%=!10!0TO2+;25N#"7DGN9?.N)Y2"\SX RQ  X
M ' JKJ7AFRU/6['5Y);J&[LT>)6@E*"1&()1O49 /:MFB@#F!X&L!IFM:>;V
M_,&LRO-> NF69P V#LXR !QZ<8J/5/ &EZHNFR->:E:WVG1>3!?VEP(I_+_N
M,P&"/P_F:ZNB@"IING0:581VEOYA1,DO*Y=W8G)9F/))/)-9R^%--77M0U?-
MP9-114NK<R_N9=J; 2G<[>/3VSS6Y7,S>*KJ6YNAI.COJ5M97RV-VT<X617P
MI8HA&&"[QG+#OZ9H BT+X?Z7X>N%:SO=5>WB+&VLY[LR06Q.>40]QDXSG&:N
MZ5X5MM'T[4+&UO;TQWTLD\C.R%E>0Y<K\O&?3IZ8K8FNH+>6"*654>X<QQ*>
MKL%+$#\%8_A61H_B,ZKXAUS2&L7MWTIH5+M(&\WS$+ @#IQCOWH I_\ "!Z=
M_86E:.MY?K::7.EQ:X=-RNARF3MY /\ ]?-6+GPA97FKWNIS7=ZT]Y8G3Y0'
M4+Y)SP,+P06)SU_#BM2_NKVVELUM-/-VDTXCG83*GD1X.9,'[V" ,#GFKM &
M/9^'8+?4K?4+B[N[ZZMH6@@DNBA,:,06QM49)VKDG)X]SE^N^'['Q!;P1W?F
MI+;3+/;7$+;9(9!T93_0@@]Q6A<RO#;22QQ-,Z*2(U(!8^F3Q69X5UY?%'AB
MQUI+<VZW:%Q$6W%1DCK@>E #[/0H;.>ZNOM5S-J%RBQR7LNPR;5SM4 *% &2
M<!>I).:9X;\.VWA?2ETRRN+F2U1F9%G96*EF+-@@ \EB><UIW5S#96DUU<R+
M%!"ADDD;HJ@9)/X4DMW!#+;Q22JLEPY2)3U=@I8@?@I/X4 9FH>&;+4-?L]:
M>6ZAO+:)H0T$I021DABCCN,@'M6?_P ()IYT?6-+-[?FVU>=[B[!=,L[XWX.
MS@' X'IQBNIHH P6\*6KZII&HO>WK7&E1M%;Y9,;6 #;AMYR !^'&*;%X1LU
M-LDUY>W-M;77VR"VG="B2Y+ @A0V 22 6P./05T%% &?K>D1:[I,^FSW%Q#!
M.NR4P,%9E/5<D'@]ZENK 7FE2V$T\I66(Q/( N\@C!_AV\CVHU.XN[33+BXL
M;(WUU&A:*V$HC\UO[NX\#ZFG_;(XVM8[AEBN+CA(B<DL%+$<=< 'F@#@=?\
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
MGDMD8$%6=P&9<CY<^X[50^VOKGQ'U30KJ:XBL]/L(9(XH9WA,KR$[G+(02
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
MF9[W!Y<L@4D>G3/U)/>@#EO%,MW_ ,*^\5:]::C?0/*'EM&BN7 CCC&U2O.
M&(9^,<,/2H]5L8KOXD>"))9+K?-I]V7*74B9VI&1C:PQU.<=>^:[/4O#UAJG
MAUM!E5X]/:(0&.%MO[L# 7/88 Z57O/"6FW\FE2W#W1FTL,MO*D[(Y1@ RL5
MQD$ 9^E ' S6#W,_Q,N4U"_M)+2;SX3:7#0XD6U5@Q*X+=.A./:M2;5-0N;G
MX:WC7UPAU$ W42/MCE)MB^64=?FKIE\':>JZR!/>8UG/VW]X/GRNWCCY?EXX
M[4G_  ANG;=$7SKS&B@"R_>CY,+MYX^;Y>.>U '&RVU[?W?Q"BEUS5U33F5[
M017C1^4WV<.,%<' 8_=Z>H-=YX3O9]3\&Z)?W3[[BYL()I6Z;F:-23^9J!?"
M-@DFLNL]V&U@8O#Y@^?Y=O''R_+QQV]^:TM)TR#1=)M=-M6D-M:QK%$)&W%4
M48 SWP!B@#S/2-/AM_#7Q-D1[@E+R_C >YD=<?9T.2"Q!/\ M'GWJ334N='/
MPWNX-2OV_M"&.VN8'G)A9#;;E C^Z"I48(&?4FNS?P5I32:PRM=QKJ^[[5&E
MPP0EE"NP7H&8  GKZ8I3X-TYHM&C,]YMT8@V7[T?)A=HSQ\WR\<YXH Y&#^W
M_&6C:A?Z=?K8ZA#J,T<5Q_:$JK;"*4J$: +L8% ,[B<[L^@'H%]$MYH,\<SY
M$MN=S02,F<K_  L""!^-8<_P\T*;7;C55^VP-=-ON[:"Z>."Y;UDC!PV>XZ'
MOG)KJF560JP!4C!'M0!XU&)],_9XT^_L+Z^MKGRK9B\=R_\ %,JD#)^488\+
M@5U>IQ7-W\68-,;4]0BL)]%EEDMX;AHUW"5%R,8*G!Z@@^_)K0'P]T0>&&\.
MA[[^S6=6\LW3$@*VY5!/(4'G _'-:3>&[5O$,.N-<71OXK8VJOO&/+)!(*XQ
MR0#F@#S*7^TA\.?%-\=>U<W.@:A=PV$GVM@0L3_+OQ_K.#@[\\=,5U,VHWNO
M>+9]%X\J'2X+E8EOY+1G:0L&<&-22%PH'( )[YXU_P#A!M*_L;5-),UX;/5)
MWGNU,O+NYRYSC(R<<"FZMX"TC6&L)YIKZ"]L(_*AO;6Y,,XC_NEEZC_Z_J:
M+OA.UU2Q\/PV6LZC%J%];LT;W$9)+#.5#$@98 @$]^M<39Z1J'B.]\9VLGB7
M6;<V5^5LVANRGE-Y2L,XZJ"?N].O?FO2-/L+?2[&*SM4*PQ@XW,68DG))8\D
MDDDD\DFN"\.:))?^(O&)N3JUE;WUZ"!Y;PI<0^6JG!9>.=PRI#8_"@#.\.>)
M]7\4IX;L+O!DN=%:]E4W;VIN'$GEYW1J3T!;:,#Y\]A3M7M?$6C:/H=G=>(I
MVG/B6"V62WN&9EMY#D1RLP!=@,<L.1C(KLM;\#Z)KEKI\,D4UH^G#%E/8RF&
M2W& ,*PZ# ''M1/X)TJXT^PLFDO EE<K>1O]H)D>=>1([G)9OJ<>W H P-3L
MKCP]XG\&V5MK.K3V]Q?W F2ZNVD\P&)W 8]P#TSGI2Z3)<>,K;Q5/+J%[:7-
MGJ5Q8VGV>X>(6PB4;6VJ0&))+'<#G..E=5J?AVTU74=-O[B:X$^G.9+<HX4!
MB,$D8YR#CGBJ\_A#3I-1OKV"6[M&U!0M[';2[$N,#&6&.&QQN7:?>@#B_#7B
MN_\ %]YX5T_49);9;G2)-0N?)<Q&YD601J,K@A?O.0#SD=JU_A]:K9>(?&MN
MLLLBIJJ[6FD+M@PH0"QY..G//%;FJ>#-(U1=-(2:RFTP;;*>RD\IX5Q@J".-
MI  P014VB>%]/T&\O[NT:Z:>^<23M/</)N8 #."<9XZ]?PH YWQK?ZCI6L+>
MSV6H7OA];/;/_9EPR3VDFYLRE%(+J5QSVVGU.:T.K2:YKMAHEG=_;;(:'#>1
MR&]EM6N2[%#(60%C@*.,C!<YR<8Z^]T"*\U&2^6]O;::6W%M*() %>,%B 00
M1GYVY&#SUK,U3X?Z#J=OID:QW-C)ID8BL[BQG:&6),8VAAR1]?ZF@#C=7T;4
M+=/!=GKFJ/?7D.O>1YT-U(&$9C=E#$%<N!CYL X[\FO5FMT:U-N6DV%-F1*P
M?&,?>SNS[YS[UB7?@W2+O2;'3F%RB65P+J"9+AQ,)1G+E\Y).YLD]<UN+"$M
MQ#&S(JIL4@Y(XP.3G)^M 'CFGW\GA;X9:]JUC-<)<G6+BU662=Y%A5[K89-K
M$KN .=V,D]<\UUFM_:O#7BSPS_9UY>R6NIW#V-W;SW#S!OD++(N\G:R[3DCJ
M.M;5EX+TBST6^T<I-<Z??/(\\%P^\,SG+'/4$GGKP>14UAX8M+&:UF:YO+N2
MSC:*T:ZD#F!2,';P,G QN;)QQGDT <9X7TB?7+?7+G4-=UJ06.KWUO%$MZZ(
MT8^4*^.3CMR,8&,<YP8K18_@7X8>.697GO+ EFE9PI\\<J&)"_0 "O5=$\.6
M6@I>I:/.Z7EP]S,LS[P9'^\PXXSZ=*RD^'FB1Z'#HZ27ZV4,ZSQ1FZ9MA5MR
M $YPJGD#\\T 4M)%QI7Q5O-(34+ZXLKC1TO3'=7#2[9?.*$KN^Z".PP/:M/Q
M9,!<Z-;?;[F(SW1_T*UR);T*C'8'#+L4<,3D# P>M7T\.VJ>)!KYFN6O_LPM
M"S.-IBSNV[0,?>YSU_#BDUWPS8>();&>Z:YBN;&0R6\]M,8I$)&&&1V(X(H
M\NU>[OKGX6>-+6\FE;[%KBV\ EF,S11^; P3>W+8+'K71ZA'J'A+Q[HCVNJZ
MG?VNJI<I=VEU.91NCB,@>,=$.1@@ #D<5O+\/_#XLM6LFAN7MM4E$UQ&]U(1
MO&T[EYR&RJG/4D=:T['0+>SO$O99[F]O(XC#'/=.&:-"02%P !G R<9.!DG%
M 'G;ZEJ-W\'QXX@U2Z364C:^W+._D\2',1BSL*[05QC.1G.>:V+_ %.;0?&V
MBZS?7=U%H^KVC02PRW#F*UN0OF*=I.!N4,N,=16[#X'TB!)K:(W"Z;-/]H?3
MO,_T<ONW9VXR!N&=H.WVK4UG1-/U^R2SU* 30)-'.%/]Y&##^6#Z@D4 <;?7
MVH6 \.6#2S+)KM[-),+B\D0HNQI$@#_,4_A7Y>NTCO6YX8TS5]*U+58KZ_CF
MLIF26SM3<O<26P((<%W 8J2,CTY%:'B+PUIGBG3/L&J0L\2N)8W1RCQ..C*P
MY!%4H_!>G1Z!=Z2;K4I!=@">[EO':Y;'3]X3D >@XY/')H Z.BFQH(XU0$D*
M  6.3^)[TZ@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHKBTB-_\5M1M[B>Z,%MIEK-%$ES
M(B*YDER=JL <[1U]* .THKS&+7K&?QQK6B>*M2O]-U W/_$KQ=R6\+V^T;#&
M5(5G)W$[LY)QVP-S5&M=%\)Z;:>);_4)7^UQ1BYMRX>63S?D+,G !XR"0.U
M'945E7NOVMGJ!T](I[J]6W-R\%NH9DBSC<<D#DY '4X. <5E?\+%\.'2K'4T
MGNVLKVY2U@F-E,JL[' Y90,=>?8XR10!U5%8%AXQTJ^FU.%OM-G)IL0GN$O(
M&A(B()$@!Y*X4^XQR*2Q\7Z=?WMK:B*[ADO+4WEIYL6!<1#&2N"><,#M.#ST
MH Z"BN'TOXBP3>']4US4=/O;6RLKJ6)CY0;8B-LYP>3GJ!G&?;-='/XAL;;6
MK+291,MS>Q/+;D1DJZH 6Y'< CCWH U:*Y:P\?Z)J=VL%LM\R^=-!).UHZQ0
MO&"6$C$?)P#UP>.W%6HO%^FR:G8V,B75NVHJS64L\6U+C R0IZ@XYPP!/:@#
M?HK*\0>(M.\,Z<+_ %-Y([<R+'N2)G 9B ,D#"C)ZG JCIGC?1]4UR71U^UV
MUXD1G1+RV>'SH@<%TW 9% '1T5SMCXUTG4+K3HHA<+%J>_[!</'B.XV D[3G
M(X!(W 9 XI=0\::3IL6H7$IN'L].E$5[<PQ;T@<@'!Q\QQN7.T'&>: .AHK(
M?Q':>5 ;>"\N9IXC-';I R2^6#@L5?;M&>F<9[9J;1-;L/$.E1ZCILQDMY"5
M^92K*P.&5@>001C% &C17 :QJ9U7XCKX;N[6_;3AI;RLD09-TC2J@DRI!VJ
M<'L23UQ6G!XETKP]HPCDN=1O-/T]_LMQJDP\T*X.T[V&"V#P6 (!ZG(- '64
M5Q.L2NOQ4\*>3=3&"YM+QGC69C$^U4VMMSMS\QYQ47A2]2PUKQS)?7TOV.RO
MU;?<SLXBC\E6/+$X R>* .[HK"A\5V$FHV=C/%=6DM\A>S-S%L%P ,D*<\-C
MG:V&]JJMX[TE=&U356BO1;:7.UO>9@.Z)UQNRO4@9'(]<],T =/168VN6R36
M,31S WD33(=HPB* 6+'/ &Y?S%067B"TU62W@2WO$BOH&FMYF3:DL>!\P(.5
MR&! .#[4 ;5%<;X75K7QWXKL$GN7M8$LC%'-</*$+(Y;&\DC)KLJ "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ KC[#_ )*[K7_8'M/_ $9-785B2^&T
M;Q+)KL&I7MM<RP1P2QQ>48Y$1F8 AD)'WCG!% &#K#Z1XBL;_3/%F@WDB0W$
MJ0.+"63S$#':\3HI(.,#J"<>AKG)](URS^$6BZ;>V]_=WT>HP2+&L+32QP+.
M'4/M!P50#^7:O7** /-_$.HMHWQ$;4K*SU0R3:4D<\EOISWB,#(Q3**59&&&
MY/!!QCC-9DT5A_PA?A?3O#]MJMS%INNVSW"26,HFBVOYDC2+MROW]W3OQ7;W
M?A29M<NM5TS7]1TV:\V?:8XA%+'(57:"%D1MIP,<?E6SI^GQZ= R+++-+(V^
M6>8@O*V ,G  Z #    X% '":DVIQ>._$=_I^DW-RS>'UBMO.M7$,TRM(WEE
MB #PPXSSG%9^F_;)_&/@[5/[+UUU%G<0W<US;-&(Y66/C8<"-1@] %/;<:]6
MHH \D&E:I<?#7QIX?72KU;YKJ\EC#PE4F#2[TV,?OY'3&??'&=.34)]6\<>#
M=3@T?5DL[>VNTFDFLW3RV9(QA@1D<C&<8/;.#7I%% 'FOA_2;W4O WC/21;7
M5G<W][J!@-S \0992=C#<!D'/X4_PI<6VI-IMM<^!KBRUBR*^?/=606*!E&&
M>.0_>)QQMYY]!FO1Z* .'^+;^7\/KA]K-MN[0[5&2?\ 2(^!3=4MY]=\;Z)K
M&F6<Y31[2[=WN(7A$LDB!4B&\ GD$GL/J:W_ !3X=7Q1H_\ 9LEY);1&6.5F
MB4%B48.O7CJHK90,(U#L&8#E@,9/TH \?M6U*[N?!.I3Z+K9NK6[<7R&T:..
MW9HG4)''PH0$@!P,8QN;-%_+!%<^+=$DM-=BTK4K]FG-MI3W(8E4\QHY4.%W
M8Z$$K^@]BKE;/P;<:;+)'IWB?5K:PDE>4VF(9 I=BS!7>,L 22>IZ]: .8U2
M>"V\4:=XDBT.ZUKPW>:6EF/LMLTLMJZ.Q4F,_, 0Q!XR".:[GPU!;PZ5NM='
M728)I&E2U\H1O@X^9U' 8XSCKC&><UI6MK#96L=M NV*,8 ))/U)/))ZDGDF
MIJ .);SA\91=_8[W[)_8GV7[2+63RO-\\-MWXQTYST]ZP-*M;_3/ASK?@N]T
MV]FU,"[@MF6W=H[L3,[))Y@&T#+\Y(QCFO5:* /.ETJZTKQ?X"M3!=W$>F:9
M/:W%U';NT:L8XU7+ 8&2A^G>LK4- U/7M,^(^G6EK=03ZA=1S6C3P/$LX1(\
MA68 ')0KU[^E>M44 <!JOG>-'\*>187MI/9:E%J%Y]HMGB^SB-6W)E@ Q+$+
M\N<CGI2:EX:O9?'-_9Q0,=!\06J2:BX)&QXOE91_UT5D4^H#'M7H%% '">"-
M-U>QT*Y&M6YFGTZ)]-M%89\^",MA\?[8V#WV U0\*:;=Z1XCTV/0GU4>'KB&
M1KK3M2@<?V>V 5$;N 1ECC:">,GGK7I5-D4O&RJ[(2" RXRON,Y'YT <CX?_
M .2E^,O^N=A_Z+>NPK%T?PY'I&J:CJ1O[R\N]0$0F>X\L8$8(7 1% X8UM4
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
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
MNQNV^F['..N.:ICQQX9:WEN%UFV>*.18F*$M\[ D* !DG )P,]#Z4?V1@/\
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
MYP&0'TW!EQGKGBC^R,!_SYC]R#VDNYH_88/0_G1]A@]#^=5$\1Z,^LMI"ZC
M=04D& -SD#)7TW8YQUQS4MKK>F7S6RVM[%,UU&\L(0Y+HI 8_0$@'WXH_LC
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
M+875I<_8XKJ1)E ";RR[,Y^\"ASQC!&":UJ:(T$C2!%#L I;') S@9_$_F:
M/,M7\/ZR^I:K<V-I*)+W59+1G'!%I/:P(\H]E>-3_P !-20^&]6N]4BTZ$W.
MEV=OJEYJ(NHXD89&$A50X*G(=SR/X1[5Z710!RW@W3;[18]5T:\::>"&[:6U
MNI$5?-CE&]N%  (D,@P  .*Q_#=CJ)F\+Z7<:;=6_P#PCT,B7%Q*F(Y6$9A3
MRV_BW!BW'3&#@\5Z#10!S5A#>V%]XNO!:R,9;E9K9<?Z[;:Q+QZ_,I'U%8=_
MX8D7X?\ AVVFL'OGTZX@O+VU"@O.<'SOE/#',C,5[X([UZ#10!YGI]A=:5J<
M?B&WT6\BTL:A<&/3XH/WL,,D,:EQ$.0#+$6VCD!\XZULZ!HFKVUC!J,NHWUD
M&GN+V?2XXHF#^;-)*%8E2P;:ZJ0K#D5V=% 'E<,.I^)]-ULZAHNJP:]J%E)'
M ;F );VR#YDA5L]R!N;'S'V  T;U;G7;R]UF;PO<W%G%:VUN;"]C"R3$3>9*
M50\-L&TC/#$$"O0Z* /,)-)+_;M4BT+5+.PEU**:W2R7R;JV*PE'N%BP?O$A
M"I&2N6(KJ? NDRZ5H<YGBGA>\O)KKR[A]TJJS?+O/]\@ GT)(KIJ* "BBB@
MKG-74Q^-_#=PW^J:*[M@>WF,J.O_ ([$]='4%S:07BQK/&'$4BRIR05=3D$$
M?Y(R.AH \TG\/R:T;73K/PR=%NX%O$O+E8@L3+)%)'M63_EH'=T?VV\X-/U"
MUUSQ#:>;!I-]9S6.CM9RQRXB:9Y)(3+'&V>?DA8!@<9<8/7'I]% 'E<VGQVG
MA;QB-+T>XTO2+VP2VM;.>+RB]VX>,LJ'E0=\*^Y7/N>I\;:0=0TS29'LGU&+
M3K^*YGMD4,TR!61L*?O8W[MO< CG.*Z2YLX+P1"XC$@BD65 2<!UZ''?!YY[
M@'J!4] 'FME8I8)]MN?",D^E2ZE/-;6WV8/-9(T:*&$/8.ZR$@<C>..N(M&L
MM5\*(EZ=$O)DN[&:&&TME#M:G[1++#$V#A1LE"YZ+LQGI7I]% '':9H.N^'=
M!MC:ZG->R66FQPQZ4RQ+"\B1*O#[=_)4GEL<^E<_)I=U<W]]K&CZ'?6=E'/9
MWDEG-'Y3W5Q',6E9$)^]Y9QGC<0.N,UZC10!YR;:_.O?\)@-*OO(&H@_9?*_
MTC[/]F,/F>7USO.=O7;SCM3=.M]1T/5(O$D^D7TL=]]M\RU@CWS0^9*CP[E!
M[JF#_=)&>YKTBB@#%\):=<:3X4TVRNU"W*0@S*#D*['<PSWP21^%;5%% !11
M10!D^*-.DU7POJ5G!_Q\/ Q@/I*OS(?P8*:X+0O"^IW/B"V;4]/>.PU")]5O
M5?\ @NG\Y#$WN$G7_OW7J=% 'C^E>%O$#7NER7MG)F[G6TU%F[0VWDF-C[.8
M)/\ O]2:EX4U\75\UG9R@VUTUA9,/^?6X\\NX]D^T1_]^*]AHH Y'Q%'+LT\
M6FE7<EOHE_!,\:1@^=%Y;+^Z&?FV%U..#E>,\5F1W%U:>(E\1OX7O$L[B">!
M8;: -.&+JPDDC&"ID"G/IM7=C/'H-% 'CYL[[POX<U:"]TJ2\:Y\/)$4@9'%
MH5$Y,<F3\J /PW0[6QR!G671+Z7P_P"(-EC(TEU<:<\.%YD5(K;)'T*O^1KL
MM5\+:+K=VEUJ-BL\JH(R=[*'0'(5P" ZY).&R.3ZUL=* /+=/T+4(-;BLKI-
M>E,.M2WWRB%;,(9'D63?Y9<DA@I3=NR2.!5[PQ9:AHNNZMK5SHLXAU:*2ZAA
MA3=):[&9O)()P&D#;\# WE@>U>B44 <+*;NSUK68W\.SZA_;%Q;3VYDC!A51
M'&A65N0FPHS<]<\9-9EMIVI/8:/H']D7<=SI=Y-//>-&!$Z[90&1\_,9/,'
MY&6SC%>FT4 >>:=H-Y#;:0K:>ZF'PHUFX*?=E(B_=_7@\>U=CX>AEMO#6E03
MHR31V<*.C=58( 0?QK2HH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
E** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH __V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>19
<FILENAME>exhibit101-ptagreement008.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 exhibit101-ptagreement008.jpg
M_]C_X  02D9)1@ ! @   0 !  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0D)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" 55!!\# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#V*BBBOPT]
M,**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@"U]@F]5_.C[!-ZK^=:=%?
MIO\ JIE_][[_ /@'%[>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-Z
MK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >W
MF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^
MJF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7
M\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[
M_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJO
MYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9
MF?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ
M9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?S
MH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_
M . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G
M6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9
M]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE
M_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C
M[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\
MX >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:
M=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV
M";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_
M -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L
M$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@
M![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT
M4?ZJ9?\ WOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)
MO5?SH^P3>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\
MWOO_ . 'MYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3
M>J_G6G11_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . '
MMYF9]@F]5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11
M_JIE_P#>^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYF9]@F]
M5_.C[!-ZK^=:=%'^JF7_ -[[_P#@![>9F?8)O5?SH^P3>J_G6G11_JIE_P#>
M^_\ X >WF9GV";U7\Z/L$WJOYUIT4?ZJ9?\ WOO_ . 'MYA1117TIB%%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%,$L99E$B%E^\ PR/K1YT
M0G$!E3SBN\1[AN*YQG'I0 ^BBB@ HHHH ***9+-% F^61(UR!N=@!D\ 4 /H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH *H:W!>W.@ZC!ILPAOI+:1+>4G&R0J0I_ XJ_
M5'65O6T._73<"_-M(+;)P/,VG;S]<4 >6>';[PQJD>G>&M6TM?#_ (JL9(6"
MSQ['G='5BR2_\M ^TY!/.>_6NZDU2R'Q'33FT8G45TIYX[\E,M$)%!C7G/WC
MGG'3WS6+XPT34?&^AP:7<>'6L]0$L;KJ+S1,EH0P+-&RMO.0" -HSGG%:<^F
MZD/BC;ZREA))I\6DR69E$D>3(TBN/E+9QA<9]3Z<T 9W_"S'&A/KC>'KI=-M
M[QK6[E:=-T.)?+W!?X\$C...>IYQT-]XAE74+W3]*L/M]W8P+/<J9?+"[@2B
M [6RY"DXQCIDC(KB)O"WB"7X5ZUH(TIQJ%W?R3Q(9XMNQK@2@EMW& ,?6M>>
MS\3:%XWO]<TG1AJ=CK4,/VBV:Z2&2VEC7:#DD@J5ZX)Y^G(!JOXWM3;:;L@%
MO>7]L;E;?4I1:^4@(!WD@D')P  <\GH,UEI\4+6;1K*_ATJZF:;51I,T4<B-
MY,V<<'/S@CD$<'(Y%+K.G>*[#Q!IGB?3;.WU.Z%H]GJ%@LXBRC/O4QNV!\IX
MR<9'UX/$=CXDUK3M#E?2E^TP:S;W\EM%<1GR(8^JER5W.>O''.,\9(!H-XSE
MA\FTOM.AT[591)(+:\OD1!&C;0YD /WB1@ $]>PS7*^*/$-AXQ\#6.IQ6PCG
MM->MK=T?:YAE690P5AP001R.H-=#XDL/$-CXML?%&@6":E_H9L;S3WG6)RF[
M>KHQ^7(.<Y__ %1>*=/\1:]X6M4;3$^VMJ-O=&UCG0B"*-U8J7) 9OE)XXR<
M=!D@&VGB5_\ A-F\-SV/DL;4W<-R9<K,@8*0HQ]X$\CL.>:NZ-J<FK03SM;"
M&)+B2&-A)N\T(Q4L.!@9!Q7._$#3+J\LM(U+2YA::W:7L:V;N,Y\TA)$('4;
M26/^Y6AK-W=^$?#U@ND:3]OM[=HX)4-P(VCB QN&?OMG "CDDT =)1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
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
M7-(1+W5-'O[BY?3I6WQW,?F,2IC.0'V\JV,Y^M>CWOCW2+WPE%>Z7J<$=S?E
M+:W65PKPRR$+EU/39DL<_P!WW% $6D>,KJ[^(UWH]U&$TRZMR^E2_P#/5H79
M)OJ2>1_LJ#WKHK_3]5O-3#P:S/8620@>7;Q1,SR9.23(C8 &.!Z^U<#X[T.X
M\-^&-*UVUU3SI/#DT4EI"\:)YD?"/&& R=R?GBO1K/6M.O\ 1H]6@NXC8R1B
M3SF< *#Z^A'<'I0!Q/@&Z\2^)O!VDZ]/XAG:XEG/GV[6\ B>-9F1@,(&!VC.
M<]:GT/Q!?Q>)O&HU;5II=,T(QM&IBB7"&(R,254$X[<]JC^"L\3_  NTR)9%
M,D33"1,_,F9G(R.V1S67HT-IXA\3?$[28[R'.I"*&)@X.<VY0L/4 ]<4 =)X
M9GUCQ;H,.NW&J7&F)>@R6MK:)$1%%GY"Q=&+,1R>@YQCO5*S\2ZIJ6F^)](F
MO?L>O:!NW7%O$A69"A>*38X8#<!RH_ \U)X#UVTT?P;9:/KMS!IFI:5%]FN(
M+J01G"<*ZY^\I !##BLK3;-E?Q[XQO0;2UU:+RK-9QL9HHHB@<@\C>>0#SCZ
MT ;7@/Q?=>(+2;1];7['XCLHU^T(H \U&'RSQ\8(.1VX/U%;7A2:\N='::^O
M9+N7[3<1[G1%PJ3.B\*H[**YS6_#LFO:#H_B+PU<11^(--MT:TG5@5G7:-T+
MGNK<CV/IS6S\/[B:\\&6MU<VS6L\TUS)) _6)FGD)4_0G% '34444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 THI8,5!8="1R*=110 @158L% )ZD#K2T44 -6-%
M8LJ*">I ZTZBB@ HHHH **** "D(# @@$'L:6B@!%4*H50 !T %#(KXW*#CD
M9&:6B@ HHHH **** $9%<890PZ\C-+110 4444 %%%% !1110 A16(+*"1TR
M.E+110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
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
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "HKI9GMI$MWC28KA6D4LH/N 1G\ZEHH X?P_X/\ $/AS
MP?!X<L]?L5CA5T2Z.G,9%#,S$@>;C(+''&/8U+%:>%/A_P"#K7PU?WD:64T4
ML2I<'+W1.3( !U)W=!Z@"NSJ.2WAF>-Y88W:-MR%E!*GU'H: .5\,:?%X+\
MVT=[-,DJQAII95:5U=@ H8*,G:-J<=E%6_#&N0W&CQ17NLQ7M]",3W#6YM@Y
M)."$8#MQQZ5T=5;K3+"^=7O+&VN&484S1*Y ]LB@!?[1L?\ G]M_^_J_XT?V
MC8_\_MO_ -_5_P :K?\ "/:)_P! ?3__  &3_"C_ (1[1/\ H#Z?_P" R?X4
M <S'XAT>#0[ZRCUB6.^NC.YNDLICLDD+$,/EY"Y '/116%<OH^H:J^JW6J10
MW[6#V$DUIIMQ&9E<KN=L@G("G:.<$]37JBJJ*%50J@8  P *SM<U_3?#E@;[
M5KAK>U4@-+Y3NJDD 9V@XR2!S0!G)XV\.1HJ)=2JJC  LYL ?]\5S%YJ.FW/
MCZQ\2IKBI':VKVHMCI=P2RL<D[^QZ=J[*T\4Z/>ZDFG)=-%?2(9([>Y@D@DD
M4=2JR*I;\*V* /-+&\T;1_$]_J&EZT8M+U(B2[TV33)V4S=&D1@!M+#&1@@G
M],^UBTFT\-7/A1->8^'YG8(#IT_GQ0LVYH@V,'J0&(R >AKTC6-?T_0OL?V]
MY4^V7*6L.R)F!D<X4$@87\2*TZ /-IM2TJV\5C7=(U:.+=8)8/;7&FW#*$1B
MRLI4#!&[&#U]16??VGAV;1((['Q!=VFM07[ZFFI#3Y26N'SO+)MQL(.W;GH!
MUQSZS10!Y5J5W%KOA+4M+U7Q2)+V_C6%IH])G6*% <_*G4L>Y)]..*O>(=3T
MK7=#TZV&M>1?V%W!>1S_ -F3M&TD1R 4QG!_WOQKT8$$9!![<5EZSXCTKP_]
MG_M.XD@%S*L,)$$CAY#T4%5/S'!P.M &/-XQTJ329;=-8FCO7A9%NET^7Y)"
M,!PA7'!YP:Q?#FIZ3IVI7&LZOK+7NK7%M#:R2Q:?-&A6//.-O5B23VZ "O14
M<.BN 0&&1N!!_(\BLW7/$6E^'+>*?5;AK>&601HXA=P6/0?*#@GMGK0!A:-X
MPL;735BU?6FOKP.Y:>/39H@5+$J-H4]!@?A5?Q5K7AGQ1X7U'19KZ9%NX2BO
M]BF.QQRK8V=F /X5T-YXITC3]5LM,NKB6.]O1FVB-M*3+@9."%QD#J.W>K5S
MK%E::G:Z=,\HNKH,856!V# =?F (&,C.3WH X'7%\':UHNBZ6][.D.E7$,L9
M^QS$NB#:R'Y>C+D&M#Q;KNB>)/"]_HT.JO;&\C,33/I\[[0>N!@<_C712^*M
M,M]*U/4I_M4=KILTD-PS6LF04^\0 ,LO/WAQ[TLWBG2X)='CDDE#ZN0+3]RQ
M#97=RV, X[$YH XV^U'3;S5O#-__ &XJ-HN\LG]EW!$Q>,QG']W@Y[\U%OT"
MYU7Q3-J&KM-9>((8X9((].G1H@B% 0V#DX.>G6O4*3(R!D9/.* /,?#>JMI9
MM[;5O&$FH6%F,6Z)I4T<D@ POFO@[L#L ,D DUGM::2_@_6O#3^)'^R7D\DU
MJRZ5,&A+2^;\YQ\^&XXV\9_#UX$$D @XX/M2T 8VC:S;7.EQ2SZI;SS'.^01
MFW!.>R.=P'U)K0_M&Q_Y_;?_ +^K_C4=QH^EW<S37.FV<TK8R\D"LQ_$BHO^
M$>T3_H#Z?_X#)_A0!9_M&Q_Y_;?_ +^K_C1_:-C_ ,_MO_W]7_&JW_"/:)_T
M!]/_ / 9/\*/^$>T3_H#Z?\ ^ R?X4 6?[1L?^?VW_[^K_C1_:-C_P _MO\
M]_5_QJM_PCVB?] ?3_\ P&3_  H_X1[1/^@/I_\ X#)_A0!9_M&Q_P"?VW_[
M^K_C1_:-C_S^V_\ W]7_ !JM_P (]HG_ $!]/_\  9/\*/\ A'M$_P"@/I__
M (#)_A0!9_M&Q_Y_;?\ [^K_ (T?VC8_\_MO_P!_5_QJM_PCVB?] ?3_ /P&
M3_"C_A'M$_Z ^G_^ R?X4 6?[1L?^?VW_P"_J_XT?VC8_P#/[;_]_5_QJM_P
MCVB?] ?3_P#P&3_"C_A'M$_Z ^G_ /@,G^% %G^T;'_G]M_^_J_XT?VC8_\
M/[;_ /?U?\:K?\(]HG_0'T__ ,!D_P */^$>T3_H#Z?_ . R?X4 6?[1L?\
MG]M_^_J_XT?VC8_\_MO_ -_5_P :K?\ "/:)_P! ?3__  &3_"C_ (1[1/\
MH#Z?_P" R?X4 6?[1L?^?VW_ ._J_P"-']HV/_/[;_\ ?U?\:K?\(]HG_0'T
M_P#\!D_PH_X1[1/^@/I__@,G^% %G^T;'_G]M_\ OZO^-']HV/\ S^V__?U?
M\:K?\(]HG_0'T_\ \!D_PH_X1[1/^@/I_P#X#)_A0!9_M&Q_Y_;?_OZO^-']
MHV/_ #^V_P#W]7_&JW_"/:)_T!]/_P# 9/\ "C_A'M$_Z ^G_P#@,G^% %G^
MT;'_ )_;?_OZO^-']HV/_/[;_P#?U?\ &JW_  CVB?\ 0'T__P !D_PH_P"$
M>T3_ * ^G_\ @,G^% %I;^S=@JW<#,QP ) 23^=6*SX]"T>&5)8M*L4D0AE=
M;= 5(Z$''!K0H **** /.]>U;2]6\0Z'J<&LB!=*FDE$3Z;.YD+H4(R ,<$]
MC6I'XIT :W<:C)?RMN@2")/L<WR %F8_<ZL2/^^16B_C/1%U6XTP37;WUL T
MT$=A.[(#R"=J'@^M7]*UW2]<25M-OHKCR6V2HIP\;>C*>5/L0* .*N_$0U%=
M1L;SQ!!_9EWO1?*TFX6=(FX*;CE<X.-V/?%:-IXA\-VFI_:$O)!!%:1VEM"+
M.;]TH)+?P]_D'_ !7:4F1DC(R.U 'EEYJU]+KMSJ5KXSM85<;((Y/#\\GD1_
MW0=PZX!)QR0.P %ZYU+2)_[$OWUR276]++'[4^G3!)PZXD4H%X4\$8/RX'7O
MZ-10!YHNH:=;66LSV/B V^N:O*))KXZ7.ZQ@*%543 X51@9)Y)/M4>B:O+I\
M]K%>^+H9]-ASNM;?0IHC)P>KDL>IR>Y[GDUZ?10!YMXB/@W7+6SAADAM#;WL
M%TS+I4AWK&VXIP@X/3^AKN++5M*FLXGMKJ!(-N$4GR\ <8VG!'3IBM&J$VB:
M3<3--/I=E+*YRSO;HS$^Y(H F_M&Q_Y_;?\ [^K_ (T?VC8_\_MO_P!_5_QJ
MM_PCVB?] ?3_ /P&3_"C_A'M$_Z ^G_^ R?X4 6?[1L?^?VW_P"_J_XT?VC8
M_P#/[;_]_5_QJM_PCVB?] ?3_P#P&3_"C_A'M$_Z ^G_ /@,G^% %G^T;'_G
M]M_^_J_XT?VC8_\ /[;_ /?U?\:K?\(]HG_0'T__ ,!D_P */^$>T3_H#Z?_
M . R?X4 6?[1L?\ G]M_^_J_XT?VC8_\_MO_ -_5_P :K?\ "/:)_P! ?3__
M  &3_"C_ (1[1/\ H#Z?_P" R?X4 6?[1L?^?VW_ ._J_P"-']HV/_/[;_\
M?U?\:K?\(]HG_0'T_P#\!D_PH_X1[1/^@/I__@,G^% %G^T;'_G]M_\ OZO^
M-']HV/\ S^V__?U?\:K?\(]HG_0'T_\ \!D_PH_X1[1/^@/I_P#X#)_A0!9_
MM&Q_Y_;?_OZO^-']HV/_ #^V_P#W]7_&JW_"/:)_T!]/_P# 9/\ "C_A'M$_
MZ ^G_P#@,G^% %G^T;'_ )_;?_OZO^-']HV/_/[;_P#?U?\ &JW_  CVB?\
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
M05W5<]X;\-3^'KO52-2\^SO;R6\C@, 4Q/(VY@6R=PSTX'4YSQCH: "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH X'0O^2T^+?^O&R_DU4]>4:;\=/"L]@-DVIVES#?JG'F1HNY&;W!
M[_[(%;D/A35K3QAJGB&VUFR$FH111-#+I[,$6,87!$PYY.:M:;X0BMM9NM;U
M"]FO]7N(?L_VAE"+!%_<B4?=&><DDD]Z .=3Q9K-KJGA]+NZ@FEU#4'L[VU@
MBWP6_#E0DH'+KM&X$GJ>!4&FZS?:)??$#6+^_DO(=,GR(#&J[@(%95!_A&3C
M]3DYJW:_#C4K?2]"L#XE!CT2\%Q:E;%02@###_,<MAOO<#U4UJ_\(0KZEXB,
M]^9=+UT9N+/R0&#>6(R1)GI@9Q@$''/8@$5G?^+5U_2]UI+<Z9<HPOC)'%&+
M9L95H\.25)X(.3WS795R7AOPMK>CFWM]2\42:EI]F,6T)M5C<@#"^8X)+X'3
MIR 3TKK: "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "LO7O$.F>&=-;4-6FD@M%(#
M2K"\@4D@#.T'&20*U*X+XT?\DHUG_>M__1\= '26/BK1[_5!ID=Q+%?F/S5M
MKJVDMY'7U59%4L/IFMFN&U/P]J_B/QSX?U>:VCT^ST43.&:0/+/(Z@!<+P$&
M,G)R>F!6;I?B'Q*VF:WK]_JMNUCH=[?QS6D=F ;F.$':-V<IR!Z]\D]@#TNB
MN(L;WQ?)J6BW4=O/<:?=#_B8),+=(X0RY#PE6+X![-N)'O5;PWXLN-5U^#3K
MW4I+'5XII?MFCW4"H&CP^TPMMRXSL.=QR,GB@#L[#4XM0EO8XX+F,VDY@<S0
ME Y !RA/WEYZBJ]YX@L;'7].T6;SA>:AYA@Q$VP[%+-ENG0=.O(KC5\<:GI>
M@>+KZ_>"ZN--U8V-FJQ^6GS",(",DXW/D\YQFG:Q9W]K\3O IN]3>]5OMN0\
M2)M?R.2NT#Y3Z')&.M 'HM%><Q^(?%FMZ+!KWA^TN)B]R2EF_P!G6WE@$A4@
ML6\P/@9SP,\8Q4CZEXHU#Q%XPTRWUF"TBTN."2V=+-68;XV?!W$CJ.2<].,4
M >@EE7&X@9.!D]32UY5/JVI^(C\-=0.H36C:BS/-% J;/,%NYW88'WP#D#/K
MS7I6HR75OI%W)9F%KN.!VB-PVV,N%.-Y'09ZT 6Z*\_TCQ)J;^+M,THZD;Z"
M_P!,DG::2V"QK.A7F)E5=\9W>_;#5B_\)5XKC\!2^*9-5MV-CJ+0R6RVBA;B
M,7/E$$YRO!XQSQR3G@ ]8D<1QL[!B%!)"J6/X <GZ"L[0==LO$FD1ZGIYD-M
M([HID0HV4<H>#R.5/6LA-6O-<\7ZQHME>O8PZ1%")9(XT9Y)95+#[X("JH';
M))ZC'-'X2"0?#RU$K*T@NKO>5& 3]HDS@4 =/J>NZ?I,T$%S*QN;C/DV\,;2
M2R8ZD(H)P.YZ#N:KQ^)].>^6Q?[5#>M&\JV\MM(KLBXR5&/FZCIGK7)>#Y'O
MOBYXZN+SFXM!:VMN&_Y9PE6; ]B0&^M=_+:037,%Q)&#-;EC&_==PP?P(_D/
M2@"IH&NV7B31X=5T\R&UF9U0R(48[6*G@\CE34O]IQ?VW_97D7/F_9_M'F^2
M?*V[MNW?TW=]O7'->2^'M3UO0/AGI&L6E_$MG%J;0R61@!\Y)+MD;+GD'YLC
M&.G.:[B77M0M/B3=:9<3QMI<>B&_$:188,)=IRV23P#Z=>E '7UC:QXFLM&:
M9)(KFYDMX/M,\=K'YC119(WL,],@\#).#QP:Y:QUKQ?JEGH.MZ=:3RP7KQRW
M5I)]G6!+=QG,;;O,W*".O7G@=*70[6Z_X6[XG)U*=E2ULF92D>'4^;A3\O '
MM@^M '5:GXGTG1]!76[ZXDCTYD63SU@D<!6QM)"J2,Y'44P>*M,W0!DU"-9Y
M$BC>33KA$W.0J@L4P,D@9)QS6%\8/^24:_\ ]<4_]&)6G;SZ_)/I$-QIE@M@
M[?OY(KIIF7$99/E:-0/F"\YX./6@#I**\^\1Z]KWA_Q;%I[7R/9:U&8-,E=(
MU^S76X#$G'S+@Y'<_=ZD&M;5]7OK36=+\/6TEU-<SVLMS/<PK")=J%%^4/A
M27]#@#ISD '5T5Y^OB'Q/I=A;V.LVZ17M]K"Z?8W<GEDM P+"1T1BH<*K#'
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
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *CGE,$#R
MB)Y2HSLCQN/TR0*DI&^Z?I0!S.F>-[+6=(CU73M-U6YLI Q26.V^]M)4X&<]
M01TKH;2ZBOK*"[A),4\:RH2,':PR./QKRWX9-XC'P?TS^RDL"N)]AD9_,QY[
M[L#&-W7';IFNB\07>K1^/?#VD6&JM:6-_;71D1(8VVF-4P5)'7YCUR..AH [
M:HKJX%K:RW#))((U+%8URQQV KS6U\6ZMIVBZE97%\;F[B\2)HMO?31KN5)"
MF'< !2RAF[ $@9KKX-/UBRU2]:;5OM>DR6O[N*=5\Z.89W$%5 V$8X['I@4
M7O#^MVWB/0;/6+-)4M[M/,C64 ,!DCD D=O6M*O)_"6N7%EX'^'NB6LIMY=7
M#HUP%!,<<:L[;<@C<> ,@]36S/K'B#2_%.L^&[68ZC*^C/J6EO<!0R2!BGE,
M0 &!;:03]": ._HKSG2/$YU:TU86NLZE;:A::>[SZ=?P(EQ;2CG> 4PRGIW'
M3 &:3_A(]9/ACX>ZE_:#^?JMW:07P\J/;,LD3,W&WY3E1]W% 'H]%>?:=+XA
MU3QEXDLSXCF@L](O;9HT2VB)DC:(2-&>.AR1GK[\5!I^J^+/$&BZ3XAT@RAK
MB59I8)I(1;-;DG<@_C# ?Q9SD'/'  /2**\ZE\3W5OXN?2=8OKW2+F344%@S
MQ*;2\M]R_NU?:<.5SG)!W$8..*W?B-JMQHOP[UR_M6*7$=J5C=>JEB%W#W&[
M/X4 7+_Q78:?HUWK#QW$NG6A/F7$2!E(!PQ49RP!XR!],TP>+(#:PW;:9J:V
MTVS;,;<%0'( 8X.0.1SCBL/QE:16'P3U&SA $4&D"-0/0(!5S1?^$A;2_#JF
M/3SIYBC%SL9B_E^2<<$8^]MS0!U]8^L>(K71+_2[2YAN'?4KD6T+QH"BN03\
MQ)&. >F>E<GXQUO6_"_B.UF&K;M(U6-K2-)%B L;AB DQ.W+1C/.<X)&3R*D
M\=6UU#_PA-O]N>:Y&N1*;J:-<LWE2_,54 ?@,4 =](_EQ.^QGVJ3M49)]A[U
MS\GC"VMTT+[5IVHVTFL2K#%'-"%:%R"<2<_*< \#-8ND7VL1:UXQT.;6)[G^
MSX8)[2ZFBC\Q/-1R00JA2 4XX[US]U?:CKGA+X:WL]Y_Q,+K4HG>X:,'YC#+
M\VT8'X=* /6W;8C-M+8&<+U/TJEIVIK?:5;W\MM<6 G _<7BB.1"3@*PR<$G
M''N*X[3KO7]-\8ZIX7O-:EOXI-,_M&SO9(8Q+"=^QD8*H5N>1Q7/7-_J>N^
M_A[J-UJMTMU>:O:K.T010Y+.=Q&W&05&!T]CQ0![!6=JFN:?HTEA'?3B)K^Y
M6U@!_BD8$@?I^HJ]$C1PHC2-*RJ 7?&6/J< #/T KS'QQ:Q^+/[:B6&^:>PB
M$.ERP6DLBK<J1([AU4@?,J1^HVOZT >HT5S/AGQ=!K7@O3=<DCG9YT"31P0/
M*R2C(<;5!( 8'MZ>M7_^$DL_^?75?_!9<?\ Q% &O6'KGBJRT"^L;2[M[MY;
M^0Q6WDQ!Q(X&2O7@X]:E_P"$DL_^?75?_!9<?_$5QWCN[>ZU[P)<6<+%SJK[
M([I7@R1&W7*[A^5 '7Z5XHTS5M3NM+B>:'4;50\MI<Q-'(%/1@#PR^X)%;->
M;^"U;Q#X^UCQ)JFVTUFPB_LMM*7G[/'NWAR__+3=U!  QGK3Y=5\3>([/5KK
M0))X;JTOY;6U7=#Y'[I]I$@;YSNP2>F,C'3) /1::9$$HB+J)&!8+GD@8R<?
MB/SKSCQ%XHU#2]4FM]9N[O1+>XMXAI^H0QK):),5^=96VG!W\<\;1D8/-68X
M+F;XT7@35KQ8O[$BF5%,;(,S,-H!4X7Y0>.3ZT >@$X!.,_2J6DZ@=5TN"]:
MRN[(R@G[/=Q[)4P2/F7)QTS]#7$^##XDUZUEU"[\33A;:^O+4PK:Q8E569$)
M.W@@@'CCCIUJKH'B[5;_ ,*>"X;F](U#79Y4GO-B@JL8D8[1C:&.U5'&!D\4
M >ENZ11M)(P1%!9F8X  ZDU3O=1-G<6,2V5W<B[E\KS+>,,L(VD[G.>%XQGG
MDBN!\?V6N6/P]\6BZUN2:T\M9+,IA9EC. \<C!1E23QCG'!/:M;7+S5-&U3P
M?;0:M/)!>7WD7*RQQYE7RW89(48P0.F* .VHKAAKE]H7CC6+#6=2GGT^73_M
MVF@QQC:$R)8P54%F!*D YX/>B74]9@U/2/#DUQ=37LUA)>W<T)A20D,B[%)
M4*"YY S\H]Z .YK+U37[+2KJWLY/-GOKG)@M+=-\K@=3CH%']YB![U4\)KX@
MBL;J#Q"RR2QW+BUEW(9'@_@\P)\N\<@XX.*YCPL[7'QI\;O>?Z^WM[.*U#?P
MPE2S;?8M@GW- '6P^([=M5MM+N;2\L[ZY#M%%/$,,JC)(=2R'''&[//2MFJM
M]]GBA^V3Q[C:!ID..5(4@X_ D5YW/XBUUOAC'X[M]1;[2J"\>Q*IY#0[\&+[
MNX$+_%G.1Z<4 >G45Q$NN7VG>/M,-YJ,O]@ZQ8NUO%(D:K#<* Y4L%!P4R1D
M]0:CGUS5;=-!LS/=27&N7$TJG;$LD,"H9%C7("[MNP$G)^]WQ@ [NBO+O$=_
MXS\/^#/%%Y)?/"MJT4NFSR>5)/L8A720 ;>">#UYZ\5N+=ZQI7Q)T_3;C5I+
MVSU.RGE:&2)%6&2,I@Q[1D+AB,,6/N: .UHKS&+Q%K-K?^&7?56OC?:D]G>O
M#&OV-P1(0L1*ACMVCYAD<'))IL]]XDNT\=;/$EQ!_8LA>T,=O%GB 2!6RIRN
M3Z ^_:@#TYI$1D5W56<[4!.-QP3@>O )_"G5YA<W%[K7BGX<WS:C=6S:AI\]
MQ)'!LV(_D(V0&4C)WD<YXZ8KT^@#.N=<T^TURQT>:<+?7R2201_W@F"WZ']#
MZ5HUXWXOG-_9W'C"RM;Y]4TV]2YL'%G*8VM(<@KY@7;M<&1\YZ,H[5VWBCQ/
M-#\/QX@T0[DG6"03A-WDPNR[I-O<JI)YX&.> : .NHKAK*[U6Y^(-QIEEK<U
MQHL>FI<M*J12>7,S%0F_;W4;P/Z$5A:-X@\0V_PY?QKJ&MO=FW@NE-D;>-8Y
M7$S(C,0 1@CG&!C'N2 >K45Q*R>*-/UBUOS)<3Z.+>4Z@EV\&<A=R/%Y?<D$
M$'C!'>J.FW_B[6-/\/Z[I[2%;IHI[R":2$6YMW&6"8^<,N1@DY.#GTH ]$HK
MR][_ ,1W>F^.95\1W,#Z+<RFT,=O#DA(5D"ME3E<^F#SU[5976==@N?!.K2Z
ML\L6NND5S8^2BPH'@,@*<;P01U+'/L.* /1Z*\Y?5?%'B/3]2O?#[SPW5O?R
MV]JA:'[.1%)L(D#?.=P!)Z8R,=,F=9]?U3Q[J6BG7)K&U73(+D+;Q1,T3NS
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
M1]:[>@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH *BN(Y);=XXI?*=A@2!0VWWP:EHH
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
MI5-N!D8![DYJK8^ M/L;#5-)6YGDT/4#(6TV0*8X=_WA&0-RC/.,\'I7644
M<KX>\&S:&T0G\0ZEJ4-JI6SBNRFV#@C)*@%R 2 2> 3Q5=?AUI\GAB_T*[O;
MJ>"ZNVO5F&U)8)F;?N0@<8;D<5V5% ''-X!%]H%]I>MZ[J6J-=P?9Q<3%$:%
M,@_*%&,Y522<DX%/3P,QUBVU:ZU_4;F\BLGLI'81J)8V(."%48P0#QR>YQQ7
M744 <Y;^$U-_IEWJ5\^H2:9%)%;-+$JL0Z[6+D?>.WC@ <G()Z4-$^'T>A7"
MPV^NZF^BQR^=#I3LIBC;.X#=C<5!Y"YQZYKLJ* .8_LMM7\=6^N2*1::7;20
M6A88\R60CS''^R%4*#W);L,GIZ** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
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
M-:*BQ.?WJC)4G&!QW/!P<=#5A?%>BM?VUG]K*R73F.W=H76*9AU5)"-C'@\
M\T ;5%07EY;Z?:275U*(X8QEF(S[  #DDG  '))K*NO$&E3Z;J@DO;BR6U@S
M<2M"\,D"N#AQN7KP2" >E &Y16)9:OIECX=TB8ZE-=07,426L\H9YKK*94[0
M,EB/F/'J3BHAXW\.>1>S-J:(MB&-TKQNK0[3@AE(R#STQ0!T%%85EXRT#4=3
MM].M;\/<W,1E@4Q.JRJ!D[6(VL0#R <CN.*J6>O:':2^(=0.OSSP6TRF[68D
MQV9"#Y4&WH0,G&>30!U%%8-EXT\/ZCJ5K86NH![B[B,MN#$ZK* -Q"L1M+ =
M5SD=Q4E_XLT333<F[O=D=HZQW,HB=HX6;& [@%5/(ZGC(SU% &U14%M>6]Y9
MI=V\GF0."RLH/(^G6O/]7\:MKO@+Q7>:6]_I\^G"X6&7R'C;]T #EF7 );/R
MY# >G- 'H]%<WH7BS2;Z2QTD7YDU)[19=K(X$N%&XJY&UR"><$XHTG5]'3^W
M;V+7)[N&&Z/V@3$E+5MJ_NX_E''0X&>3ZT =)15"QUBSU&YN+>W:83VZHTL<
MT#Q,H;.TX<#(.UNGI5FZNH;*SFN[AQ'!!&TDCGHJ@9)_(4 345P_@/Q-JFJ:
MCK>DZ]%Y&HVTRW4,1[6TPW(ON5Y4^]=/?:YI^G7(MIY7-QY1G\F&)Y7$8."Q
M5 2!GC/<T :-%<Z?'?A@6-M>_P!L0&VN9UMXI0&*L[8P.GOUZ"IK7Q?HE[9+
M=6MU).C2R1*D=M(TC,GWP(PNXXXR<8Y'K0!N45DVWB;1[S24U.WO5EM7D\I2
MJ,7,F<;-F-V[(/RXS[55D\;^'8=,O=0FU$0P6,GE70EB=)(6[!HRNX9[<<]J
M .@HKGSXW\.B_DL6U$+<+&90K1.!(H./W9*XD.2!A23FK.G>)]&U32[C4K6]
M4VML[1SM*C1F)EZJRL 5/(X([T :]%8D?BW1'FNX6NV@FM(1/-%<P20N(^F\
M*Z@E<\9&>>*@M/'7AN_NK"WMM2#O?C-LWE.$D.,[=Y7:&QSM)S[4 =%17.:1
MXOMM7\4:MHT5O=(=/:.,N]M(H9BI8Y)&%&-N,XSVR,5T= !17F_Q ;7O#GA2
M^UBW\1WRW1O4$<:K%Y4<;S!0H!3/"$<DGFKGC&RUG1?">O:A:^)-198M/=T$
MGEAXY%Y!4J@X(R#WX&* .\HKG-#\6:1?2V6DK?F34GM5EVLC@2X W%7(VN03
MS@G%)I.L:.@UV]BUR>\@ANS]H\XDI:OM7]W'\HXZ<#/)]: .DHJA8ZQ9ZC<7
M%O;M,)[=4:6.:!XF4-G:<.!D':>GI5'6;S3X]>T2UN-8N;2[DF8P6L+$+=?(
M<JXP?E R>HY% &[165+XCTN&Z^SO-(6^T+;%U@D:,2L0 A<+M!R0.O!-7[N[
MM["SFN[N9(;>%#))(YPJ*!DDF@":BLK3_$>EZG?M8VTT@NUA%QY,T$D3&(G
M<!U&5SQD5A_$R[O=/\(&\L+V>UFCN[9286 W*TR*03C.,,>F* .QHK-U+7=/
MTDD74DI=8S*R00/,RH/XBJ D#KR?0TW_ (2/2396-W'>I-#?\6AA!D,W!/RJ
MH). "3QQ@YQ0!J45A0^,O#T]K>7*:G&(K+/VK>K(82#@JP(!#9XQC.2*L6FM
MZ?K$]WI]K<S17D"*TD;PM%+&K9VL%D49'!YP1Q0!JT5R/PQOKS4OA[IEW?W4
MMU=.T^^:5LLV)G S^  K9U36["R=[2:YG6X,)E(MH&E>-.F\A5;:,YP2.<'T
MH U:*X;X?>(=WPTTG4]8U"2>:XDE0329>29C,X4* ,L<#@ =![5T^GZ_IFI_
M:Q;7.'LSBYCF1HGAXR"RN 0".02,$4 :5%8MOXLT:YO8K2.ZD\^>)IH%:WD7
MST7J8R5Q)Q@_+G@YZ4W_ (3#0O[$AUG[=_Q+II?)6?R9,;]^S!^7*_-QSCF@
M#<HK#O/&&A6.H7%A-?9O+>,2R010O(X4G P%4ECUX&3P:K+\0/"[P64Z:JCP
M7C*L4JQ.4#,< .P7$9)XPV* .EHK,U/Q!IVD;Q=RRYCC\V188))C&G/S,$4E
M1P>3Z'T-59_&?AVWDLD?582U]$9K;8"_FH!G((!]L#J20!R: -VBN2U7X@Z1
M:>"]0\1V+2WD5H7B,:P.&68?P.I *<D9+ 8!]Q72V5W'?6B7$:RJK=I8FC;_
M +Y8 _I0!8HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** /-O&*6)^+?@FYD2,^4+I;N7;D(/+#0AST'S\
MKGOS6O\ $RTO[CPQ!/8027)L=0MKR>VB&6FBC<,R@=ST./:NRHH X.[,'B;X
M@>%=4T:83V^GQ74EW<1YVJDB!5C8_P!XMSM/(VDD"N(N+Q8/A)J/A]H+IM4M
M-5)GMUMW)0&^#@YQ@@@C&.N>*]SHH HZC<%=#N[F&T:[(MGD2V92#*=I(3!&
M1GI@CO7E&G:E%<ZY\/=1 NS'$+B.:**R>."S9K?:(44+V/&22>,DXKV6B@#S
M7PK ^H:#X^LK)@EY=ZI?FW8_+N#H C@]UST/3BJOA2^T#6H-$TZZTG56\0:8
MT1DM+HW.VTDC #298[ !@X]<@8YKU2B@#E_B#?-I_A&><:?'?*)H0ZR0F98E
M\Q<RE!RVS[V/4"N#O([K4M?\76^E2ZA<W&I>'D2UN9H&3SF'F9P=JJH.<#@#
M)XKV2B@#R'4/$5CJV@>!8[6"Z%Q9:Q9BZM1:2;[8I&ZLK +QC]0,CI6]XDL=
M2TWQS:W^CQ2>7X@MSIMXR#'DR*"T<Y]U3S!^ %>@44 <%XT2WLM8\#V\2B.&
MVU-3M4<11B)U!/H,D#)K'U0SZ;KMYJ/AK4':XDU-%OO#UVF];EMZJ98L\J<
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
MJ5GYGV>X7<GFQE&QG'*GD=*NT4 >?_&-PW@":W0,\\ES;E(D4LS!959B .>
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
MIA%-I=O''*\+*K,K.67)&,@$9'7\J -W4?%VC:4SF\N)$ACE$,MR(':&)S@
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
M4V+;_7XA;]R/LQ3Y^/E^;CG%1LQ,GQ1_<SXNH@+?]RW[[_1=GR<?-\W'&>:
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
M7CN)/L]Q<"UCC,3"5IRVWRMA&0VX$8_'IS0!OT5R^H>.;"TT#6]1BM[J6?2
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
M+22!XVN81-O 4,!NR.1],=:]DHH X6]4>)/&_AC6+".Y6UTJ.ZFN9I+=X_\
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
MBM9+B6)0J*HX5F. S?[()%8VHI)XPUKPI<VME>VHT^Z-[=-=6SPF(",CR_F
MW$L0/ER, GTS?^)NGW>J?#K6+2QMY+BY>-&2*,99]LBL0!W. >* ,GQ!JIM?
MB%X0O&_M"&*XAOA):9=BY1%V_N@2-WS'D#OS6I=^*]"U?P7K%[<G4(+*W\VU
MOD6)TN(& ^8$+RIP0<].>M4-2GFU+X@>#=1BTW4DM88KWS7DLY!Y7F(@3?Q\
MN2IX/([XK%DMKU_#'Q*@73=1\W4+F=K1/L<H,P>%44J-O/S T =Y'K=G;0:?
M:VL5U=2RV@GBA3#2"$!1N8LP_O*.I)/KS6EI]]%J>G6U] '$-Q&LJ"1=K $9
M&0>A]J\_U32[;5+30_-36]*U&UTY3;:I96TN^%\ -%(H4Y!V@[6'//(SSV'A
M.35I/"FG/KL:QZF81YZJNWG)P2HZ$C!([$F@#,\?W6KG0GTOP](8]8NTD>%U
MZHD8W,?Q.U![R"M/PIK\7B?PMIVLQ8'VJ$,ZC^!QPZ_@P(_"LFPM/^$BU_4M
M3N/[6LO((M+52LMMNB #%^0,[G)_!5K)\$6]QX9\6^(/#HLM1;1I9Q=V-U);
M2&,.P'FQER,=>0>AYYH WIO'FC06MO>N+MM/N;@VMO=Q6YD267)7:H7+')!
M.W!QP>E,O?B!H]GJ%U8>1J<UW;1QR20PV$C.%<X#;<9P.YZ#Z\5Y[I-W80Z#
MIVE:E8^((-%L+\WL*C29)%55D9T!G0E60$YR%Y'?N>UT@R/\5M9O5M;K['<Z
M=;1PW)MW$3LI<D!\8Z,._/:@#6U/QGI>DQRW%RMS]@@G%O/?)'F&%\[<,<YP
M"0"0" >"00:FU3Q19:4MTQANKI+.,2W;6L>\0(1G+<C/'.%R<<XP17 Z5;C2
MI=1\-ZWX)N-4N&O)Y+2[%FLMO<QR2%U,DAX0@MSGICO4\L/_  CWB_6H=8\)
MW6KV&J/'/:7-E9?: I\I8VB<?PCY!C/&* .OF\<:)%=Z=;1R7%Q)J-NUS:&"
MW=Q*@ /RG')Y' Y&><52/Q(T7^R[J^%MJ;+92/'>Q+9L9+7;]XR#HHQSUY&<
M=#C/FLYK?QWX,:+1Y;6UM+.[25+:V8PVQD";$W*-O\)'''%4((;O^Q/B3&=.
MU /?S7#6BFSE!G#0*B[?EYRP(_7I0!W=QKUI&MM]G66]ENHC/!#; %GC&/GY
M( 'S#DD=0*R3\0_#PTZPOO.N/*O;O[$@^S/E)LD%'X^5A@\'DXXS7&M!=:/<
M>&-:O?#E[J>F_P!AQ:==01VA>>TF3!#&,C.#DJ<>GTS?UNT#6'AJ33?#5Q80
M?\)%#?/;P61WI$%8-+*J A6)(X/.,9YR  =/'XWL)[767BL]0^U:3&))[.6
MQRLI!*LH;L<'GMCG%6_".MR^(?"^GZG/;202W%O'*P9<*2R@Y7U'-<P]I=W/
MCKQ<8[*[$=YH\5O!,]NZQR2*),J&(Q_$.]6_"6L3:3X!\.V]QHFL>=&MMI\D
M8M"&C?:%9V!((C!'+=.1C- ';T444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %8
MVO\ AU-=-G*M_>6%W92&6WN+5P&0E2IRK JP()&"*V:* ,G3=%EM)EN+[5+O
M4[E 522X6-!&#UVK&JC)QU.3[X-)KVB2:W';)'J^HZ<(I-[FRE"&48P58D'C
MZ5KT4 16MM#96D-K;QB."%!'&B]%4# 'Y5+110 4444 %%%% !1110 4444
M%%%% !1110 4R:,S021"1XRZE=Z'#+D=1[T^B@#&\/\ A]="@D#ZA>ZC=RA1
M)=WL@>1E7.U>   ,GCU)/>MFBB@ HHHH **** "BBB@ KE;'P9/I9:"P\3:O
M!IQ=G%I^Y<+N)8A7:,N!DGOGWKJJ* (K:VAL[:.V@39%&H55SG 'N>OUJ6BB
M@ HHHH **** "BBB@ HHHH *BN;>.[M9K:4$Q3(T;[6*G!&#@CD5+10!RVG^
M#9[&V2P;Q+J]QI<:"-+23R1\@&-AD$8<C''W@?>NH551 BJ%51@ #  I:* "
MBBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **JVM]'=W%Y#&K_P"BRB%V
M(X+;%;CUP&'XY]*L.ZQ1M([!44%F8G@ =Z '455M+T7NEP7T<$H6:)95B8 /
M@C(!YP#^-<U'\2= >RGOG74(;&VG-O/<O9OY<4@."&(!Q@D#/3WH Z^BF12Q
MSPI-"ZR12*&1U.0P/((/<4^@ HJO?7:6%C/=R)(Z0H798UW,0/05!HFKV^OZ
M'9:M:+(MO=Q"6-9  P4],@$\T 7Z*Y;4O'VDZ3;7-U=VVI+:6TYMWN!:,8RX
M?9@'O\W&16II^OP:AJ$EB+2^MITB\W%S;F,,N<?*3P>>OU% &K1167XBUVV\
M-:%=:O>13R6]LNYU@3<V/ID#\S0!J44R&43P1RJ"%=0P!ZX(S67XB\16GAFP
MCO+R*XDBDF2 >0F[#.P49R0 ,D4 :]%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110
M4444 %%%% !1110 45E7WB+3M/UO3M(G>47FH,RVZB)BIVJ6.6QM' Z9SR.*
MMZC?1:9IUQ>S*S)"A;:@RS'LH]23@#W- %JBN9UGQWI&@W.R^COA;K(L<UZE
MJ[6\#'@!Y ,#J,XSC/-;NH7T6FZ;<7TP9HH(S(0@RS8'0>I/0>YH LT5RNL_
M$'1M!N9(KR+4##"RK<W<-F\D%NQQP\@& >1G&<9K8OM=L;&"TD,AG:]8):1P
M89IV(W#;VQ@$Y)  &2: -*BLB+Q+IDFEW=^\K11V;F*YC=#YD4@Q\A49)8Y&
M ,[LC&<BJ6B>-]*US5I=*2*^LM1CC\[[+?VK02/'G&]0W44 =)165KGB+3?#
MRV7V^4JU[=1VL"*,L[N0!QZ#/)[?E6K0 4444 %%%% !1110 4444 %%%% !
M1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%
M%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 444
M4 %%%% !1110 4444 %%%% !1110 5!>7<5A8W%Y.VV&"-I9#Z*HR?T%3UE>
M(E1M(998KJ6+S8R\=K$9'=0X8KM'8XP?8F@#F-6O-4\,^'-)N7MKUH))WGUA
M[",230F0,Y(!!RH=L$@9"@58@U*/7/!MK!;:P-635KIK9+H*%+0EV9PP &UE
MA5EZ#D#UI=2UR6[N[2ZM+/Q#:2VV\;?[+9TE#8RKC(.. >"#GO5#138Z+="X
MBTCQ [E[B9Q_9K*K2S,K.X Z8"A0.P)Y.2: /0@   !@#M7COAK3]9UOP1XN
MT;38+()?:S?0-<7,[#RU9L,=@0Y('3D<UW[^+ 8V":+KJN1PQTYS@_2L#PI+
M%X5M[V".R\1W4=W=27;^;IA!$CD%L$8XXZ4 3M:7F@C2O#UKK$JVMKI(BBAM
M$5KN:9<*)&#*56, =20,G!)XK,TSQ;K=]HOP^U%[W:^K7'D7L:Q)LE 1SG[N
M5.4'0@5:OFCNO%2Z];P>*;.9[46=Q%#IV5FC#%ARP)4Y)Y'/TZUEPZ-;6OAC
M2=(ME\5I-I-T+FRNVTP,T9&X;=N,%<,>O/OVH Z*UU34+CQ'XXTNYNVGM+&W
M@:V1D0&/S(G9AE0"1D#KFKGPT_Y)IX<_Z\(_Y5SUG"EGJ.M7X3Q5+<:M#'%.
M9=-! **5#  #GD\# YZ'%:OAS4X?#OA^ST>/2_$-Q%:1B*.1]-8,5'3..,T
M5OC&BI\-;P*H4?:K8X QR9T)/YUN>.=>;PQX4N]7ABC>ZCV0PF09"M(ZH"?8
M$@D=\5@^+YH?%^B'29K#Q':V[R)([0Z:2Q*L&7D\ 9 [5<U;4K+7_#]QH^K:
M'KUQ!<Q[)2NG.I/.0P]"" 1[B@ U;4=5\+^)/#J/J,VH6&JW!L9XYT0,DI4L
MDB%%&!P00<C'3%<OX@U*^\6_!S7O$0U&:""=)_(M$1-@A20IM;*[BS!22<C!
M(QP.=NTG N=-GU2U\1ZB^F _9?,TLIABNW>^/O/M)&>!R3C/-8DNA6_]F:MH
M]G_PE=KHNI,[M8KI881,YRVQB,A2>=OZ]: .HN-7NE\4Z/HDMV^GZ;-I+7"W
M"[09IU*CRPS @;5RV!R?H"*Y'5;_ %K5?A&;[5;OSYI-5MT@D:%45D6Z55D
M4#(8 '^7!J'Q/KT-MJMD+J^\3Z3':V0@AN)=*287)+9;*%-H(VKR "<CICF]
M]HO_ !'X??3M4E\0WEF9X;FWO%T012OL(8*5 VX#*#G )S^) .EL[[6=/^(E
MWHEQJQOK>;2#J$7VB)$$,BR[" 4 .PY'7)&.M9>F^(=8C\1>$K>35)+Z+5$N
M$O91$HMGD2(N&@.U6*@C /((/4GFGWJP:CX@EU:ZL?$1,VFOIDD*:8RJ8G.6
M(/4-GOG\*S[32DMSH#23>+Y7T0LMJ3IBC$139L.%Y^7 W=?3% "RZKXGF\+>
M--27Q'-%-H6H70MMEM#ATB16"/E3D=>F#DDDGH-8:MK=IXE\(SS:JT]KKJR+
M<61A18XB(3(IC(&\8(P=S'.>U4$M(ET7Q#IAM_$ABUR:6:X?^RCN0R*%<)Z#
M &,YQ4TWE23^'IY8?$$?]A9,3-I9"O\ )L)D/IM],=S0!Z316)_PF7AG_H8-
M,_\  I/\:/\ A,O#/_0P:9_X%)_C0!MT5B?\)EX9_P"A@TS_ ,"D_P :/^$R
M\,_]#!IG_@4G^- &W16)_P )EX9_Z&#3/_ I/\:/^$R\,_\ 0P:9_P"!2?XT
M ;=%8G_"9>&?^A@TS_P*3_&C_A,O#/\ T,&F?^!2?XT ;=%8G_"9>&?^A@TS
M_P "D_QH_P"$R\,_]#!IG_@4G^- &W16)_PF7AG_ *&#3/\ P*3_ !H_X3+P
MS_T,&F?^!2?XT ;=%8G_  F7AG_H8-,_\"D_QH_X3+PS_P!#!IG_ (%)_C0!
MMT5B?\)EX9_Z&#3/_ I/\:/^$R\,_P#0P:9_X%)_C0!MT5B?\)EX9_Z&#3/_
M  *3_&C_ (3+PS_T,&F?^!2?XT ;=%8G_"9>&?\ H8-,_P# I/\ &C_A,O#/
M_0P:9_X%)_C0!MT5B?\ "9>&?^A@TS_P*3_&C_A,O#/_ $,&F?\ @4G^- &W
M16)_PF7AG_H8-,_\"D_QH_X3+PS_ -#!IG_@4G^- &W16)_PF7AG_H8-,_\
M I/\:/\ A,O#/_0P:9_X%)_C0!MT5B?\)EX9_P"A@TS_ ,"D_P :/^$R\,_]
M#!IG_@4G^- &W15/3]5T_5HWDTZ^M[M$.UF@D#A3Z'%7* "BBB@ HHHH ***
M* .*\7_\CWX$_P"OVY_])WK;UC_3-5TK3!RK2F\F'^Q%@K_Y$:(_137-:S=)
MJ^MZ3J?V+Q# ^ER/+#&NEEE9F4H=V>2,$],5I1:]#'JUQJ#:/K[22Q1PA3IS
M815+'CZECGZ#TH @^)B:F?"%U]BTZTOK&/$U_!)*R/+"AWNJ8!&2!R2>F<<X
MK1N+R+74T"&!2(+W9J#JPP1#&%=?Q\QHACTS6!/=W5X]]!>OXHGTV\9MUK_9
M(4HC=8Q(!G;CC^]COGFM.WUJVM]2DO$T371FWCMXXQIS!8D4L>/KNY_W1Z4
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
M%<790^*5UO2;R.Y:73)$(U!;J>-@^0-CQ!5^4Y[9P0?7FNTH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ J*YA
M>>VDBCF>!G&!(@!*^XR"/S%2T4 8?A/PS!X1T"#1K2[N;BU@W>4;C:64%BQ&
M549Y)JAJ'@2UOM5UF\&IZA;Q:S (;ZVA= DFU-BMDJ64A?0@''.>E=710!R4
MG@2(6V@BWUG48+S14:*WO!Y;.T;*%965D*XPJ]N,9ZTU/A_:)I.OZ<-4U'R=
M;D>2Y+,C%2RA6VDJ>2 .N?;%=?10!6TZS_L_3;:S$SS""-8Q)(!N8 8&< #/
MX5D^)?"L7B:336GO[NV&GW<=["L 3!E3.TG<IR.3Q6_10!DZ_P"'K/Q)HQTW
M4&EV[ED2:)MLD<BG*NI[,#45MX;C^WK?ZG=2:E=I;M;(\R(JI&V-^%4 9; R
M?; P*VZ* .$_X5C;#1#H::]JJ:0DZ3V]J#&?(*N'"JY0L0". 2<>]9&LR+_P
MF>HM=:[X@T*=4A@@:*T\Z.[15)\Q3Y;*#N=AM&.F>^!ZE10!Q5MX:OM>L--D
MU?6+]VTZ_%Y9S-;QPRRA5PIE0KQ]YQC"G&,@&K.H> ;'5+K7IKN^O'76K=+>
MXC!0*BIG84PN01DGDG/>NLHH Y2W\$"'6;#5Y=>U2XOK2V>U\R1HP)$)! ("
M <%0>,$]R:@/P[M#X,D\+G5M0^PR3F<O^Z\S)D\W&=F,;^>E=E10!A2^&5F\
M46.OR:C=&YL[=K=8P(PC*V"V?ESDD#H16[110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 <NG@TP^)M0UZWUW48;N^C2.952 IM084 -&<8YJWI
M?A/3M-O+R_9I[S4;U/+N+RZ<-(R?W!@ *OLH K=HH X>W^&=K;V&E60UW5VA
MTFZ%Q9 O&/* ##9PG(PQ&3DCL16JG@RP&JZS=/<74EMK"XN[%V7R6;9Y9;IN
MY7MNQWQTQT=% '*>'? Z>'Y(5_MS5;ZSM?\ CSM+N56C@XP.@!; .!DX'IWK
MJZ** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***1F51EB /4TFU%
M7>P"T5'Y\7_/5/\ OH4>?%_SU3_OH5C]:H?SK[T/E?8DHJ/SXO\ GJG_ 'T*
M//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?
M8DHJ/SXO^>J?]]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_P">
MJ?\ ?0H^M4/YU]Z#E?8DHJ/SXO\ GJG_ 'T*//B_YZI_WT*/K5#^=?>@Y7V)
M**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO^>J?]
M]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_P">J?\ ?0H^M4/YU]Z#E?8DHJ/S
MXO\ GJG_ 'T*//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0
MH^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZ
MI_WT*//B_P">J?\ ?0H^M4/YU]Z#E?8DHJ/SXO\ GJG_ 'T*//B_YZI_WT*/
MK5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?
M]]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_P">J?\ ?0H^M4/Y
MU]Z#E?8DHJ/SXO\ GJG_ 'T*//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?
M0H\^+_GJG_?0H^M4/YU]Z#E?8DHJ/SXO^>J?]]"CSXO^>J?]]"CZU0_G7WH.
M5]B2BH_/B_YZI_WT*//B_P">J?\ ?0H^M4/YU]Z#E?8DHJ/SXO\ GJG_ 'T*
M//B_YZI_WT*/K5#^=?>@Y7V)**C\^+_GJG_?0H\^+_GJG_?0H^M4/YU]Z#E?
M8DHJ/SXO^>J?]]"CSXO^>J?]]"CZU0_G7WH.5]B2BH_/B_YZI_WT*//B_P">
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
MVM<O] $?GV-9ND:#J,&M6EA=IKTC6VKS7A/[E+-5+R.)1)Y99B0X!3=G+'.
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
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
$0!__V0$!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807975067552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2024 </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-34218<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">COGNEX CORP<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">MA<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">04-2713778<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">One Vision Drive<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Natick<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">MA<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">01760<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">508<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">650-3000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value $.002 per share<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">CGNX<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="nump">171,662,056<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 31,  2024<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000851205<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CurrentFiscalYearEndDate', window );">Current Fiscal Year End Date</a></td>
<td class="text">--12-31<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2024<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896566752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Operations - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 210,797<span></span>
</td>
<td class="nump">$ 201,124<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of revenue</a></td>
<td class="nump">68,860<span></span>
</td>
<td class="nump">57,384<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross margin</a></td>
<td class="nump">141,937<span></span>
</td>
<td class="nump">143,740<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ResearchAndDevelopmentExpense', window );">Research, development, and engineering expenses</a></td>
<td class="nump">37,105<span></span>
</td>
<td class="nump">38,542<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general, and administrative expenses</a></td>
<td class="nump">90,628<span></span>
</td>
<td class="nump">83,037<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Operating income</a></td>
<td class="nump">14,204<span></span>
</td>
<td class="nump">22,161<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax', window );">Foreign currency gain (loss)</a></td>
<td class="nump">46<span></span>
</td>
<td class="nump">394<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentIncomeNonoperating', window );">Investment income</a></td>
<td class="nump">3,120<span></span>
</td>
<td class="nump">3,587<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other income (expense)</a></td>
<td class="nump">196<span></span>
</td>
<td class="nump">73<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income before income tax expense</a></td>
<td class="nump">17,566<span></span>
</td>
<td class="nump">26,215<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense</a></td>
<td class="nump">5,544<span></span>
</td>
<td class="nump">600<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 12,022<span></span>
</td>
<td class="nump">$ 25,615<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDilutedAbstract', window );"><strong>Net income per weighted-average common and common-equivalent share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic (usd per share)</a></td>
<td class="nump">$ 0.07<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (usd per share)</a></td>
<td class="nump">$ 0.07<span></span>
</td>
<td class="nump">$ 0.15<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted-average common and common-equivalent shares outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (shares)</a></td>
<td class="nump">171,692<span></span>
</td>
<td class="nump">172,624<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (shares)</a></td>
<td class="nump">172,594<span></span>
</td>
<td class="nump">173,903<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Cash dividends per common share (usd per share)</a></td>
<td class="nump">$ 0.075<span></span>
</td>
<td class="nump">$ 0.070<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends paid during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-15<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 52<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482635/260-10-55-52<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionGainLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482014/830-20-35-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481956/830-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481926/830-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481839/830-10-45-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GrossProfit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.1,2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479557/942-235-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 940<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481913/940-20-25-1<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-10<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -SubTopic 20<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482659/740-20-45-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIncomeNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIncomeNonoperating</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 730<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482916/730-10-50-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 912<br> -SubTopic 730<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482517/912-730-25-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481283/985-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ResearchAndDevelopmentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896482768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 12,022<span></span>
</td>
<td class="nump">$ 25,615<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Available-for-sale investments:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on available-for-sale investments, net of tax</a></td>
<td class="nump">359<span></span>
</td>
<td class="nump">5,426<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax', window );">Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations</a></td>
<td class="num">(2)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent', window );">Net change related to available-for-sale investments</a></td>
<td class="nump">357<span></span>
</td>
<td class="nump">5,426<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_CurrencytranslationadjustmentsAbstract', window );"><strong>Foreign currency translation adjustments:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments</a></td>
<td class="num">(16,156)<span></span>
</td>
<td class="num">(359)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent', window );">Net change related to foreign currency translation adjustments</a></td>
<td class="num">(16,156)<span></span>
</td>
<td class="num">(359)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent', window );">Other comprehensive income (loss), net of tax</a></td>
<td class="num">(15,799)<span></span>
</td>
<td class="nump">5,067<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income (loss)</a></td>
<td class="num">$ (3,777)<span></span>
</td>
<td class="nump">$ 30,682<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_CurrencytranslationadjustmentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Currency translation adjustments [Abstract]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_CurrencytranslationadjustmentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of other comprehensive income (loss) attributable to parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-19<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 20<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-20<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(3)<br> -SubTopic 10<br> -Topic 810<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-1A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of reclassification adjustment from accumulated other comprehensive income for unrealized gain (loss) realized upon the sale of available-for-sale securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-15<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-17A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894680096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax', window );">Tax effect of unrealized gain (loss) on available-for-sale investments</a></td>
<td class="nump">$ 117<span></span>
</td>
<td class="nump">$ 1,858<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892918656">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 138,859<span></span>
</td>
<td class="nump">$ 202,655<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Current investments, amortized cost of $141,876 and $132,799 in 2024 and 2023, respectively, allowance for credit losses of $0 in 2024 and 2023</a></td>
<td class="nump">139,334<span></span>
</td>
<td class="nump">129,392<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, allowance for credit losses of $1,339 and $583 in 2024 and 2023, respectively</a></td>
<td class="nump">138,556<span></span>
</td>
<td class="nump">114,164<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnbilledReceivablesCurrent', window );">Unbilled revenue</a></td>
<td class="nump">2,737<span></span>
</td>
<td class="nump">2,402<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">170,871<span></span>
</td>
<td class="nump">162,285<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">71,173<span></span>
</td>
<td class="nump">68,099<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">661,530<span></span>
</td>
<td class="nump">678,997<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermInvestments', window );">Non-current investments, amortized cost of $285,376 and $250,790 in 2024 and 2023, respectively, allowance for credit losses of $0 in 2024 and 2023</a></td>
<td class="nump">278,426<span></span>
</td>
<td class="nump">244,230<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant, and equipment, net</a></td>
<td class="nump">104,111<span></span>
</td>
<td class="nump">105,849<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease assets</a></td>
<td class="nump">74,113<span></span>
</td>
<td class="nump">75,115<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">386,157<span></span>
</td>
<td class="nump">393,181<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Intangible assets, net</a></td>
<td class="nump">105,054<span></span>
</td>
<td class="nump">112,952<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">397,563<span></span>
</td>
<td class="nump">400,400<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">6,279<span></span>
</td>
<td class="nump">7,088<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">2,013,233<span></span>
</td>
<td class="nump">2,017,812<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">27,459<span></span>
</td>
<td class="nump">21,454<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses</a></td>
<td class="nump">70,429<span></span>
</td>
<td class="nump">72,374<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Accrued income taxes</a></td>
<td class="nump">40,433<span></span>
</td>
<td class="nump">16,907<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityCurrent', window );">Deferred revenue and customer deposits</a></td>
<td class="nump">39,983<span></span>
</td>
<td class="nump">31,525<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">9,798<span></span>
</td>
<td class="nump">9,624<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">188,102<span></span>
</td>
<td class="nump">151,884<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Non-current operating lease liabilities</a></td>
<td class="nump">67,367<span></span>
</td>
<td class="nump">68,977<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes</a></td>
<td class="nump">239,538<span></span>
</td>
<td class="nump">246,877<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent', window );">Reserve for income taxes</a></td>
<td class="nump">28,144<span></span>
</td>
<td class="nump">26,685<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxes', window );">Non-current accrued income taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">18,338<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">893<span></span>
</td>
<td class="nump">299<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">524,044<span></span>
</td>
<td class="nump">513,060<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and Contingencies</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValueOutstanding', window );">Preferred stock, $.01 par value &#8211; Authorized: 400 shares in 2024 and 2023, respectively; no shares issued and outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValueOutstanding', window );">Common stock, $.002 par value &#8211; Authorized: 300,000 shares in 2024 and 2023, respectively; issued and outstanding: 171,662 and 171,599 shares in 2024 and 2023, respectively</a></td>
<td class="nump">343<span></span>
</td>
<td class="nump">343<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">1,047,643<span></span>
</td>
<td class="nump">1,037,202<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">502,338<span></span>
</td>
<td class="nump">512,543<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss, net of tax</a></td>
<td class="num">(61,135)<span></span>
</td>
<td class="num">(45,336)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total shareholders&#8217; equity</a></td>
<td class="nump">1,489,189<span></span>
</td>
<td class="nump">1,504,752<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders' equity</a></td>
<td class="nump">$ 2,013,233<span></span>
</td>
<td class="nump">$ 2,017,812<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-10-45-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.20)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 23: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValueOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValueOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxLiabilitiesNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482598/350-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481231/810-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481203/810-10-50-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-5<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481404/852-10-50-7<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for uncertainty in income taxes classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilityForUncertainTaxPositionsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncurrent assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValueOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValueOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480842/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-11<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnbilledReceivablesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_UnbilledReceivablesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896482736">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfFinancialPositionAbstract', window );"><strong>Statement of Financial Position [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent', window );">Amortized cost of current investments</a></td>
<td class="nump">$ 141,876<span></span>
</td>
<td class="nump">$ 132,799<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent', window );">Allowance for credit losses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for credit losses, current</a></td>
<td class="nump">1,339<span></span>
</td>
<td class="nump">583<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent', window );">Amortized cost of non-current investments</a></td>
<td class="nump">285,376<span></span>
</td>
<td class="nump">250,790<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent', window );">Allowance for credit losses, non-current</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock shares authorized (in shares)</a></td>
<td class="nump">400,000<span></span>
</td>
<td class="nump">400,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock shares issued (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock shares outstanding (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock par value (in dollars per share)</a></td>
<td class="nump">$ 0.002<span></span>
</td>
<td class="nump">$ 0.002<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesAuthorized', window );">Common stock shares authorized (in shares)</a></td>
<td class="nump">300,000,000<span></span>
</td>
<td class="nump">300,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (in shares)</a></td>
<td class="nump">171,662,000<span></span>
</td>
<td class="nump">171,599,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">171,662,000<span></span>
</td>
<td class="nump">171,599,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of common shares permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893987328">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 12,022<span></span>
</td>
<td class="nump">$ 25,615<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash provided by (used in) operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">13,302<span></span>
</td>
<td class="nump">16,579<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Depreciation', window );">Depreciation of property, plant, and equipment</a></td>
<td class="nump">5,279<span></span>
</td>
<td class="nump">3,986<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="nump">2,813<span></span>
</td>
<td class="nump">942<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ExcessAndObsoleteInventoryCharges', window );">Excess and obsolete inventory charges</a></td>
<td class="nump">471<span></span>
</td>
<td class="nump">788<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_FairValueAdjustmentOnAcquiredInventories', window );">Fair Value Adjustment on Acquired Inventories</a></td>
<td class="nump">1,224<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments', window );">Amortization of discounts or premiums on investments</a></td>
<td class="nump">306<span></span>
</td>
<td class="nump">700<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfInvestments', window );">Realized (gain) loss on sale of investments</a></td>
<td class="num">(2)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes', window );">Change in deferred income taxes</a></td>
<td class="num">(3,333)<span></span>
</td>
<td class="num">(10,656)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(25,669)<span></span>
</td>
<td class="num">(18,455)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability', window );">Unbilled revenue</a></td>
<td class="num">(347)<span></span>
</td>
<td class="num">(173)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(10,938)<span></span>
</td>
<td class="num">(5,338)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="num">(3,395)<span></span>
</td>
<td class="nump">231<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">7,398<span></span>
</td>
<td class="num">(192)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="num">(470)<span></span>
</td>
<td class="num">(9,942)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedTaxesPayable', window );">Accrued income taxes</a></td>
<td class="nump">5,258<span></span>
</td>
<td class="nump">4,721<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInDeferredRevenue', window );">Deferred revenue and customer deposits</a></td>
<td class="nump">8,737<span></span>
</td>
<td class="nump">17,003<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet', window );">Other</a></td>
<td class="nump">987<span></span>
</td>
<td class="nump">1,744<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash provided by (used in) operating activities</a></td>
<td class="nump">13,643<span></span>
</td>
<td class="nump">27,553<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireInvestments', window );">Purchases of investments</a></td>
<td class="num">(233,726)<span></span>
</td>
<td class="num">(46,480)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments', window );">Maturities and sales of investments</a></td>
<td class="nump">189,758<span></span>
</td>
<td class="nump">46,199<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property, plant, and equipment</a></td>
<td class="num">(4,061)<span></span>
</td>
<td class="num">(5,507)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired', window );">Net payments related to business acquisitions (Note 17)</a></td>
<td class="num">(994)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash provided by (used in) investing activities</a></td>
<td class="num">(49,023)<span></span>
</td>
<td class="num">(5,788)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet', window );">Net payments from issuance of common stock under stock plans</a></td>
<td class="num">(2,861)<span></span>
</td>
<td class="num">(3,055)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Repurchase of common stock</a></td>
<td class="num">(9,339)<span></span>
</td>
<td class="num">(24,178)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfDividendsCommonStock', window );">Payment of dividends</a></td>
<td class="num">(12,888)<span></span>
</td>
<td class="num">(12,091)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by (used in) financing activities</a></td>
<td class="num">(25,088)<span></span>
</td>
<td class="num">(39,324)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of foreign exchange rate changes on cash and cash equivalents</a></td>
<td class="num">(3,328)<span></span>
</td>
<td class="nump">356<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net change in cash and cash equivalents</a></td>
<td class="num">(63,796)<span></span>
</td>
<td class="num">(17,203)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at beginning of period</a></td>
<td class="nump">202,655<span></span>
</td>
<td class="nump">181,374<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">$ 138,859<span></span>
</td>
<td class="nump">$ 164,171<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ExcessAndObsoleteInventoryCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Excess and Obsolete Inventory Charges</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ExcessAndObsoleteInventoryCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_FairValueAdjustmentOnAcquiredInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair Value Adjustment on Acquired Inventories</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_FairValueAdjustmentOnAcquiredInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482686/350-30-45-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 230<br> -Topic 830<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Depreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481877/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period of all taxes owed but not paid, including income, property and other taxes.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482312/912-310-45-11<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDeferredIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDeferredIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInDeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInDeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in prepaid expenses, and assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the purchase of all investments (debt, security, other) during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the sale, maturity and collection of all investments such as debt, security and so forth during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockOptionPlanExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockOptionPlanExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894046464">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statement of Shareholders' Equity - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Accumulated Other Comprehensive Loss</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Beginning Balance (in shares) at Dec. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">172,631<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2022</a></td>
<td class="nump">$ 1,438,394<span></span>
</td>
<td class="nump">$ 345<span></span>
</td>
<td class="nump">$ 979,167<span></span>
</td>
<td class="nump">$ 528,179<span></span>
</td>
<td class="num">$ (69,297)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod', window );">Net issuance of common stock under stock plans (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">449<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Net issuance of common stock under stock plans</a></td>
<td class="num">(3,055)<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="num">(3,056)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchase of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(479)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchase of common stock</a></td>
<td class="num">(24,178)<span></span>
</td>
<td class="num">$ (1)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(24,177)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">16,579<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,579<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Payment of dividends</a></td>
<td class="num">(12,091)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(12,091)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">25,615<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,615<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on available-for-sale investments, net of tax</a></td>
<td class="nump">5,426<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,426<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax', window );">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">(359)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(359)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Ending Balance (in shares) at Apr. 02, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">172,601<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Apr. 02, 2023</a></td>
<td class="nump">$ 1,446,331<span></span>
</td>
<td class="nump">$ 345<span></span>
</td>
<td class="nump">992,690<span></span>
</td>
<td class="nump">517,526<span></span>
</td>
<td class="num">(64,230)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Beginning Balance (in shares) at Dec. 31, 2023</a></td>
<td class="nump">171,599<span></span>
</td>
<td class="nump">171,599<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 1,504,752<span></span>
</td>
<td class="nump">$ 343<span></span>
</td>
<td class="nump">1,037,202<span></span>
</td>
<td class="nump">512,543<span></span>
</td>
<td class="num">(45,336)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod', window );">Net issuance of common stock under stock plans (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">294<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Net issuance of common stock under stock plans</a></td>
<td class="num">(2,861)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(2,861)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodShares', window );">Repurchase of common stock (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(231)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchasedDuringPeriodValue', window );">Repurchase of common stock</a></td>
<td class="num">(9,339)<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(9,339)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">13,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13,302<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCash', window );">Payment of dividends</a></td>
<td class="num">(12,888)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(12,888)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">12,022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax', window );">Net unrealized gain (loss) on available-for-sale investments, net of tax</a></td>
<td class="nump">359<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">359<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax', window );">Reclassification of net realized (gain) loss on the sale of available-for-sale investments</a></td>
<td class="num">(2)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(2)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="num">$ (16,156)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(16,156)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Ending Balance (in shares) at Mar. 31, 2024</a></td>
<td class="nump">171,662<span></span>
</td>
<td class="nump">171,662<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Mar. 31, 2024</a></td>
<td class="nump">$ 1,489,189<span></span>
</td>
<td class="nump">$ 343<span></span>
</td>
<td class="nump">$ 1,047,643<span></span>
</td>
<td class="nump">$ 502,338<span></span>
</td>
<td class="num">$ (61,135)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -SubTopic 405<br> -Topic 942<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481071/942-405-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of reclassification adjustment from accumulated other comprehensive income for unrealized gain (loss) realized upon the sale of available-for-sale securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-15<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-17A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-11<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value of stock issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29-31)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(i)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-11<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480767/946-205-45-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807989142736">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statement of Shareholders' Equity (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareCashPaid', window );">Cash dividends per common share (usd per share)</a></td>
<td class="nump">$ 0.075<span></span>
</td>
<td class="nump">$ 0.070<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax', window );">Tax effect of unrealized gain (loss) on available-for-sale investments</a></td>
<td class="nump">$ 117<span></span>
</td>
<td class="nump">$ 1,858<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareCashPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends paid during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareCashPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-10A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfStockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfStockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807891182960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text">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&#8217;s Annual Report on Form 10-K for the year ended December&#160;31, 2023 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, and financial statement reclassifications necessary to present fairly the Company&#8217;s financial position as of March&#160;31, 2024, and the results of its operations for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, and changes in shareholders&#8217; 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 periods ended March&#160;31, 2024 are not necessarily indicative of the results to be expected for the full year.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all significant accounting policies of the reporting entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483426/235-10-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SignificantAccountingPoliciesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807891140768">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>New Pronouncements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">New Pronouncements</a></td>
<td class="text">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) 2023-09, "Income Taxes (Topic 740): Improvements to Income Tax Disclosures"</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 amendments in this ASU apply to all entities that are subject to Topic 740, Income Taxes. The amendments require public business entities to disclose specific categories in their rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. They also require all entities to disclose income taxes paid, net of refunds received, disaggregated by federal, state, and foreign taxes and by individual jurisdictions in which income taxes paid, net of refunds received, is equal to or greater than five percent of total income taxes paid. For public business entities, the amendments in this ASU are effective for annual periods beginning after December 15, 2024. The amendments in this ASU should be applied on a prospective basis. Management does not expect ASU 2023-09 to have a material impact on the Company's financial statements and disclosures.</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%;text-decoration:underline">Accounting Standards Update (ASU) 2023-07, "Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures"</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 amendments in this ASU apply to all public entities, including public entities with a single reportable segment, that are required to report segment information in accordance with Topic 280, Segment Reporting. The amendments require public business entities to provide in interim and annual periods one or more measures of segment profit or loss used by the chief operating decision maker to allocate resources and assess performance. Additionally, the amendments require disclosure of significant segment expenses and other segment items, as well as incremental qualitative disclosures. The amendments in this ASU are effective for fiscal years beginning after December 15, 2023 and interim periods with fiscal years beginning after December 15, 2024. The amendments in the ASU should be applied on a retrospective basis. We did not early adopt ASU 2023-07. Management does not expect ASU 2023-07 to have a material impact on the Company's financial statements and disclosures.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480016/944-40-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480530/250-10-S99-5<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480528/815-20-65-6<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479832/842-10-65-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479832/842-10-65-5<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483550/848-10-65-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479343/105-10-65-6<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482615/740-10-65-8<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482615/740-10-65-8<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482615/740-10-65-8<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482833/825-10-65-6<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482833/825-10-65-6<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482833/825-10-65-6<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479654/326-10-65-4<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479654/326-10-65-4<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483194/926-20-65-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483194/926-20-65-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483194/926-20-65-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480530/250-10-S99-6<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 250<br> -Publisher FASB<br> -URI https://asc.fasb.org//250/tableOfContent<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -SubTopic 20<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481925/310-20-65-2<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -SubTopic 20<br> -Topic 310<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481925/310-20-65-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807891125936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text">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 March&#160;31, 2024 (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&#160;Prices&#160;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%">667&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">&#8212;&#160;</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%">353,745&#160;</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%">&#8212;&#160;</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 notes</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">45,053&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">&#8212;&#160;</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%">16,995&#160;</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%">&#8212;&#160;</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%">Certificate of 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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">6,429&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">Treasury bills</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%">&#8212;&#160;</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,499&#160;</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%">&#8212;&#160;</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="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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,967&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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 style="height:15pt"><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><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%">Economic hedge forward contracts</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">22&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Economic hedge forward contracts</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">221&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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></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&#8217;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&#8217;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 periods ended March&#160;31, 2024 or April&#160;2, 2023.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896788672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsDisclosureTextBlock', window );">Cash, Cash Equivalents, and Investments</a></td>
<td class="text">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%">March 31, 2024</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, 2023</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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%">128,264</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">183,242&#160;</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%">Certificate of 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:700;line-height:100%">6,429</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">Treasury bills</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,499</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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%">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%">667</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">19,413&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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 #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%">138,859</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">202,655&#160;</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%">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%">134,032</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">124,851&#160;</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%">4,309</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,551&#160;</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%">993</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">990&#160;</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%">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%">139,334</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">129,392&#160;</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%">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%">219,713</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">183,965&#160;</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%">Treasury notes</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%">45,053</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">43,523&#160;</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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12,686</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,763&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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%">974</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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&#160;</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="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%">Non-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%">278,426</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">244,230&#160;</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: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%">556,619</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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:400;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:400;line-height:100%">576,277&#160;</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: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; sovereign bonds consist of direct debt issued by foreign governments; and treasury notes consist of debt securities issued by the U.S. government. All of the Company's securities as of March&#160;31, 2024 and December&#160;31, 2023 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,119,000 and $3,169,000 as of March&#160;31, 2024 and December&#160;31, 2023, 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&#8217;s available-for-sale investments as of March&#160;31, 2024 (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&#160;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%">136,479&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(2,447)</span></td><td style="background-color:#ffffff;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%">134,032&#160;</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%">4,391&#160;</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%">&#8212;&#160;</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%">(82)</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,309&#160;</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,006&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(13)</span></td><td style="background-color:#ffffff;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%">993&#160;</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Non-current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">Corporate 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%">225,074&#160;</span></td><td style="background-color:#ffffff;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%">175&#160;</span></td><td style="background-color:#ffffff;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,536)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">219,713&#160;</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%">Treasury notes</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%">45,760&#160;</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%">&#8212;&#160;</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%">(707)</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%">45,053&#160;</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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,512&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(826)</span></td><td style="background-color:#ffffff;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,686&#160;</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 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,030&#160;</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%">&#8212;&#160;</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%">(56)</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%">974&#160;</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: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%">427,252</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">175</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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,667)</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: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%">417,760</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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;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&#8217;s available-for-sale investments as of December&#160;31, 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&#160;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%">128,150&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,299)</span></td><td style="background-color:#ffffff;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%">124,851&#160;</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,637&#160;</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%">&#8212;&#160;</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%">(86)</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,551&#160;</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 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,012&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(22)</span></td><td style="background-color:#ffffff;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%">990&#160;</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Non-current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">Corporate 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%">189,326&#160;</span></td><td style="background-color:#ffffff;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%">506&#160;</span></td><td style="background-color:#ffffff;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,867)</span></td><td style="background-color:#ffffff;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%">183,965&#160;</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%">Treasury notes</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%">43,654&#160;</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%">82&#160;</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%">(213)</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%">43,523&#160;</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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,773&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,010)</span></td><td style="background-color:#ffffff;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,763&#160;</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 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,037&#160;</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%">&#8212;&#160;</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%">(58)</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&#160;</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: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%">383,589</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">588</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">(10,555)</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: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%">373,622</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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;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&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of March&#160;31, 2024 (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%">&#160;</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%">&#160;</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%">&#160;</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%">&#160;</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&#160;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&#160;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&#160;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%">95,052&#160;</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%">(1,087)</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%">222,979&#160;</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%">(6,896)</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%">318,031&#160;</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%">(7,983)</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 notes</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%">42,612&#160;</span></td><td style="background-color:#ffffff;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%">(647)</span></td><td style="background-color:#ffffff;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,441&#160;</span></td><td style="background-color:#ffffff;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)</span></td><td style="background-color:#ffffff;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%">45,053&#160;</span></td><td style="background-color:#ffffff;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%">(707)</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%">14,742&#160;</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%">(860)</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%">2,252&#160;</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%">(48)</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%">16,994&#160;</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%">(908)</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,968&#160;</span></td><td style="background-color:#ffffff;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%">(69)</span></td><td style="background-color:#ffffff;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,968&#160;</span></td><td style="background-color:#ffffff;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%">(69)</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%">152,406</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(2,594)</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%">229,640</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,073)</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%">382,046</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,667)</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&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of December&#160;31, 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%">&#160;</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%">&#160;</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%">&#160;</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%">&#160;</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&#160;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&#160;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&#160;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%">30,770&#160;</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%">(359)</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%">226,643&#160;</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%">(8,807)</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%">257,413&#160;</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%">(9,166)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;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 notes</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%">20,725&#160;</span></td><td style="background-color:#ffffff;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%">(153)</span></td><td style="background-color:#ffffff;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,441&#160;</span></td><td style="background-color:#ffffff;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)</span></td><td style="background-color:#ffffff;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%">23,166&#160;</span></td><td style="background-color:#ffffff;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%">(213)</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%">17,062&#160;</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,049)</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%">2,252&#160;</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%">(47)</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%">19,314&#160;</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,096)</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,968&#160;</span></td><td style="background-color:#ffffff;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%">(80)</span></td><td style="background-color:#ffffff;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,968&#160;</span></td><td style="background-color:#ffffff;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%">(80)</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%">68,557</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(1,561)</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%">233,304</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(8,994)</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%">301,861</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(10,555)</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 March&#160;31, 2024 or December&#160;31, 2023. Management currently intends to hold these securities to full value recovery at maturity.</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 periods ended March&#160;31, 2024 and April&#160;2, 2023 (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:100.000%"><tr><td style="width:1.0%"></td><td style="width:66.882%"></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:14.104%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.823%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.107%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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="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: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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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="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%">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%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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><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%">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%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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="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%">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&#8217; 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&#8217;s available-for-sale investments as of March&#160;31, 2024 (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%">134,032&#160;</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%">57,463&#160;</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%">59,120&#160;</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%">58,225&#160;</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%">44,905&#160;</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%">&#8212;&#160;</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%">353,745&#160;</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 notes</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,429&#160;</span></td><td style="background-color:#ffffff;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%">14,097&#160;</span></td><td style="background-color:#ffffff;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%">22,829&#160;</span></td><td style="background-color:#ffffff;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,698&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">45,053&#160;</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%">4,309&#160;</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,486&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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,200&#160;</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%">16,995&#160;</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%">993&#160;</span></td><td style="background-color:#ffffff;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%">974&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,967&#160;</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%">139,334</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">68,352</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">73,217</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">81,054</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">49,603</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">6,200</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">417,760</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894324800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text">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%">March 31, 2024</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, 2023</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%">106,506</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">93,201&#160;</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%">3,241</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,747&#160;</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%">61,124</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">63,337&#160;</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%">170,871</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">162,285&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894513104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text">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. As of March&#160;31, 2024, there were no options to terminate and twenty-eight options to extend that were accounted for in the determination of the lease term for the Company's 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 March&#160;31, 2024.</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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $3,563,000 and $2,392,000, respectively. The total operating lease cash payments for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $3,208,000 and $2,404,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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $82,000 and $24,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&#160;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 2024</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%">10,392&#160;</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%">2025</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%">12,093&#160;</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%">2026</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%">10,031&#160;</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%">2027</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%">9,171&#160;</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%">2028</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%">8,721&#160;</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%">2029</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%">8,137&#160;</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%">44,658&#160;</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%">103,203</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 $77,165,000 and $78,601,000 as of March&#160;31, 2024 and December&#160;31, 2023, respectively. The Company did not have any leases that had not yet commenced but that created significant rights and obligations as of March&#160;31, 2024.</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 Company leases a building in Singapore that serves as a distribution center for customers in Asia. The lease contains two components: an 88,000 square-foot premises that had a commencement date in June of 2023 and a second 27,000 square-foot premises that does not commence until the fourth quarter of 2025. Accordingly, the second component of the lease has not yet been recorded on the Consolidated Balance Sheets, nor has it created any significant rights and obligations as of March&#160;31, 2024. This second lease component has an original term of eight years and the Company has the right and option to extend this term by an additional 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 2024 and which reflects the 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>The weighted-average discount rate was 5.7% for the leases outstanding as of both March&#160;31, 2024 and December&#160;31, 2023. The weighted-average remaining lease term was 10.3 and 10.5 years for the leases outstanding as of March&#160;31, 2024 and December&#160;31, 2023, respectively.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894357504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillDisclosureTextBlock', window );">Goodwill</a></td>
<td class="text">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, 2023</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%">393,181&#160;</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%">&#160;&#160;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%">(7,024)</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 March 31, 2024</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%">386,157</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//350-20/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892179456">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Intangible Assets</a></td>
<td class="text">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%">Customer relationships</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%">72,775</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(6,587)</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%">66,188</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">Completed technologies</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%">60,160</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">(22,112)</span></td><td style="background-color:#ffffff;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%">38,048</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">Trademarks</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%">842</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(117)</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%">725</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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:#ffffff;padding: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%">&#160;</span></td><td style="background-color:#ffffff;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%">(247)</span></td><td style="background-color:#ffffff;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%">93</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 March 31, 2024</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: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%">134,117</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">(29,063)</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: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%">105,054</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height: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%">&#160;</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%">Customer relationships</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%">75,965&#160;</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%">(5,352)</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%">70,613&#160;</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%">Completed technologies</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%">62,123&#160;</span></td><td style="background-color:#ffffff;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%">(20,745)</span></td><td style="background-color:#ffffff;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,378&#160;</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%">Trademarks</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%">903&#160;</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%">(50)</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%">853&#160;</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: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:#ffffff;padding:2px 0 2px 1pt;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&#160;</span></td><td style="background-color:#ffffff;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%">(232)</span></td><td style="background-color:#ffffff;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%">108&#160;</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 December 31, 2023</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,331&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,379)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112,952&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><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 March&#160;31, 2024, 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&#160;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 2024</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%">8,179&#160;</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%">2025</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%">10,615&#160;</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%">2026</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%">10,310&#160;</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%">2027</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%">9,587&#160;</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%">2028</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%">8,857&#160;</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%">2029</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%">8,857&#160;</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%">48,649&#160;</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%">105,054</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for all or part of the information related to intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//350-30/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896746016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Obligations<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyDisclosureTextBlock', window );">Warranty Obligations</a></td>
<td class="text">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&#8217;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 &#8220;Accrued expenses&#8221; 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, 2023</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,244&#160;</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,157&#160;</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%">(939)</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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;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:#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 March 31, 2024</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%">4,453</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893942576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Commitment and Contingencies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies</a></td>
<td class="text">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 March&#160;31, 2024, the Company had outstanding purchase orders totaling $40,843,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 March&#160;31, 2024, 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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 450<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//450/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480327/954-440-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//440/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893581808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock', window );">Derivative Instruments</a></td>
<td class="text">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&#8217;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%">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%">March 31, 2024</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, 2023</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">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%">39,950</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">29,652</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">39,700&#160;</span></td><td style="background-color:#ffffff;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%">30,136&#160;</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%">18,500</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">19,940</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">40,000&#160;</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,302&#160;</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%">205,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,273</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">145,000&#160;</span></td><td style="background-color:#ffffff;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%">8,505&#160;</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%">50,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">6,886</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">50,000&#160;</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,025&#160;</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%">Hungarian Forint</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,250,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">6,152</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,240,000&#160;</span></td><td style="background-color:#ffffff;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%">6,466&#160;</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%">British Pound</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,330</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">4,229</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,345&#160;</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,258&#160;</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;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%">600,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,980</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">600,000&#160;</span></td><td style="background-color:#ffffff;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,255&#160;</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%">Swiss Franc</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%">2,400</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">2,673</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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%">Canadian 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%">1,720</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,270</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,470&#160;</span></td><td style="background-color:#ffffff;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,112&#160;</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></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%">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%">&#160;</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%">&#160;</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%">&#160;</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%">March 31,           2024</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, 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: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%">March 31,           2024</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, 2023</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&#160;expenses&#160;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%">22</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">151&#160;</span></td><td style="background-color:#ffffff;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%">221</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">106&#160;</span></td><td style="background-color:#ffffff;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 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%">March 31,           2024</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, 2023</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%">March 31,           2024</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, 2023</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%">22</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">151&#160;</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%">221</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">106&#160;</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%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">22</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">151&#160;</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%">221</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">106&#160;</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:53.724%"></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.793%"></td><td style="width:0.1%"></td><td colspan="3" style="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 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%">&#160;</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="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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="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="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%">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%">(245)</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%">(1,471)</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="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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480237/815-40-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-5C<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 815<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//815/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807989147648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue Recognition</a></td>
<td class="text">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:67.321%"></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.958%"></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.961%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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="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: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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">83,135</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">80,442&#160;</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="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%">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%">52,354</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,842&#160;</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><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%">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%">30,049</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,172&#160;</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><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></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%">45,259</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">27,668&#160;</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><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 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%">210,797</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">201,124&#160;</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="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><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.707%"><tr><td style="width:1.0%"></td><td style="width:67.375%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.002%"></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:14.004%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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="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: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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">187,632</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">190,783&#160;</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="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%">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%">23,165</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">10,341&#160;</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><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 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%">210,797</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">201,124&#160;</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="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: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 $11,783,000 and $13,265,000 as of March&#160;31, 2024 and December&#160;31, 2023, 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 three-month period ended March&#160;31, 2024 (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, 2023</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%">583&#160;</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 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:#ffffff;padding:2px 0 2px 1pt;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&#160;</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%">1&#160;</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 March 31, 2024</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%">601</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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 three-month period ended March&#160;31, 2024 (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, 2023</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%">31,525&#160;</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%">24,921&#160;</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%">(16,184)</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 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%">(279)</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 March 31, 2024</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%">39,983</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations for our contracts that have an original expected duration of less than one year. The remaining unsatisfied performance obligations for our contracts that have an original expected duration of more than one year, primarily related to extended warranties, are not material.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-9<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-15<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org//606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894073568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock', window );">Stock-Based Compensation Expense</a></td>
<td class="text">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&#8217;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 &#8220;2023 Plan&#8221;). 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 &#8220;2001 Plan&#8221;), and the Cognex Corporation 2007 Stock Option and Incentive Plan, as amended and restated (the &#8220;2007 Plan&#8221;). 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 &#8220;Carryover Shares&#8221;). As of March&#160;31, 2024, forfeitures, cancellations, and other terminations from the 2001 Plan and the 2007 Plan have resulted in 707,900 Carryover Shares, raising the authorized total shares that may be issued under the 2023 Plan to 8,807,900</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 March&#160;31, 2024, the Company had 6,001,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&#8217;s common stock at the grant date and generally vest over <span style="-sec-ix-hidden:f-738">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-741">three</span> or four years of continuous employment or incrementally over such <span style="-sec-ix-hidden:f-743">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&#8217;s stock option activity for the three-month period ended March&#160;31, 2024:</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&#160;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&#160;(in&#160;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&#160;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&#160;31, 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:400;line-height:100%">9,008&#160;</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%">50.87&#160;</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,523&#160;</span></td><td style="background-color:#ffffff;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%">39.44&#160;</span></td><td style="background-color:#ffffff;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%">(56)</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%">19.87&#160;</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%">(330)</span></td><td style="background-color:#ffffff;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.58&#160;</span></td><td style="background-color:#ffffff;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 March&#160;31, 2024</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%">10,145</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">49.11</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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.30</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%">21,531</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 March&#160;31, 2024</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,973</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">49.04</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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.56</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%">15,941</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 March 31, 2024 (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%">9,405</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">49.28</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">6.09</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%">20,336</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#160;(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:1pt;padding-left:36pt;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%">The total cash received as a result of stock option exercises for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $1,121,000 and $3,976,000, respectively. In connection with these exercises, the tax benefit (expense) realized by the Company for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 was $(29,000) and $(1,466,000), respectively.</span></div><div style="margin-top:1pt;padding-left:36pt;text-align:justify"><span><br/></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:68.052%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></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.960%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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%">&#160;</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&#160;Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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.3</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">4.0&#160;</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="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%">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.76</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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.59&#160;</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="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%">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%">&#160;</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%">39&#160;</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="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%">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%">4.7</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%">4.3</span></td><td colspan="3" style="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-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%">The current dividend yield was calculated by annualizing the cash dividend declared by the Company&#8217;s Board of Directors and dividing that result by the closing stock price on the grant date.&#160;</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&#160;the Company&#8217;s common stock over the contractual term of the option and implied volatility for traded options of the Company&#8217;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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $14.66 and $17.79, 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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $1,055,000 and $3,439,000, respectively. The total fair values of stock options vested for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $25,807,000 and $31,181,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 three-month period ended March&#160;31, 2024: </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&#160;31, 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:400;line-height:100%">1,429&#160;</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%">54.22&#160;</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%">765&#160;</span></td><td style="background-color:#ffffff;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%">38.82&#160;</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%">(339)</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%">65.45&#160;</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%">(36)</span></td><td style="background-color:#ffffff;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%">52.43&#160;</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 March&#160;31, 2024</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,819</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">45.68</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $38.82 and $46.61, respectively. There were 339,000 and 453,000 RSUs that vested during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, 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%">Tax obligations for vested RSUs are settled by withholding a portion of the shares prior to distribution to the shareholder. The total cash used by the Company to fund the tax payments for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $3,981,000 and $7,032,000, respectively. In connection with these vested RSUs, the tax benefit (expense) realized by the Company for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 was $(4,793,000) and $(2,718,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">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 three-month period ended March&#160;31, 2024: </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&#160;31, 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:400;line-height:100%">79&#160;</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%">52.23&#160;</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%">55&#160;</span></td><td style="background-color:#ffffff;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%">39.05&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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 March&#160;31, 2024</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%">134</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">46.82</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 55,000 and 46,000 PRSUs granted during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively. No PRSUs vested during the three-month periods ended March&#160;31, 2024 and April&#160;2, 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%;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, 9% 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 $1,832,000 and $234,000 during the three-month periods ended March&#160;31, 2024 and April&#160;2, 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%">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%">As of March&#160;31, 2024, total unrecognized compensation expense, net of estimated forfeitures, related to non-vested equity awards, including stock options, RSUs, and PRSUs, was $86,273,000, which is expected to be recognized over a weighted-average period of 2.1 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 March&#160;31, 2024 were $13,302,000 and $1,745,000, respectively. The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended April&#160;2, 2023 were $16,579,000 and $2,308,000, respectively. No compensation expense was capitalized as of March&#160;31, 2024 or December&#160;31, 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 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:68.052%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></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.960%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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%">&#160;</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="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">605</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">621&#160;</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="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%">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%">4,389</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,890&#160;</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><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%">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,308</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,068&#160;</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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%">13,302</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">16,579&#160;</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="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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//505/tableOfContent<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//718/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893944640">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Repurchase Program<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stock Repurchase Program</a></td>
<td class="text">Stock Repurchase ProgramIn March 2022, the Company's Board of Directors authorized the repurchase of $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 479,000 shares at a total cost of $24,178,000 during the three-month period ended April&#160;2, 2023 and 231,000 shares at a total cost of $9,339,000 during the three-month period ended March&#160;31, 2024, leaving a remaining balance of $323,553,000 as of March&#160;31, 2024. 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.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481062/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481004/946-505-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480237/815-40-50-6<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(e)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//505/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-13<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-14<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-14<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-16<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-18<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-18<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>44
<FILENAME>R24.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896682912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text">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 32% and 2% for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, 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, Japan, and Korea, and within the United States, Massachusetts. The statutory tax rate is 12.5% in Ireland, 25% in China, 34.6% in Japan, and 21% in Korea, compared to the U.S. federal statutory corporate tax rate of 21%. These foreign tax rate differences resulted in a favorable impact to the effective tax rate for both the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.</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 $3,085,000 for the three-month period ended March&#160;31, 2024, and a net discrete tax benefit totaling $3,594,000 for the same period in 2023.</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 three-month period ended March&#160;31, 2024 included (1) an increase in tax expense of $1,123,000 related to stock-based compensation; (2) an increase in tax expense of $458,000 related to state tax matters; (3) an increase in tax expense of $458,000 for interest expense related to tax reserves; and (4) a net increase in tax expense of $1,046,000 for other tax matters.</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 three-month period ended April&#160;2, 2023 included (1) an increase in tax expense of $1,068,000 related to stock-based compensation; (2) a decrease in tax expense of $2,292,000 for releasing tax reserves on state tax credits; (3) a decrease in tax expense of $2,198,000 for adjustments to certain deferred tax assets; and (4) a decrease in tax expense of $172,000 for return-to-provision adjustments. </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&#8217;s reserve for income taxes, including gross interest and penalties, was $30,511,000 as of March&#160;31, 2024, of which $28,144,000 was classified as a non-current liability and $2,367,000 was classified as an offset to deferred tax assets. If the Company&#8217;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><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%">Within the United States, the tax years 2020 through 2022 remain open to examination by the IRS, and 2019 through 2022 remain open to examination by various state tax authorities. The tax years 2017 through 2023 remain open to examination by various international taxing authorities in other jurisdictions in which the Company operates. </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%">In October 2021, more than 135 countries and jurisdictions agreed to participate in a "two-pillar" international tax approach developed by the Organisation for Economic Co-operation and Development (OECD), which includes establishing a global minimum corporate tax rate of 15%. The OECD published "Tax Challenges Arising from the Digitalisation of the Economy &#8212; Global Anti-Base Erosion Model Rules (Pillar Two)" in December 2021 and subsequently issued additional commentary and administrative guidance clarifying several aspects of the model rules. Since the model rules have been released, many countries have now enacted Pillar Two-related laws, some of which became effective January 1, 2024, and it is anticipated that more countries will follow suit throughout 2024. As of March 31, 2024, the Company does not expect Pillar Two taxes to have a significant impact on its 2024 financial statements.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480990/946-20-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//740/tableOfContent<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-14<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-21<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482526/740-270-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-17<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896788672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 02, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Weighted-Average Shares</a></td>
<td class="text">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:68.052%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></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.960%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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%">&#160;</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="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">171,692</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">172,624&#160;</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="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%">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%">902</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,279&#160;</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><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%">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%">172,594</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">173,903&#160;</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="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></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 8,176,000 and 6,515,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. Restricted stock units totaling 1,000 and 10,000 shares of common stock, on a weighted-average basis, were outstanding during the </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%">three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, 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 periods ended March&#160;31, 2024 and April&#160;2, 2023, as PRSUs were not anti-dilutive on a weighted-average basis.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>46
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894031840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract', window );"><strong>Business Combination and Asset Acquisition [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationDisclosureTextBlock', window );">Business Combinations</a></td>
<td class="text">Business Combinations<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%">On October 18, 2023, the Company acquired all the outstanding shares of Moritex Corporation ("Moritex"), a global provider of premium optical components based in Japan, for an enterprise value of &#165;40&#160;billion Japanese Yen, or approximately $270&#160;million U.S. Dollars based on the closing date foreign exchange 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 cash-free, debt-free enterprise value was adjusted by cash acquired, debt assumed, and final working capital balances to arrive at total consideration to be allocated to assets acquired and liabilities assumed of &#165;44,376,245,000 ($296,138,000 based on the closing date foreign exchange rate), of which &#165;44,227,414,000 ($295,144,000) was paid in cash on the closing date and &#165;148,831,000 ($994,000) was paid during the three-month period ended March&#160;31, 2024 as a final purchase price adjustment based on the closing balance sheet.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationAndAssetAcquisitionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationAndAssetAcquisitionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 805<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//805/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139808003990896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent Events [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text">Subsequent EventsOn May 2, 2024, the Company&#8217;s Board of Directors declared a cash dividend of $0.075 per share. The dividend is payable on May 30, 2024 to all shareholders of record as of the close of business on May 16, 2024.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//855/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896684464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Pay vs Performance Disclosure - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_PvpTable', window );"><strong>Pay vs Performance Disclosure</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 12,022<span></span>
</td>
<td class="nump">$ 25,615<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_PvpTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 402<br> -Subsection v<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_PvpTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482765/220-10-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480175/815-40-65-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-8<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-9<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-4<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480167/946-830-55-10<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/946-220-45-7<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-60B<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-7<br><br>Reference 35: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-28<br><br>Reference 36: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1A<br><br>Reference 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-1B<br><br>Reference 38: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<br><br>Reference 39: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894034112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Insider Trading Arrangements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_NonRule10b51ArrAdoptedFlag', window );">Non-Rule 10b5-1 Arrangement Adopted</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_ecd_NonRule10b51ArrTrmntdFlag', window );">Non-Rule 10b5-1 Arrangement Terminated</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrAdoptedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_NonRule10b51ArrAdoptedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_NonRule10b51ArrTrmntdFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_NonRule10b51ArrTrmntdFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_TradingArrByIndTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-K<br> -Number 229<br> -Section 408<br> -Subsection a<br> -Paragraph 2<br> -Subparagraph A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">ecd_TradingArrByIndTable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>ecd_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807975046944">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Pronouncements</a></td>
<td class="text">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) 2023-09, "Income Taxes (Topic 740): Improvements to Income Tax Disclosures"</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 amendments in this ASU apply to all entities that are subject to Topic 740, Income Taxes. The amendments require public business entities to disclose specific categories in their rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. They also require all entities to disclose income taxes paid, net of refunds received, disaggregated by federal, state, and foreign taxes and by individual jurisdictions in which income taxes paid, net of refunds received, is equal to or greater than five percent of total income taxes paid. For public business entities, the amendments in this ASU are effective for annual periods beginning after December 15, 2024. The amendments in this ASU should be applied on a prospective basis. Management does not expect ASU 2023-09 to have a material impact on the Company's financial statements and disclosures.</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%;text-decoration:underline">Accounting Standards Update (ASU) 2023-07, "Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures"</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 amendments in this ASU apply to all public entities, including public entities with a single reportable segment, that are required to report segment information in accordance with Topic 280, Segment Reporting. The amendments require public business entities to provide in interim and annual periods one or more measures of segment profit or loss used by the chief operating decision maker to allocate resources and assess performance. Additionally, the amendments require disclosure of significant segment expenses and other segment items, as well as incremental qualitative disclosures. The amendments in this ASU are effective for fiscal years beginning after December 15, 2023 and interim periods with fiscal years beginning after December 15, 2024. The amendments in the ASU should be applied on a retrospective basis. We did not early adopt ASU 2023-07. Management does not expect ASU 2023-07 to have a material impact on the Company's financial statements and disclosures.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingPoliciesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingPoliciesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894568368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock', window );">Assets and Liabilities Measured at Fair Value on a Recurring Basis</a></td>
<td class="text"><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 March&#160;31, 2024 (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&#160;Prices&#160;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%">667&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">&#8212;&#160;</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%">353,745&#160;</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%">&#8212;&#160;</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 notes</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">45,053&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">&#8212;&#160;</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%">16,995&#160;</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%">&#8212;&#160;</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%">Certificate of 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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">6,429&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">Treasury bills</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%">&#8212;&#160;</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,499&#160;</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%">&#8212;&#160;</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="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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,967&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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 style="height:15pt"><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><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%">Economic hedge forward contracts</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">22&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Economic hedge forward contracts</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">221&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<FILENAME>R32.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807989142608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock', window );">Components of Cash, Cash Equivalents, and Investments</a></td>
<td class="text"><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%">March 31, 2024</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, 2023</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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%">128,264</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">183,242&#160;</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%">Certificate of 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:700;line-height:100%">6,429</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">Treasury bills</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,499</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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%">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%">667</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">19,413&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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 #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%">138,859</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">202,655&#160;</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%">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%">134,032</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">124,851&#160;</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%">4,309</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,551&#160;</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%">993</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">990&#160;</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%">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%">139,334</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">129,392&#160;</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%">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%">219,713</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">183,965&#160;</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%">Treasury notes</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%">45,053</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">43,523&#160;</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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12,686</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,763&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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%">974</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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&#160;</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="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%">Non-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%">278,426</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">244,230&#160;</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: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%">556,619</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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:400;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:400;line-height:100%">576,277&#160;</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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock', window );">Summary of Available-for-Sale Investments</a></td>
<td class="text"><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&#8217;s available-for-sale investments as of March&#160;31, 2024 (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&#160;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%">136,479&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(2,447)</span></td><td style="background-color:#ffffff;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%">134,032&#160;</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%">4,391&#160;</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%">&#8212;&#160;</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%">(82)</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,309&#160;</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,006&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(13)</span></td><td style="background-color:#ffffff;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%">993&#160;</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Non-current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">Corporate 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%">225,074&#160;</span></td><td style="background-color:#ffffff;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%">175&#160;</span></td><td style="background-color:#ffffff;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,536)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">219,713&#160;</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%">Treasury notes</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%">45,760&#160;</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%">&#8212;&#160;</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%">(707)</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%">45,053&#160;</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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,512&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(826)</span></td><td style="background-color:#ffffff;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,686&#160;</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 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,030&#160;</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%">&#8212;&#160;</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%">(56)</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%">974&#160;</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: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%">427,252</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">175</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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,667)</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: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%">417,760</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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;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&#8217;s available-for-sale investments as of December&#160;31, 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&#160;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%">128,150&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,299)</span></td><td style="background-color:#ffffff;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%">124,851&#160;</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,637&#160;</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%">&#8212;&#160;</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%">(86)</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,551&#160;</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 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,012&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">(22)</span></td><td style="background-color:#ffffff;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%">990&#160;</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">Non-current:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">Corporate 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%">189,326&#160;</span></td><td style="background-color:#ffffff;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%">506&#160;</span></td><td style="background-color:#ffffff;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,867)</span></td><td style="background-color:#ffffff;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%">183,965&#160;</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%">Treasury notes</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%">43,654&#160;</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%">82&#160;</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%">(213)</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%">43,523&#160;</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%">Asset-backed securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,773&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,010)</span></td><td style="background-color:#ffffff;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,763&#160;</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 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,037&#160;</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%">&#8212;&#160;</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%">(58)</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&#160;</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: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%">383,589</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">588</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">(10,555)</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: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%">373,622</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock', window );">Gross Unrealized Losses and Fair Values for Available-for-Sale Investments</a></td>
<td class="text"><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&#8217;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of March&#160;31, 2024 (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%">&#160;</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%">&#160;</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%">&#160;</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%">&#160;</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&#160;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&#160;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&#160;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%">95,052&#160;</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%">(1,087)</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%">222,979&#160;</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%">(6,896)</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%">318,031&#160;</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%">(7,983)</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 notes</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%">42,612&#160;</span></td><td style="background-color:#ffffff;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%">(647)</span></td><td style="background-color:#ffffff;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,441&#160;</span></td><td style="background-color:#ffffff;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)</span></td><td style="background-color:#ffffff;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%">45,053&#160;</span></td><td style="background-color:#ffffff;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%">(707)</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%">14,742&#160;</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%">(860)</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%">2,252&#160;</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%">(48)</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%">16,994&#160;</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%">(908)</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,968&#160;</span></td><td style="background-color:#ffffff;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%">(69)</span></td><td style="background-color:#ffffff;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,968&#160;</span></td><td style="background-color:#ffffff;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%">(69)</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%">152,406</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(2,594)</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%">229,640</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,073)</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%">382,046</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,667)</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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock', window );">Realized Gain (Loss) on Investments</a></td>
<td class="text"><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 periods ended March&#160;31, 2024 and April&#160;2, 2023 (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:100.000%"><tr><td style="width:1.0%"></td><td style="width:66.882%"></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:14.104%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.823%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.107%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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="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: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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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="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%">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%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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><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%">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%">2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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="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><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock', window );">Effective Maturity Dates of Available-for-Sale Investments</a></td>
<td class="text"><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&#8217;s available-for-sale investments as of March&#160;31, 2024 (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%">134,032&#160;</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%">57,463&#160;</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%">59,120&#160;</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%">58,225&#160;</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%">44,905&#160;</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%">&#8212;&#160;</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%">353,745&#160;</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 notes</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,429&#160;</span></td><td style="background-color:#ffffff;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%">14,097&#160;</span></td><td style="background-color:#ffffff;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%">22,829&#160;</span></td><td style="background-color:#ffffff;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,698&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">45,053&#160;</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%">4,309&#160;</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,486&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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,200&#160;</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%">16,995&#160;</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%">993&#160;</span></td><td style="background-color:#ffffff;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%">974&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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,967&#160;</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%">139,334</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">68,352</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">73,217</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">81,054</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">49,603</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">6,200</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">417,760</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Components of cash cash equivalents and investments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types1:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RealizedGainLossOnInvestmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of realized gains and losses on investments reported in the statement of income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RealizedGainLossOnInvestmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the reconciliation of available-for-sale securities from cost basis to fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894617504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventories</a></td>
<td class="text"><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%">March 31, 2024</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, 2023</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%">106,506</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">93,201&#160;</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%">3,241</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,747&#160;</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%">61,124</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">63,337&#160;</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%">170,871</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">162,285&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfInventoryCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807891319808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Operating Lease, Liability, Maturity</a></td>
<td class="text"><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&#160;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 2024</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%">10,392&#160;</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%">2025</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%">12,093&#160;</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%">2026</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%">10,031&#160;</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%">2027</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%">9,171&#160;</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%">2028</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%">8,721&#160;</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%">2029</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%">8,137&#160;</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%">44,658&#160;</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%">103,203</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894281168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfGoodwillTextBlock', window );">Schedule of Goodwill</a></td>
<td class="text"><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, 2023</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%">393,181&#160;</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%">&#160;&#160;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%">(7,024)</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 March 31, 2024</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%">386,157</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1A<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfGoodwillTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R36.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807983155440">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Intangible Assets</a></td>
<td class="text"><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%">Customer relationships</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%">72,775</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(6,587)</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%">66,188</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">Completed technologies</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%">60,160</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">(22,112)</span></td><td style="background-color:#ffffff;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%">38,048</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">Trademarks</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%">842</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">(117)</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%">725</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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:#ffffff;padding: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%">&#160;</span></td><td style="background-color:#ffffff;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%">(247)</span></td><td style="background-color:#ffffff;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%">93</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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 March 31, 2024</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: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%">134,117</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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: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%">(29,063)</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: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%">105,054</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height: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%">&#160;</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%">Customer relationships</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%">75,965&#160;</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%">(5,352)</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%">70,613&#160;</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%">Completed technologies</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%">62,123&#160;</span></td><td style="background-color:#ffffff;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%">(20,745)</span></td><td style="background-color:#ffffff;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,378&#160;</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%">Trademarks</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%">903&#160;</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%">(50)</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%">853&#160;</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: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:#ffffff;padding:2px 0 2px 1pt;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&#160;</span></td><td style="background-color:#ffffff;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%">(232)</span></td><td style="background-color:#ffffff;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%">108&#160;</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 December 31, 2023</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,331&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,379)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">112,952&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock', window );">Schedule of Intangible Assets, Future Amortization Expense</a></td>
<td class="text"><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 March&#160;31, 2024, 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&#160;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 2024</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%">8,179&#160;</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%">2025</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%">10,615&#160;</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%">2026</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%">10,310&#160;</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%">2027</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%">9,587&#160;</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%">2028</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%">8,857&#160;</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%">2029</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%">8,857&#160;</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%">48,649&#160;</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%">105,054</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R37.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892337072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Obligations (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties Disclosures [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Changes in Warranty Obligations</a></td>
<td class="text"><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, 2023</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,244&#160;</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,157&#160;</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%">(939)</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="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;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:#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 March 31, 2024</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%">4,453</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantiesDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantiesDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R38.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807986314528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_OutstandingForwardContractsTableTextBlock', window );">Outstanding Forward Contracts Table</a></td>
<td class="text"><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%">March 31, 2024</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, 2023</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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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%">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%">39,950</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">29,652</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">39,700&#160;</span></td><td style="background-color:#ffffff;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%">30,136&#160;</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%">18,500</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">19,940</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">40,000&#160;</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,302&#160;</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%">205,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,273</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">145,000&#160;</span></td><td style="background-color:#ffffff;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%">8,505&#160;</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%">50,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">6,886</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">50,000&#160;</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,025&#160;</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%">Hungarian Forint</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,250,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">6,152</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,240,000&#160;</span></td><td style="background-color:#ffffff;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%">6,466&#160;</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%">British Pound</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,330</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">4,229</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,345&#160;</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,258&#160;</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;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%">600,000</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,980</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">600,000&#160;</span></td><td style="background-color:#ffffff;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,255&#160;</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%">Swiss Franc</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%">2,400</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">2,673</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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%">Canadian 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%">1,720</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,270</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,470&#160;</span></td><td style="background-color:#ffffff;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,112&#160;</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></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock', window );">Schedule of Derivative Instruments in Statement of Financial Position, Fair Value</a></td>
<td class="text"><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%">&#160;</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%">&#160;</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%">&#160;</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%">March 31,           2024</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, 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: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%">March 31,           2024</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, 2023</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&#160;expenses&#160;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%">22</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">151&#160;</span></td><td style="background-color:#ffffff;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%">221</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">106&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OffsettingAssetsTableTextBlock', window );">Offsetting Assets</a></td>
<td class="text"><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%">March 31,           2024</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, 2023</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%">March 31,           2024</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, 2023</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%">22</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">151&#160;</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%">221</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">106&#160;</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%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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%">22</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">151&#160;</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%">221</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">106&#160;</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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock', window );">Derivative Instruments, Gain (Loss)</a></td>
<td class="text"><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:53.724%"></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.793%"></td><td style="width:0.1%"></td><td colspan="3" style="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 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%">&#160;</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="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="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="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="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%">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%">(245)</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%">(1,471)</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="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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_OutstandingForwardContractsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Outstanding forward contracts table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_OutstandingForwardContractsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types1:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OffsettingAssetsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of derivative and other financial assets that are subject to offsetting, including master netting arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OffsettingAssetsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4E<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4E<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4C<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4C<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R39.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894632720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock', window );">Revenue from External Customers by Geographic Areas</a></td>
<td class="text"><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:67.321%"></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.958%"></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.961%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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="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: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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">83,135</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">80,442&#160;</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="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%">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%">52,354</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,842&#160;</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><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%">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%">30,049</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,172&#160;</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><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></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%">45,259</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">27,668&#160;</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><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 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%">210,797</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">201,124&#160;</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="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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock', window );">Revenue from External Customers by Products and Services</a></td>
<td class="text"><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.707%"><tr><td style="width:1.0%"></td><td style="width:67.375%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.386%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.002%"></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:14.004%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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="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: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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">187,632</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">190,783&#160;</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="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%">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%">23,165</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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%">10,341&#160;</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><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 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%">210,797</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">201,124&#160;</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="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><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock', window );">Schedule of Allowance for Credit Loss Activity</a></td>
<td class="text"><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 three-month period ended March&#160;31, 2024 (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, 2023</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%">583&#160;</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 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:#ffffff;padding:2px 0 2px 1pt;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&#160;</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%">1&#160;</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 March 31, 2024</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%">601</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock', window );">Deferred Revenue, by Arrangement, Disclosure</a></td>
<td class="text"><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 three-month period ended March&#160;31, 2024 (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, 2023</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%">31,525&#160;</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%">24,921&#160;</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%">(16,184)</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 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%">(279)</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 March 31, 2024</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%">39,983</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueByArrangementDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredRevenueByArrangementDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph a<br> -SubTopic 10<br> -Topic 280<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R40.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807986314528">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted</a></td>
<td class="text"><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:68.052%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></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.960%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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%">&#160;</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&#160;Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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.3</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">4.0&#160;</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="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%">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.76</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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.59&#160;</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="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%">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%">&#160;</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%">39&#160;</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="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%">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%">4.7</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%">4.3</span></td><td colspan="3" style="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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock', window );">Schedule of Nonvested Restricted Stock Units Activity</a></td>
<td class="text"><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 three-month period ended March&#160;31, 2024: </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&#160;31, 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:400;line-height:100%">1,429&#160;</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%">54.22&#160;</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%">765&#160;</span></td><td style="background-color:#ffffff;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%">38.82&#160;</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%">(339)</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%">65.45&#160;</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%">(36)</span></td><td style="background-color:#ffffff;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%">52.43&#160;</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 March&#160;31, 2024</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,819</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">45.68</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock', window );">Schedule of Nonvested Performance-based Units Activity</a></td>
<td class="text"><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 three-month period ended March&#160;31, 2024: </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&#160;31, 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:400;line-height:100%">79&#160;</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%">52.23&#160;</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%">55&#160;</span></td><td style="background-color:#ffffff;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%">39.05&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</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%">&#8212;&#160;</span></td><td style="background-color:#ffffff;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%">&#8212;&#160;</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 March&#160;31, 2024</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%">134</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">46.82</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs</a></td>
<td class="text"><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:68.052%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></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.960%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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%">&#160;</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="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">605</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">621&#160;</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="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%">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%">4,389</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,890&#160;</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><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%">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,308</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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,068&#160;</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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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%">13,302</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">16,579&#160;</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="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><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in outstanding nonvested performance-based units.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in outstanding nonvested restricted stock units.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (f)(2)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R41.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807891266064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2024</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Calculation of Weighted-Average Shares</a></td>
<td class="text"><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:68.052%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.958%"></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.960%"></td><td style="width:0.1%"></td><td colspan="3" style="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="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%">&#160;</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="display:none"></td><td colspan="3" style="display:none"></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%">&#160;</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%">March 31, 2024</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%">April 2, 2023</span></td><td colspan="3" style="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%">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%">171,692</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">172,624&#160;</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="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%">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%">902</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;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,279&#160;</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><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%">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%">172,594</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</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%">173,903&#160;</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="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></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R42.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807886191904">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">$ 417,760<span></span>
</td>
<td class="nump">$ 373,622<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">353,745<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">16,995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">1,967<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1) | Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">667<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_CertificateOfDepositFairValueDisclosure', window );">Certificate of deposit</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1) | Recurring | Treasury bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsFairValueDisclosure', window );">Cash and cash equivalents</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1) | Recurring | Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1) | Recurring | Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1) | Recurring | Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Quoted&#160;Prices&#160;in Active Markets for Identical Assets (Level 1) | Recurring | Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_CertificateOfDepositFairValueDisclosure', window );">Certificate of deposit</a></td>
<td class="nump">6,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">22<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">221<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Recurring | Treasury bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsFairValueDisclosure', window );">Cash and cash equivalents</a></td>
<td class="nump">3,499<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Recurring | Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">353,745<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Recurring | Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Recurring | Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">16,995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Significant Other Observable Inputs (Level 2) | Recurring | Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">1,967<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Unobservable Inputs (Level 3) | Recurring</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MoneyMarketFundsAtCarryingValue', window );">Money market instruments</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_CertificateOfDepositFairValueDisclosure', window );">Certificate of deposit</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesFairValueDisclosureAbstract', window );"><strong>Liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure', window );">Economic hedge forward contracts</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Unobservable Inputs (Level 3) | Recurring | Treasury bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsFairValueDisclosure', window );">Cash and cash equivalents</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Unobservable Inputs (Level 3) | Recurring | Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Unobservable Inputs (Level 3) | Recurring | Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Unobservable Inputs (Level 3) | Recurring | Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Unobservable Inputs (Level 3) | Recurring | Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsFairValueDisclosureAbstract', window );"><strong>Assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Financial assets at fair value</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_CertificateOfDepositFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Certificate Of Deposit, Fair Value Disclosure</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_CertificateOfDepositFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyContractAssetFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyContractAssetFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesFairValueDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesFairValueDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MoneyMarketFundsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MoneyMarketFundsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByMeasurementFrequencyAxis=us-gaap_FairValueMeasurementsRecurringMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_USTreasuryBillSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_USTreasuryBillSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>63
<FILENAME>R43.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892882432">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">$ 138,859<span></span>
</td>
<td class="nump">$ 202,655<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Current investments</a></td>
<td class="nump">139,334<span></span>
</td>
<td class="nump">129,392<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermInvestments', window );">Non-current investments</a></td>
<td class="nump">278,426<span></span>
</td>
<td class="nump">244,230<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments', window );">Total</a></td>
<td class="nump">556,619<span></span>
</td>
<td class="nump">576,277<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_CashMember', window );">Cash</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">128,264<span></span>
</td>
<td class="nump">183,242<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember', window );">Certificate of deposit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">6,429<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_USTreasuryBillSecuritiesMember', window );">Treasury bills</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">3,499<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember', window );">Money market instruments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents</a></td>
<td class="nump">667<span></span>
</td>
<td class="nump">19,413<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Current investments</a></td>
<td class="nump">134,032<span></span>
</td>
<td class="nump">124,851<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">219,713<span></span>
</td>
<td class="nump">183,965<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Current investments</a></td>
<td class="nump">4,309<span></span>
</td>
<td class="nump">3,551<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">12,686<span></span>
</td>
<td class="nump">15,763<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="nump">43,523<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtMember', window );">Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent', window );">Current investments</a></td>
<td class="nump">993<span></span>
</td>
<td class="nump">990<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent', window );">Long-term investments</a></td>
<td class="nump">$ 974<span></span>
</td>
<td class="nump">$ 979<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_CashCashEquivalentsShortTermAndLongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cash, cash equivalents, short term and long term investments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_CashCashEquivalentsShortTermAndLongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_CashMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_CashMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_CertificatesOfDepositMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_USTreasuryBillSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_USTreasuryBillSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAxis=us-gaap_MoneyMarketFundsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>R44.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892698512">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Narrative (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss', window );">Debt securities, available-for-sale, allowance for credit loss</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain', window );">Gross realized gains</a></td>
<td class="nump">2<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss', window );">Gross realized losses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherCurrentAssetsMember', window );">Other current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsLineItems', window );"><strong>Cash and Cash Equivalents [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestReceivable', window );">Accrued interest receivable</a></td>
<td class="nump">$ 4,119<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,169<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleRealizedGain</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of interest earned but not received. Also called accrued interest or accrued interest receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480833/946-310-45-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_OtherCurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<FILENAME>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893325904">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">$ 427,252<span></span>
</td>
<td class="nump">$ 383,589<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">175<span></span>
</td>
<td class="nump">588<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(9,667)<span></span>
</td>
<td class="num">(10,555)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">417,760<span></span>
</td>
<td class="nump">373,622<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">353,745<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds | Current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">136,479<span></span>
</td>
<td class="nump">128,150<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(2,447)<span></span>
</td>
<td class="num">(3,299)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">134,032<span></span>
</td>
<td class="nump">124,851<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds | Non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">225,074<span></span>
</td>
<td class="nump">189,326<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">175<span></span>
</td>
<td class="nump">506<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(5,536)<span></span>
</td>
<td class="num">(5,867)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">219,713<span></span>
</td>
<td class="nump">183,965<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">16,995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities | Current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">4,391<span></span>
</td>
<td class="nump">3,637<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(82)<span></span>
</td>
<td class="num">(86)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">4,309<span></span>
</td>
<td class="nump">3,551<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities | Non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">13,512<span></span>
</td>
<td class="nump">16,773<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(826)<span></span>
</td>
<td class="num">(1,010)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">12,686<span></span>
</td>
<td class="nump">15,763<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury notes | Non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">45,760<span></span>
</td>
<td class="nump">43,654<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">82<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(707)<span></span>
</td>
<td class="num">(213)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="nump">43,523<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">1,967<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign bonds | Current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">1,006<span></span>
</td>
<td class="nump">1,012<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(13)<span></span>
</td>
<td class="num">(22)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">993<span></span>
</td>
<td class="nump">990<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign bonds | Non-current assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis', window );">Amortized Cost</a></td>
<td class="nump">1,030<span></span>
</td>
<td class="nump">1,037<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax', window );">Gross Unrealized Gains</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax', window );">Gross Unrealized Losses</a></td>
<td class="num">(56)<span></span>
</td>
<td class="num">(58)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Fair&#160;Value</a></td>
<td class="nump">$ 974<span></span>
</td>
<td class="nump">$ 979<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=cgnx_CurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=cgnx_CurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=cgnx_NonCurrentAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=cgnx_NonCurrentAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>66
<FILENAME>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807886212160">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months', window );">Fair value, less than 12 months</a></td>
<td class="nump">$ 152,406<span></span>
</td>
<td class="nump">$ 68,557<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(2,594)<span></span>
</td>
<td class="num">(1,561)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger', window );">Fair value, 12 months or greater</a></td>
<td class="nump">229,640<span></span>
</td>
<td class="nump">233,304<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(7,073)<span></span>
</td>
<td class="num">(8,994)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition', window );">Total fair value</a></td>
<td class="nump">382,046<span></span>
</td>
<td class="nump">301,861<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss', window );">Total unrealized Losses</a></td>
<td class="num">(9,667)<span></span>
</td>
<td class="num">(10,555)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months', window );">Fair value, less than 12 months</a></td>
<td class="nump">95,052<span></span>
</td>
<td class="nump">30,770<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(1,087)<span></span>
</td>
<td class="num">(359)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger', window );">Fair value, 12 months or greater</a></td>
<td class="nump">222,979<span></span>
</td>
<td class="nump">226,643<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(6,896)<span></span>
</td>
<td class="num">(8,807)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition', window );">Total fair value</a></td>
<td class="nump">318,031<span></span>
</td>
<td class="nump">257,413<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss', window );">Total unrealized Losses</a></td>
<td class="num">(7,983)<span></span>
</td>
<td class="num">(9,166)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months', window );">Fair value, less than 12 months</a></td>
<td class="nump">42,612<span></span>
</td>
<td class="nump">20,725<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(647)<span></span>
</td>
<td class="num">(153)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger', window );">Fair value, 12 months or greater</a></td>
<td class="nump">2,441<span></span>
</td>
<td class="nump">2,441<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(60)<span></span>
</td>
<td class="num">(60)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition', window );">Total fair value</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="nump">23,166<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss', window );">Total unrealized Losses</a></td>
<td class="num">(707)<span></span>
</td>
<td class="num">(213)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months', window );">Fair value, less than 12 months</a></td>
<td class="nump">14,742<span></span>
</td>
<td class="nump">17,062<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="num">(860)<span></span>
</td>
<td class="num">(1,049)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger', window );">Fair value, 12 months or greater</a></td>
<td class="nump">2,252<span></span>
</td>
<td class="nump">2,252<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(48)<span></span>
</td>
<td class="num">(47)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition', window );">Total fair value</a></td>
<td class="nump">16,994<span></span>
</td>
<td class="nump">19,314<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss', window );">Total unrealized Losses</a></td>
<td class="num">(908)<span></span>
</td>
<td class="num">(1,096)<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months', window );">Fair value, less than 12 months</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss', window );">Unrealized losses, less than 12 months</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger', window );">Fair value, 12 months or greater</a></td>
<td class="nump">1,968<span></span>
</td>
<td class="nump">1,968<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss', window );">Unrealized losses, 12 months or greater</a></td>
<td class="num">(69)<span></span>
</td>
<td class="num">(80)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition', window );">Total fair value</a></td>
<td class="nump">1,968<span></span>
</td>
<td class="nump">1,968<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss', window );">Total unrealized Losses</a></td>
<td class="num">$ (69)<span></span>
</td>
<td class="num">$ (80)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479081/326-30-55-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479081/326-30-55-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-7<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-7<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479081/326-30-55-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479106/326-30-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>67
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892675232">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAbstract', window );"><strong>Cash and Cash Equivalents [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain', window );">Gross realized gains</a></td>
<td class="nump">$ 2<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss', window );">Gross realized losses</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RealizedInvestmentGainsLosses', window );">Net realized gains (losses)</a></td>
<td class="nump">$ 2<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedGain">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleRealizedGain</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RealizedInvestmentGainsLosses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of realized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(3)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RealizedInvestmentGainsLosses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>68
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807895726624">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">less than 1 year</a></td>
<td class="nump">$ 139,334<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 Years</a></td>
<td class="nump">68,352<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 Years</a></td>
<td class="nump">73,217<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 Years</a></td>
<td class="nump">81,054<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 Years</a></td>
<td class="nump">49,603<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears', window );">5-8 Years</a></td>
<td class="nump">6,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Total</a></td>
<td class="nump">417,760<span></span>
</td>
<td class="nump">$ 373,622<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember', window );">Corporate bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">less than 1 year</a></td>
<td class="nump">134,032<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 Years</a></td>
<td class="nump">57,463<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 Years</a></td>
<td class="nump">59,120<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 Years</a></td>
<td class="nump">58,225<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 Years</a></td>
<td class="nump">44,905<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears', window );">5-8 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Total</a></td>
<td class="nump">353,745<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember', window );">Treasury notes</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">less than 1 year</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 Years</a></td>
<td class="nump">3,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 Years</a></td>
<td class="nump">14,097<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 Years</a></td>
<td class="nump">22,829<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 Years</a></td>
<td class="nump">4,698<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears', window );">5-8 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Total</a></td>
<td class="nump">45,053<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember', window );">Asset-backed securities</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">less than 1 year</a></td>
<td class="nump">4,309<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 Years</a></td>
<td class="nump">6,486<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears', window );">5-8 Years</a></td>
<td class="nump">6,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Total</a></td>
<td class="nump">16,995<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember', window );">Sovereign bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems', window );"><strong>Debt Securities, Available-for-sale</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue', window );">less than 1 year</a></td>
<td class="nump">993<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue', window );">1-2 Years</a></td>
<td class="nump">974<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue', window );">2-3 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue', window );">3-4 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue', window );">4-5 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears', window );">5-8 Years</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities', window );">Total</a></td>
<td class="nump">$ 1,967<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Available For Sale Securities Debt Maturities After Five Years</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Available-for-sale securities, debt maturities after fourth year but before fifth year, fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Available-for-sale securities, debt maturities after third year but before fourth year, fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Available-for-sale securities, debt maturities after second year but before third year, fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480832/942-320-50-3A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AvailableForSaleSecuritiesDebtSecurities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481830/320-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479130/326-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AvailableForSaleSecuritiesDebtSecurities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (aaa)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 320<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481800/320-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_CorporateBondSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_USTreasurySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_AssetBackedSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancialInstrumentAxis=us-gaap_SovereignDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>69
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893648320">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">$ 106,506<span></span>
</td>
<td class="nump">$ 93,201<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work-in-process</a></td>
<td class="nump">3,241<span></span>
</td>
<td class="nump">5,747<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">61,124<span></span>
</td>
<td class="nump">63,337<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories</a></td>
<td class="nump">$ 170,871<span></span>
</td>
<td class="nump">$ 162,285<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.BB)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480581/330-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>70
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893367200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - Narrative (Details)<br> ft&#178; in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jun. 30, 2023 </div>
<div>ft&#178; </div>
<div>lease_component</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 02, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease, cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,563<span></span>
</td>
<td class="nump">$ 2,392<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating lease, payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,208<span></span>
</td>
<td class="nump">2,404<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseCost', window );">Lease, cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">82<span></span>
</td>
<td class="nump">$ 24<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Operating lease liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">77,165<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 78,601<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating lease assets</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">74,113<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 75,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Future lease payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">103,203<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">Remainder of fiscal 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,392<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted average discount rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.70%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.70%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted average remaining lease term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years 3 months 18 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">10 years 6 months<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_SG', window );">Singapore</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_LesseeOperatingLeaseComponents', window );">Lease components | lease_component</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_SG', window );">Singapore | 88,000 square-foot premises</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetRentableArea', window );">Rentable area | ft&#178;</a></td>
<td class="nump">88<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_SG', window );">Singapore | 27,000 square-foot premises</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeaseDescriptionLineItems', window );"><strong>Lessee, Lease, Description [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetRentableArea', window );">Rentable area | ft&#178;</a></td>
<td class="nump">27<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseTermOfContract', window );">Term of contract</a></td>
<td class="text">8 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract', window );">Option to renew, term of contract</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Future lease payments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 13,231<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">Remainder of fiscal 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_LesseeOperatingLeaseComponents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Components</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_LesseeOperatingLeaseComponents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Option to Renew, Term of Contract</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lease cost recognized by lessee for lease contract.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeaseDescriptionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeLeaseDescriptionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetRentableArea">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net rentable area for properties owned.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetRentableArea</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479041/842-20-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_SG">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_SG</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cgnx_A88000SquareFootPremisesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cgnx_A88000SquareFootPremisesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=cgnx_A27000SquareFootPremisesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentByTypeAxis=cgnx_A27000SquareFootPremisesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>71
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139808011500960">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">Remainder of fiscal 2024</a></td>
<td class="nump">$ 10,392<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</a></td>
<td class="nump">12,093<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2026</a></td>
<td class="nump">10,031<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2027</a></td>
<td class="nump">9,171<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2028</a></td>
<td class="nump">8,721<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">2029</a></td>
<td class="nump">8,137<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">44,658<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total</a></td>
<td class="nump">$ 103,203<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>72
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893640864">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Goodwill (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillRollForward', window );"><strong>Goodwill [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance as of December 31, 2023</a></td>
<td class="nump">$ 393,181<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Foreign exchange rate changes</a></td>
<td class="num">(7,024)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Goodwill', window );">Balance as of March 31, 2024</a></td>
<td class="nump">$ 386,157<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482598/350-20-45-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillForeignCurrencyTranslationGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807886132064">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">$ 134,117<span></span>
</td>
<td class="nump">$ 139,331<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(29,063)<span></span>
</td>
<td class="num">(26,379)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">105,054<span></span>
</td>
<td class="nump">112,952<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">105,054<span></span>
</td>
<td class="nump">112,952<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember', window );">Indefinite-lived intangible asset excluding in-process technologies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">105,054<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">Remainder of fiscal 2024</a></td>
<td class="nump">8,179<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">2025</a></td>
<td class="nump">10,615<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">2026</a></td>
<td class="nump">10,310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">2027</a></td>
<td class="nump">9,587<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">2028</a></td>
<td class="nump">8,857<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">2029</a></td>
<td class="nump">8,857<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive', window );">Thereafter</a></td>
<td class="nump">48,649<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">105,054<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_CustomerContractsAndRelationshipsMember', window );">Customer relationships</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">72,775<span></span>
</td>
<td class="nump">75,965<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(6,587)<span></span>
</td>
<td class="num">(5,352)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">66,188<span></span>
</td>
<td class="nump">70,613<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">66,188<span></span>
</td>
<td class="nump">70,613<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember', window );">Completed technologies</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">60,160<span></span>
</td>
<td class="nump">62,123<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(22,112)<span></span>
</td>
<td class="num">(20,745)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">38,048<span></span>
</td>
<td class="nump">41,378<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">38,048<span></span>
</td>
<td class="nump">41,378<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember', window );">Trademarks</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">842<span></span>
</td>
<td class="nump">903<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(117)<span></span>
</td>
<td class="num">(50)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">725<span></span>
</td>
<td class="nump">853<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">725<span></span>
</td>
<td class="nump">853<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember', window );">Non-compete agreements</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsLineItems', window );"><strong>Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Gross Carrying Value</a></td>
<td class="nump">340<span></span>
</td>
<td class="nump">340<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="num">(247)<span></span>
</td>
<td class="num">(232)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">93<span></span>
</td>
<td class="nump">108<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract', window );"><strong>Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Net Carrying Value</a></td>
<td class="nump">$ 93<span></span>
</td>
<td class="nump">$ 108<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 928<br> -SubTopic 340<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483147/928-340-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483154/926-20-50-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_CustomerContractsAndRelationshipsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=cgnx_CustomerContractsAndRelationshipsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_DevelopedTechnologyRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_TrademarksMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_OtherIntangibleAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>74
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893654224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Obligations (Detail) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MovementInStandardProductWarrantyAccrualRollForward', window );"><strong>Movement in Standard Product Warranty Accrual [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">$ 4,244<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued', window );">Provisions for warranties issued during the period</a></td>
<td class="nump">1,157<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualPayments', window );">Fulfillment of warranty obligations</a></td>
<td class="num">(939)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss', window );">Standard Product Warranty Accrual, Foreign Currency Translation Gain (Loss)</a></td>
<td class="nump">9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">4,453<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 210,797<span></span>
</td>
<td class="nump">$ 201,124<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MovementInStandardProductWarrantyAccrualRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MovementInStandardProductWarrantyAccrualRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-4<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.15(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard and extended product warranty accrual from warranties issued.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of foreign currency translation gain (loss) which decreases (increases) the standard product warranty accrual. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>75
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807894689232">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Commitment and Contingencies (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>Commitments and Contingencies Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted', window );">Outstanding purchase orders</a></td>
<td class="nump">$ 40,843<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>76
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807975095360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments - Narrative (Details) - Not Designated as Hedging Instrument - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems', window );"><strong>Derivative Instruments and Hedging Activities Disclosures [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1', window );">Remaining maturity of foreign currency derivatives (up to)</a></td>
<td class="text">3 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeGainLossOnDerivativeNet', window );">Gains (losses) recognized in current operations</a></td>
<td class="num">$ (245)<span></span>
</td>
<td class="num">$ (1,471)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeGainLossOnDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeGainLossOnDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>77
<FILENAME>R57.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807886005984">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative Instruments - Outstanding Forward Contracts Table (Details) - Not Designated as Hedging Instrument<br> &#8364; in Thousands, &#165; in Thousands, &#165; in Thousands, &#163; in Thousands, SFr in Thousands, Ft in Thousands, $ in Thousands, $ in Thousands, $ in Thousands, $ in Thousands</strong></div></th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>SGD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>MXN ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>CNY (&#165;)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>HUF (Ft)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>GBP (&#163;)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>CHF (SFr)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>CAD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>SGD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>EUR (&#8364;)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>MXN ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>CNY (&#165;)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>HUF (Ft)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>GBP (&#163;)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>CHF (SFr)</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>CAD ($)</div>
</th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Japanese Yen</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,980<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,255<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 600,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Euro</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">19,940<span></span>
</td>
<td class="nump">&#8364; 18,500<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">44,302<span></span>
</td>
<td class="nump">&#8364; 40,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Singapore Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="nump">$ 39,950<span></span>
</td>
<td class="nump">29,652<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 39,700<span></span>
</td>
<td class="nump">30,136<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Chinese Renminbi</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,886<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#165; 50,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Mexican Peso</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,273<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 205,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,505<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 145,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Hungarian Forint</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,152<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">Ft 2,250,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,466<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">Ft 2,240,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">British Pound</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,229<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#163; 3,330<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,258<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">&#163; 3,345<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Canadian Dollar</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,270<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,720<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,112<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,470<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Swiss Franc</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLineItems', window );"><strong>Derivative [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetNotionalAmount', window );">Outstanding forward contracts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,673<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">SFr 2,400<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">SFr 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssetNotionalAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Nominal or face amount used to calculate payments on the derivative asset.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column D))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1B<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1A<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssetNotionalAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480237/815-40-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_JPY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_JPY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_EUR">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_EUR</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_SGD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_SGD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_CNY">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_CNY</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_MXN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_MXN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_HUF">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_HUF</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_GBP">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_GBP</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_CAD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_CAD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_CurrencyAxis=currency_CHF">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_CurrencyAxis=currency_CHF</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>78
<FILENAME>R58.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893752992">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativesFairValueLineItems', window );"><strong>Derivatives, Fair Value [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative asset</a></td>
<td class="nump">$ 22<span></span>
</td>
<td class="nump">$ 151<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="nump">221<span></span>
</td>
<td class="nump">106<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Not Designated as Hedging Instrument</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativesFairValueLineItems', window );"><strong>Derivatives, Fair Value [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Derivative asset</a></td>
<td class="nump">22<span></span>
</td>
<td class="nump">151<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Derivative liability</a></td>
<td class="nump">$ 221<span></span>
</td>
<td class="nump">$ 106<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480493/946-210-55-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(3)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(3)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-10<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(9)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(9)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(9)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column G)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column G))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-10<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativesFairValueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativesFairValueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>79
<FILENAME>R59.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807895705184">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Derivative Instruments - Offsetting Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract', window );"><strong>Derivative Instruments and Hedging Activities Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFairValueOfDerivativeAsset', window );">Gross amounts of recognized assets</a></td>
<td class="nump">$ 22<span></span>
</td>
<td class="nump">$ 151<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset', window );">Gross amounts offset</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeAssets', window );">Net amount of assets presented</a></td>
<td class="nump">22<span></span>
</td>
<td class="nump">151<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeFairValueOfDerivativeLiability', window );">Gross amounts of recognized liabilities</a></td>
<td class="nump">221<span></span>
</td>
<td class="nump">106<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset', window );">Gross amounts offset</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeLiabilities', window );">Net amount of liabilities presented</a></td>
<td class="nump">$ 221<span></span>
</td>
<td class="nump">$ 106<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to return cash collateral under master netting arrangements offset against derivative assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -SubTopic 10<br> -Topic 815<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480463/815-10-45-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -SubTopic 20<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480493/946-210-55-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(3)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(3)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column A)(Footnote 3))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-10<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFairValueOfDerivativeAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-7<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a),(c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4B<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (c)(2)<br> -SubTopic 20<br> -Topic 860<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481326/860-20-50-4D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeFairValueOfDerivativeAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeFairValueOfDerivativeLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-22<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-7<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a),(c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4B<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4D<br> -Subparagraph (c)(2)<br> -SubTopic 20<br> -Topic 860<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481326/860-20-50-4D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeFairValueOfDerivativeLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 10: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(9)(e))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H)(Footnote 7))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(9)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(9)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column G)(Footnote 8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5C<br> -Subparagraph (SX 210.12-13C(Column H))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5C<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SX 210.12-13(Column G))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5A<br> -Subparagraph (SX 210.12-13A(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5A<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5B<br> -Subparagraph (SX 210.12-13B(Column E)(Footnote 4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5B<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-22<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483444/210-20-55-10<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of right to receive cash collateral under master netting arrangements offset against derivative liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -SubTopic 10<br> -Topic 815<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480463/815-10-45-5<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -SubTopic 20<br> -Topic 210<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483466/210-20-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>80
<FILENAME>R60.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807891125936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Derivative Instruments - Derivative Instruments, Gain (Loss) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember', window );">Not Designated as Hedging Instrument</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeInstrumentsGainLossLineItems', window );"><strong>Derivative Instruments, Gain (Loss) [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DerivativeGainLossOnDerivativeNet', window );">Gains (losses) recognized in current operations</a></td>
<td class="num">$ (245)<span></span>
</td>
<td class="num">$ (1,471)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeGainLossOnDerivativeNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in the fair value of derivatives recognized in the income statement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeGainLossOnDerivativeNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DerivativeInstrumentsGainLossLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4E<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480434/815-10-50-4E<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DerivativeInstrumentsGainLossLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>81
<FILENAME>R61.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807975109952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Revenue Disaggregated by Geography (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 210,797<span></span>
</td>
<td class="nump">$ 201,124<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_AmericasMember', window );">Americas</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">83,135<span></span>
</td>
<td class="nump">80,442<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=srt_EuropeMember', window );">Europe</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">52,354<span></span>
</td>
<td class="nump">59,842<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CN', window );">Greater China</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">30,049<span></span>
</td>
<td class="nump">33,172<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=cgnx_AsiaExcludingChinaMember', window );">Other Asia</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueLineItems', window );"><strong>Disaggregation of Revenue [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 45,259<span></span>
</td>
<td class="nump">$ 27,668<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisaggregationOfRevenueLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 91<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479777/606-10-55-91<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisaggregationOfRevenueLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_AmericasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_AmericasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=srt_EuropeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=srt_EuropeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CN">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CN</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=cgnx_AsiaExcludingChinaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=cgnx_AsiaExcludingChinaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>82
<FILENAME>R62.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807896525856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Revenue Disaggregated by Products and Services (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 210,797<span></span>
</td>
<td class="nump">$ 201,124<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=cgnx_StandardProductsandServicesMember', window );">Standard products and services</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">187,632<span></span>
</td>
<td class="nump">190,783<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=cgnx_ApplicationSpecificCustomerSolutionsMember', window );">Application-specific customer solutions</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems', window );"><strong>Revenue from External Customer [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 23,165<span></span>
</td>
<td class="nump">$ 10,341<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479941/924-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=cgnx_StandardProductsandServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=cgnx_StandardProductsandServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=cgnx_ApplicationSpecificCustomerSolutionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=cgnx_ApplicationSpecificCustomerSolutionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>83
<FILENAME>R63.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807983186560">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Revenue Recognition - Additional Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalizedContractCostGross', window );">Costs to fulfill contract</a></td>
<td class="nump">$ 11,783<span></span>
</td>
<td class="nump">$ 13,265<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CapitalizedContractCostGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 340<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479483/340-40-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CapitalizedContractCostGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>84
<FILENAME>R64.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892845648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Schedule of Allowance for Credit Loss (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward', window );"><strong>Accounts Receivable, Allowance for Credit Loss [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Balance as of December 31, 2023</a></td>
<td class="nump">$ 583<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery', window );">Write-offs, net of recoveries</a></td>
<td class="nump">17<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease', window );">Foreign exchange rate changes</a></td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Balance as of March 31, 2024</a></td>
<td class="nump">$ 601<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease)</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accounts Receivable, Allowance for Credit Loss, Writeoff (Recovery)</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481962/310-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>85
<FILENAME>R65.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892928576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition - Deferred Revenue Activity (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MovementInDeferredRevenueRollForward', window );"><strong>Movement in Deferred Revenue [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenue', window );">Balance as of December 31, 2023</a></td>
<td class="nump">$ 31,525<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenueAdditions', window );">Deferral of revenue billed in the current period, net of recognition</a></td>
<td class="nump">24,921<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenueRevenueRecognized1', window );">Recognition of revenue deferred in prior period</a></td>
<td class="num">(16,184)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment', window );">Foreign exchange rate changes</a></td>
<td class="num">(279)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredRevenue', window );">Balance as of March 31, 2024</a></td>
<td class="nump">$ 39,983<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Deferred Revenue, Foreign Currency Exchange Adjustment</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(26)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredRevenue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueAdditions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredRevenueAdditions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueRevenueRecognized1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously reported as deferred or unearned revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredRevenueRevenueRecognized1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MovementInDeferredRevenueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MovementInDeferredRevenueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>86
<FILENAME>R66.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807895697584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Narrative (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">11 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($) </div>
<div>group </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Apr. 02, 2023 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($) </div>
<div>group </div>
<div>shares</div>
</th>
<th class="th">
<div>Dec. 31, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>May 03, 2023 </div>
<div>shares</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromStockOptionsExercised', window );">Proceeds from Stock Options Exercised</a></td>
<td class="nump">$ 1,121,000<span></span>
</td>
<td class="nump">$ 3,976,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions', window );">Share-Based Payment Arrangement, Exercise of Option, Tax Benefit</a></td>
<td class="num">$ (29,000)<span></span>
</td>
<td class="num">$ (1,466,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted-average grant-date fair values (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 14.66<span></span>
</td>
<td class="nump">$ 17.79<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue', window );">Total intrinsic value</a></td>
<td class="nump">$ 1,055,000<span></span>
</td>
<td class="nump">$ 3,439,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue', window );">Total fair values of stock options vest</a></td>
<td class="nump">$ 25,807,000<span></span>
</td>
<td class="nump">31,181,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_NumberOfGroupsWithinEmployeePopulation', window );">Groups within the employee population | group</a></td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO', window );">Estimated forfeiture rate for unvested options for CEO</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement', window );">Estimated annual forfeiture rate for unvested options for senior management</a></td>
<td class="nump">9.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement', window );">Estimated annual forfeiture rate for unvested options for all other employees</a></td>
<td class="nump">13.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">13.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates', window );">Decrease in compensation expense due to revised estimated forfeiture rates</a></td>
<td class="nump">$ 1,832,000<span></span>
</td>
<td class="nump">234,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized compensation expense</a></td>
<td class="nump">$ 86,273,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 86,273,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition', window );">Weighted average period to be recognized</a></td>
<td class="text">2 years 1 month 6 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 13,302,000<span></span>
</td>
<td class="nump">16,579,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Tax benefit from compensation expense</a></td>
<td class="nump">1,745,000<span></span>
</td>
<td class="nump">$ 2,308,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount', window );">Recognized period costs capitalized</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember', window );">2001 Plan and 2007 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Shares available for grant under stock option plans (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,610,800<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember', window );">2023 Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Shares auhtorised for grant under stock option plans (in shares) | shares</a></td>
<td class="nump">8,807,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,807,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,100,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized', window );">Additional shares available for grant under stock option plans (in shares) | shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">707,900<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Shares available for grant under stock option plans (in shares) | shares</a></td>
<td class="nump">6,001,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,001,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ExpirationPeriodOfStockOptionPlan', window );">Expiration period from grant day</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 38.82<span></span>
</td>
<td class="nump">$ 46.61<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="nump">339,000<span></span>
</td>
<td class="nump">453,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Payment, Tax Withholding, Share-Based Payment Arrangement</a></td>
<td class="nump">$ 3,981,000<span></span>
</td>
<td class="nump">$ 7,032,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="nump">765,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense', window );">Tax benefit from compensation expense</a></td>
<td class="num">$ (4,793,000)<span></span>
</td>
<td class="num">$ (2,718,000)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember', window );">Performance Shares (PRSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period for stock option plans</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 39.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares) | shares</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="nump">55,000<span></span>
</td>
<td class="nump">46,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | General Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period for stock option plans</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MinimumMember', window );">Minimum | Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period for stock option plans</a></td>
<td class="text">3 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | General Stock Option Plan</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period for stock option plans</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum | Restricted Stock Units (RSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1', window );">Vesting period for stock option plans</a></td>
<td class="text">4 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee service share based compensation recognized period costs capitalized amount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated forfeiture rate for unvested options for all non-senior management.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types1:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated Forfeiture Rate for Unvested Options for CEO</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Estimated forfeiture rate for unvested options for senior management.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types1:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ExpirationPeriodOfStockOptionPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expiration period of stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ExpirationPeriodOfStockOptionPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_NumberOfGroupsWithinEmployeePopulation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of groups within employee population.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_NumberOfGroupsWithinEmployeePopulation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award options vested fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Shares based compensation arrangement by shares based payment award options exercisable intrinsic value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax benefit for recognition of expense of award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of tax benefit from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow from exercise of option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of additional shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=cgnx_GeneralStockOptionPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PlanNameAxis=cgnx_GeneralStockOptionPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>87
<FILENAME>R67.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807895209616">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($) </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward', window );"><strong>Shares (in&#160;thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding (in shares) | shares</a></td>
<td class="nump">9,008<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Granted (in shares) | shares</a></td>
<td class="nump">1,523<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Exercised (in shares) | shares</a></td>
<td class="num">(56)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod', window );">Forfeited or expired (in shares) | shares</a></td>
<td class="num">(330)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Outstanding (in shares) | shares</a></td>
<td class="nump">10,145<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Exercisable as of reporting date (in shares) | shares</a></td>
<td class="nump">5,973<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber', window );">Options vested or expected to vest as of reporting date (in shares) | shares</a></td>
<td class="nump">9,405<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward', window );"><strong>Weighted- Average Exercise Price</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding (in dollars per shares) | $ / shares</a></td>
<td class="nump">$ 50.87<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice', window );">Granted (in dollars per shares) | $ / shares</a></td>
<td class="nump">39.44<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice', window );">Exercised (in dollars per shares) | $ / shares</a></td>
<td class="nump">19.87<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice', window );">Forfeited or expired (in dollars per shares) | $ / shares</a></td>
<td class="nump">57.58<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice', window );">Outstanding (in dollars per shares) | $ / shares</a></td>
<td class="nump">49.11<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice', window );">Exercisable as of reporting date (in dollars per shares) | $ / shares</a></td>
<td class="nump">49.04<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice', window );">Vested and expected to vest (in dollars per shares) | $ / shares</a></td>
<td class="nump">$ 49.28<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract', window );"><strong>Weighted- Average Remaining Contractual Term&#160;(in&#160;years)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2', window );">Outstanding (in years)</a></td>
<td class="text">6 years 3 months 18 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1', window );">Exercisable (in years)</a></td>
<td class="text">4 years 6 months 21 days<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1', window );">Options vested or expected to vest (in years)</a></td>
<td class="text">6 years 1 month 2 days<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract', window );"><strong>Aggregate Intrinsic Value (in&#160;thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Outstanding | $</a></td>
<td class="nump">$ 21,531<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue', window );">Exercisable | $</a></td>
<td class="nump">15,941<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue', window );">Options vested or expected to vest | $</a></td>
<td class="nump">$ 20,336<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1 [Abstract]</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award options exercisable aggregate intrinsic value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price of options that were either forfeited or expired.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net number of share options (or share units) granted during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of options outstanding, including both vested and non-vested options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average price at which option holders acquired shares when converting their stock options into shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (e)(1)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of share options (or share units) exercised during the current period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>88
<FILENAME>R68.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807975080832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Risk-free rate</a></td>
<td class="nump">4.30%<span></span>
</td>
<td class="nump">4.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Expected dividend yield</a></td>
<td class="nump">0.76%<span></span>
</td>
<td class="nump">0.59%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">39.00%<span></span>
</td>
<td class="nump">39.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected term (in years)</a></td>
<td class="text">4 years 8 months 12 days<span></span>
</td>
<td class="text">4 years 3 months 18 days<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>89
<FILENAME>R69.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807886107824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details) - Restricted Stock Units (RSUs) - $ / shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Shares (in thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested as of beginning of period (in shares)</a></td>
<td class="nump">1,429<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">765<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="nump">339<span></span>
</td>
<td class="nump">453<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited or expired (in shares)</a></td>
<td class="num">(36)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested as of end of period (in shares)</a></td>
<td class="nump">1,819<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted-Average Grant Date Fair Value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested as of beginning of period (in dollars per share)</a></td>
<td class="nump">$ 54.22<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share)</a></td>
<td class="nump">38.82<span></span>
</td>
<td class="nump">$ 46.61<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in dollars per share)</a></td>
<td class="nump">65.45<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited or expired (in dollars per share)</a></td>
<td class="nump">52.43<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested as of end of period (in dollars per share)</a></td>
<td class="nump">$ 45.68<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>90
<FILENAME>R70.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892657376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details) - Performance Shares (PRSUs) - $ / shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Shares (in thousands)</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested as of beginning of period (in shares)</a></td>
<td class="nump">79<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">55<span></span>
</td>
<td class="nump">46<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited or expired (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber', window );">Nonvested as of end of period (in shares)</a></td>
<td class="nump">134<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward', window );"><strong>Weighted-Average Grant Date Fair Value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested as of beginning of period (in dollars per share)</a></td>
<td class="nump">$ 52.23<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Granted (in dollars per share)</a></td>
<td class="nump">39.05<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue', window );">Vested (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited or expired (in dollars per share)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Nonvested as of end of period (in dollars per share)</a></td>
<td class="nump">$ 46.82<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_PerformanceSharesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>91
<FILENAME>R71.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892461712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 13,302<span></span>
</td>
<td class="nump">$ 16,579<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfGoodsTotalMember', window );">Cost of revenue</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">605<span></span>
</td>
<td class="nump">621<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember', window );">Research, development, and engineering</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">4,389<span></span>
</td>
<td class="nump">5,890<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementLocationAxis=cgnx_SellingGeneralAndAdministrativeMember', window );">Selling, general, and administrative</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems', window );"><strong>Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 8,308<span></span>
</td>
<td class="nump">$ 10,068<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfGoodsTotalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfGoodsTotalMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementLocationAxis=cgnx_SellingGeneralAndAdministrativeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementLocationAxis=cgnx_SellingGeneralAndAdministrativeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>92
<FILENAME>R72.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892666416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock Repurchase Program (Details) - Repurchase Program March 2022 - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
<th class="th"><div>Mar. 03, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1', window );">Stock repurchase program, authorized amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 500,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockSharesAcquired', window );">Shares repurchased (in shares)</a></td>
<td class="nump">231,000<span></span>
</td>
<td class="nump">479,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockValueAcquiredCostMethod', window );">Value of shares repurchased at cost</a></td>
<td class="nump">$ 9,339<span></span>
</td>
<td class="nump">$ 24,178<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Remaining authorized repurchase amount</a></td>
<td class="nump">$ 323,553<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityClassOfTreasuryStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityClassOfTreasuryStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount remaining of a stock repurchase plan authorized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockValueAcquiredCostMethod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481112/505-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockValueAcquiredCostMethod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramMarch2022Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareRepurchaseProgramAxis=cgnx_RepurchaseProgramMarch2022Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>93
<FILENAME>R73.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139808005722448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">32.00%<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount', window );">Discrete tax expense (benefit)</a></td>
<td class="nump">$ 3,085<span></span>
</td>
<td class="nump">$ 3,594<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount', window );">Increase in tax expense related to stock-based compensation</a></td>
<td class="nump">1,123<span></span>
</td>
<td class="nump">1,068<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxSettlements', window );">Decrease in tax expense arising from tax settlement</a></td>
<td class="nump">458<span></span>
</td>
<td class="nump">2,292<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationTaxContingencies', window );">Increase in tax expense, tax reserves</a></td>
<td class="nump">458<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance', window );">Change in tax expense related to valuation allowance</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,198<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Increase in tax expense related to transfer pricing and return-to-provision adjustments</a></td>
<td class="nump">1,046<span></span>
</td>
<td class="nump">$ 172<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_LiabilityForUncertainTaxPositions', window );">Liability for uncertain tax positions</a></td>
<td class="nump">30,511<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability', window );">Unrecognized Tax Benefits, Gross, Noncurrent Liability</a></td>
<td class="nump">28,144<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes', window );">Unrecognized Tax Benefits, Gross, Offset to Tax Attributes</a></td>
<td class="nump">$ 2,367<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_TaxYearsOpenToExaminationByInternalRevenueService', window );">Tax years open to examination by Internal Revenue Service</a></td>
<td class="text">2020 through 2022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities', window );">Tax years open to examination by various taxing authorities for other entities</a></td>
<td class="text">2017 through 2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority | Ireland</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate</a></td>
<td class="nump">12.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority | China</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate</a></td>
<td class="nump">25.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority | Korea</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember', window );">Foreign Tax Authority | JAPAN</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate</a></td>
<td class="nump">34.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember', window );">Domestic Tax Authority</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate', window );">Statutory tax rate</a></td>
<td class="nump">21.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The tax year(s) being audited in connection with the income tax examination for other entities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_LiabilityForUncertainTaxPositions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Liability for uncertain tax positions, total.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_LiabilityForUncertainTaxPositions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_TaxYearsOpenToExaminationByInternalRevenueService">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tax Years Open To Examination By Internal Revenue Service</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_TaxYearsOpenToExaminationByInternalRevenueService</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized Tax Benefits, Gross, Noncurrent Liability</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized Tax Benefits, Gross, Offset to Tax Attributes</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of domestic federal statutory tax rate applicable to pretax income (loss).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.Fact.4)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479360/740-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -SubTopic 740<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480887/718-740-35-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxContingencyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxContingencyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationOtherAdjustments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationTaxContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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 income tax contingencies. Including, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxReconciliationTaxSettlements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482685/740-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxReconciliationTaxSettlements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_ForeignCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_RevenueCommissionersIrelandMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_RevenueCommissionersIrelandMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_StateAdministrationOfTaxationChinaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_StateAdministrationOfTaxationChinaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=country_KP">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=country_KP</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=country_JP">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=country_JP</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityAxis=us-gaap_DomesticCountryMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>94
<FILENAME>R74.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807986471936">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares - Calculation of Weighted-Average Shares (Details) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted-average common shares outstanding (in shares)</a></td>
<td class="nump">171,692<span></span>
</td>
<td class="nump">172,624<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Effect of dilutive equity awards (in shares)</a></td>
<td class="nump">902<span></span>
</td>
<td class="nump">1,279<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted-average common and common-equivalent shares outstanding (in shares)</a></td>
<td class="nump">172,594<span></span>
</td>
<td class="nump">173,903<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>95
<FILENAME>R75.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892696016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Weighted-Average Shares - Narrative (Details) - shares<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Apr. 02, 2023</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember', window );">Employee Stock Option</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive securities excluded from computation of earnings per share (shares)</a></td>
<td class="nump">8,176,000<span></span>
</td>
<td class="nump">6,515,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive securities excluded from computation of earnings per share (shares)</a></td>
<td class="nump">1,000<span></span>
</td>
<td class="nump">10,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_PerformanceSharesMember', window );">Performance Shares (PRSUs)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive securities excluded from computation of earnings per share (shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480429/718-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_EmployeeStockOptionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_PerformanceSharesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_PerformanceSharesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>96
<FILENAME>R76.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807893265952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Business Combinations (Details) - Moritex Corporation<br> &#165; in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2"></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Oct. 18, 2023 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Oct. 18, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>JPY (&#165;)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 18, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessAcquisitionLineItems', window );"><strong>Business Acquisition [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_cgnx_BusinessCombinationEnterpriseValue', window );">Business Combination, Enterprise Value</a></td>
<td class="nump">&#165; 40,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 270,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BusinessCombinationConsiderationTransferred1', window );">Business Combination, Consideration Transferred</a></td>
<td class="nump">44,376,245<span></span>
</td>
<td class="nump">$ 296,138<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireBusinessesGross', window );">Payments to Acquire Businesses, Gross</a></td>
<td class="nump">&#165; 44,227,414<span></span>
</td>
<td class="nump">$ 295,144<span></span>
</td>
<td class="nump">&#165; 148,831<span></span>
</td>
<td class="nump">$ 994<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_cgnx_BusinessCombinationEnterpriseValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Business Combination, Enterprise Value</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">cgnx_BusinessCombinationEnterpriseValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>cgnx_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479907/805-20-50-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessCombinationConsiderationTransferred1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 8<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479637/805-30-30-8<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-30-50-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 7<br> -SubTopic 30<br> -Topic 805<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479637/805-30-30-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessCombinationConsiderationTransferred1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsToAcquireBusinessesGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479581/805-30-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsToAcquireBusinessesGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BusinessAcquisitionAxis=cgnx_MoritexCorporationMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BusinessAcquisitionAxis=cgnx_MoritexCorporationMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>97
<FILENAME>R77.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.24.1.u1</span><table class="report" border="0" cellspacing="2" id="idm139807892337072">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Subsequent Events (Details)<br></strong></div></th>
<th class="th">
<div>May 02, 2024 </div>
<div>$ / shares</div>
</th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventLineItems', window );"><strong>Subsequent Event [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockDividendsPerShareDeclared', window );">Dividends (in dollars per share)</a></td>
<td class="nump">$ 0.075<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockDividendsPerShareDeclared">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate dividends declared during the period for each share of common stock outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockDividendsPerShareDeclared</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481674/830-30-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 855<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483399/855-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>98
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( +PRHE@'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 #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " "\,J)8(T.V6^\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+/
M:L,P#(=?9?B>R$GV!TSJ2\M.&PQ6V-C-V&IK&L?&UDCZ]DN\-F5L#["CI9\_
M?0*U.@CM([Y$'S"2Q70SNJY/0H<5.Q % 9#T 9U*Y93HI^;.1Z=H>L8]!*6/
M:H]0<WX/#DD910IF8!$6(I.MT4)'5.3C&6_T@@^?L<LPHP$[=-A3@JJL@,EY
M8CB-70M7P PCC"Y]%] LQ%S]$YL[P,[),=DE-0Q#.30Y-^U0P?OSTVM>M[!]
M(M5KG'XE*^@4<,4ND]^:]6;[R&3-Z]N"WQ6\WE9<U)5H'CYFUQ]^5V'GC=W9
M?VQ\$90M_+H+^0502P,$%     @ O#*B6)E<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
M%(]( B]\E^GWXO ;U D%)MY*9*K\3PZUK3<BJYW2(J^=D2!/B^J7O]8=<>*
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
M971Q30:A6\]I%U;5_MDNE243\-.2;!JU"Z#S0BF[7;@+>N-/_P)02P,$%
M  @ O#*B6-\ ENAG!P  )"   !@   !X;"]W;W)K<VAE971S+W-H965T-2YX
M;6RU6FUOVS80_BN$&W0;X-8BJ=<T,="FV-8/W8)FW3XS$A,+E417I)-VOWY'
MV9%L\42[0 8$B60?3\\=C_<\I'+QJ-HO>B6E(=_JJM&7LY4QZ_/%0N<K60O]
M6JUE ]_<J;86!F[;^X5>MU(4W:"Z6K @B!>U*)O9\J+[[+I=7JB-J<I&7K=$
M;^I:M-_?R4H]7L[H[.F#3^7]RM@/%LN+M;B7-])\7E^W<+?HO11E+1M=JH:T
M\NYR]I:>7_',#N@L_B[EH]Z[)C:46Z6^V)L/Q>4LL(AD)7-C70CX\R"O9%59
M3X#CZ\[IK'^F';A__>3]URYX".96:'FEJG_*PJPN9^F,%/).;"KS23W^+G<!
M1=9?KBK=_2:/.]M@1O*--JK>#08$==EL_XIONT3L#:#AQ "V&\!.'<!W W@7
MZ!99%]9[8<3RHE6/I+76X,U>=+GI1D,T96.G\<:T\&T)X\SR2C5:564AC"S(
M.U&))I?DQKK3Y!7Y?/.>_'SV"SDC94/^6JF-%DVA+Q8&GFS'+_+=4]YMG\(F
MGO)1M*\)IW/" A8BPZ_\P]_+O!_.#X<O(-X^:-8'S3I_?"KH3=O*QA"A-<1Y
MCL6S=1#B#NS:.M=KD<O+&2P>+=L'.5N^?$'CX T6W3,Y.XB5][%RG_?EE= K
M K-&<GLAOV[*!U%!\.@L;EW%G2O; !Z6E*=IE%TL'O;C<<U@8N(HZLT.D(8]
MTM"/=#<K9?,@M:DMQCD1M6I-^2\49ZZT(>J.G-&0SM,D[H(ZHYS-DRRS]6EK
MJ_O05LD<>HQ>RZY)5-_!3P4-JRMN:'TD;V51&E(I* #=.0T<#UA^M@%$!_G)
M. ]'^4',6,8SAN<GZO,3>?/S-L_5!I("D>429O&VDL?CHG/.LVVJHI0?21,6
M<H2$G$91/ H9,8-YBD,\Y+@/.?:&_+FY+:L*)K^5#[+92 Q@[#R9)3P9P4.,
MPF!B/I(>7.(%]P'JM#&J+26ZEA(W(TF0)G2$##&+&4LGUE+:8TN]V*Y;N19E
M0>0WX'M;"W;"E5E)J)&#YH<A3QU(":4)'P%WK>(TR#(<=];CSKRX_U)&5"=
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
M'@?[P1=<P\^4VIQGK[7[EI'>D"YS:UCC:YAA>Z8T3&)6KLZ"X_/@?2%=\/V
MQ;V#"[8910&#]/HVK_7'W18.PD/V<V%=_OUDQ/VCL<-_<:?7XNV*1D'].C3P
MD="NB?V@Q/V3LFWB[L)^/QZ*>(3C.'0X<(8.D^2T@_T@Q?V3U.G@DNYWC-13
M-IRA3AM^:_MMGGU@=[MBI4*<+B$WN!^!B*P>)ZH3+=9V1_XJ-.SO[6$.CV!4
MF@#X?BF$?C\QF_SFH6[V'U!+ P04    " "\,J)83[:F$$D'  #M'@  &
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
MA4!@#5*]/:D>(*EM1'I:[/NVY2KSV<33YT:%GW8<3YGPC*WI&G@@L$;@A_O
M#XV!OV>K=1$MY/2IAOW$R#'B=ATY0SWJCKI\3"$]!I!@(1!8@\'1GL'1-S+8
MQMI(#S1Q\'"DC).1OE*K \58JZYL'*F6LL\(@7PVXNSOX^P;XUSM)_HRVXUE
ME%=BVTZK))H]RV?6%FU?W_UZKMJO)T:_73<-9[D,(%V&0& -5K!5)[J6D9<[
M^O*:VL;))HG9L0S5TOL8)I:O].N)V5U7.D#1@C/;$$)Y;5)RH#W@TZMY)@9)
MZZ#8&1\V@K@>5I=JLX_./$"B!><U(81RVJ2A5@*P60J0-*PSD1&ER;]BTII3
ML:!?I#GGETAJ?QN:I/0Q9?U97O0Y39G@;,-X*4<3?X\R5HVIDCZWDJ@G]JY#
M/)5#R%1\"HH6@**%I^+1I+ 6 +!9 ;AG44HY3V9)M%UL!".2F#VI%Y+52R19
ME:26"X8J*D4Y,\&MI-I:(RR546-].S,*B1: HH50:$WF:U$#&Y/H<9@7+)EG
M*%H7!<NB%U06(O-)M[V QG^OMSRVTNBTY#"NNNLP^^_,)*A8 8H6GHI'DZ%:
MA\!F(2+(8H/,^G%57"&+5#*=W<H2J/2 =>U!"JV6NFL']1J HH50:$T^:PD"
MFS4(A<^S.&S1$QS'LU5]>])24!=;L:X]^#[Q?&4.#EK*N7CHJJMOV%*N[SG$
MMH[T_%HSP&;1H-,90WO@](0?#['K:Y/4>>6FY@IW[M:@X@ 46I.L6A[ 9GW@
MY"%".T&Z H!=RQ&]3&5(+V@[MDJ/GM]CRQX*YVK7U@NZF+@J8-A2KN^XMGUL
MPU4G^=A_R\,$#)E83T#1IJ!H 2A:"(76/#*M-01BUA!@SQ3,SCJ?H.HY/U'/
M\J:@+@-0M! *K<EM+4:0,\2([SI:('JVWR<C3UWC=\4.9T)+I>DLI,#<HL[Q
M?PL5@AS<1S"K$-]^PF &[CR.] R]3_2+"+ W$6"O(KS%7012:Q'DE!;1Y:"!
MZ%I"W[=M=8-']#L!VJ !%0G.JU<(Y;09ZSK[)^;L_UL.&XB>YF+;5K=8$[/G
MKIN*\YP&H$Y#*+0F.77B3\R)_[DG#D3/R?N8C$;J89O976=&0#/\,]L00GEM
M4E+G[N2,^P-'3QR(G@CC[>VI)@^0I_I34+3@O":$4$Z;--3" #$+ V]YXD!T
M*4 7-<WUZTPAJ*H BA:>"$>3P%HL(*<N$_R?YPVD[=A?913RGL$4%"T 10O-
MT6@26NL9Q'QKX3N.$7;(S4L@'E;O0DW,->C,$*A* 8H6$OURA1*1YC7?6G^P
MS?J#^2CA-UKLQ3JG]<:O+A'@(?8\=2R=66YJKFU7#D#10BBT)E.UFF";U03]
MD. T.[HN@)V1CT?JXM524)=2V] L9^BI!8.6@JY%;%O=N;64ZWL8VZ[2J0<'
M/T:1/TX2[9XG&4<IFPE#ZVHHNE6Q_;W/]J7,5]7O4Q[SLLR7U>."T9@5LH#X
M?I;GY>N+_,G+_E=7X_\ 4$L#!!0    ( +PRHE@6CP^2S@(  ,\&   8
M>&PO=V]R:W-H965T<R]S:&5E=#DN>&ULK571;MHP%/T5*ZLVD%82$FA1!Y&
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
MB<L;_T?%?6HL\,%B,<CDC59^K)_NC'D!3X!M2/K_'O)%"G*HS5"0U Q?A?.
M6-!C6N$IWE6+#YRZZD1">HR*5*[958K#)RK*X?^N*/==;Z8[U]6:?)DNY4$D
MY>ENKN/J>.\_[:Z[6_/N1P-NBN X"$,%7&=[A\\SX;N+>/<279,NORL7<95.
MCQ5^NY!G ^P7SL7AA0\8?PTM_P502P,$%     @ O#*B6-EZCH/;!0  # X
M !D   !X;"]W;W)K<VAE971S+W-H965T,3(N>&ULG5?;<M0X$/T5U;#%0M4D
M<TU"0I*J)$!!%>QF"; /6_L@VSVV*K)D)'F&X>OWM#SV.%=@'S*Q)?7IV^E6
M^WAEW;4OB(+X5FKC3P9%"-71:.33@DKI=VU%!CL+ZTH9\.KRD:\<R2P*E7HT
M'8_W1Z549G!Z'-<NW>FQK8-6ABZ=\'592K<^)VU7)X/)H%WXJ/(B\,+H]+B2
M.5U1^%Q=.KR-.I1,E62\LD8X6IP,SB9'YW,^'P]\4;3RO6?!GB367O/+N^QD
M,&:#2%,:&$'BWY(N2&L&@AE?-YB#3B4+]I];]#?1=_B22$\75O^MLE"<#%X,
M1$8+6>OPT:[>TL:?/<9+K?;Q5ZR:L[/Y0*2U#[;<",."4IGFO_RVB4-/X,7X
M 8'I1F :[6X412M?R2!/CYU="<>G@<8/T=4H#>.4X:1<!8==!;EP^D8J)[Y(
M79/X0-+7CA#QX(]' >!\9)1N@,X;H.D#0#/QP9I0>/':9)3=E!_!J,ZR:6O9
M^?11P _2[8K99"BFX^G\$;Q9Y^DLXLU^[.DKY5-MV5DO_CE+?' @Q[_W^=Q
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
M4F*,L Y7V<6GFF<1E00Y6E)$0$B'*5,<)@ *D%:6,&H9XF(;6$M(+7\C0+L
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
M:&9FPW)<!*0*@_H1@^S=F_@\^G"DA_'0P_@8^]'C.8H\7-<PDJ\U0E[31-
MEV"=R;1^YK*"1R9:!%5"M8OND(;$#)1*D(@-G'B(:@U-UIS.8,4$D[D/(=@5
MYMBL4>_.,H6WD+Y/1_$T!E(2Z40"/O7903/[4LG)Q8B._O0?/KH7>3U<#$<V
M/1_%DPLX--]P3PH-ZLH+WD"N6FE[50S>X4U9]E)Z">\?),I;<6E 8$G0Z.QB
M$H#N1=X;5FV\L-;*DDS]LJ9W$;4+H/U2*;LS7(+AI<W^ %!+ P04    " "\
M,J)8/D@H<)P#   ""   &0   'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6R5
M5=MNXS80_96!6A0)H$87ZIK:!NRDN]V'7039;8NBZ ,MC2UB*=$EZ77:K^^0
MLKU.XQ@M$,3#RYPY9S3#F>R4_FPZ1 M/O1S,-.BLW=Q&D6DZ[+FY41L<Z&2E
M=,\M+?4Z,AN-O/5.O8S2."ZBGHLAF$W\WH.>3=362C'@@P:S[7NN_UJ@5+MI
MD 2'C4>Q[JS;B&:3#5_C1[0_;QXTK:(C2BMZ'(Q0 VA<38-Y<KO(W'U_X1>!
M.W-B@U.R5.JS6[QKIT'L"*'$QCH$3C]?\ ZE=$!$X\\]9G ,Z1Q/[0/Z&Z^=
MM"RYP3LE?Q6M[:9!%4"+*[Z5]E'M?L*]GMSA-4H:_Q]VX]V<!=!LC57]WID8
M]&(8?_G3/@\G#E7\BD.Z=T@][S&09WG/+9]-M-J!=K<)S1E>JO<F<F)P'^6C
MU70JR,_.W@V6#VNQE AS8]":260)UAU&S1YB,4*DKT P>*\&VQGX<6BQ?>X?
M$9TCI_3 :9%>!'S/]0VP)(0T3K,+>.RHD7D\]@K>6Z7:G9 2^-#""\%P+TPC
ME=EJA-_G2V,U5<H?Y](P1LG.1W'=<VLVO,%I0.UA4'_!8/;=-TD1_W!!0W;4
MD%U"_V_?Z2+$>8(OTS'OE;;B;VQ!?#WCXUFCJ!N-I3.U MLAK)2DMA;#&J[$
M0#MJ:RC)YOH6WFIE"*QIMOU6<N?R@9Z8.U_1J*F?:9/:TG1B8^!;*-.P+',R
MKHHPK\IKLHHB3*H*[E2_D>@ +#;=H*1:"S10Q"&E%J[2-$R2]!I8%<99!9\T
M;^G9HB<-JBR%JR0AK#+-X8,:OF\(BI" KS4BO2RDB&4.(Z-+-8,%EWQHG%JG
MC\JPZ8YU2(02EE&LTI%,ZS NF&.9Q'D8Y]G_UIN'=>'UYB'+4X=4QF&1L%?U
MDLZ44>0X++/\&K(D9.4SO75,QWE\#57.+LME%"^)JW_IO<<&^R5QW4MF7G(=
M,I9XR04%K+WD) WK/*6">9FF$-!8T?L$K+;6-14?"\K+!WRB<6)PS(?3J,Z4
MV8X(T=]87.9%:?V&7(^/S7/.5+G;P<(CNF'4TB:Q6U%S<WGX@E68E+5;Y*2?
MLIT[NW V2V)GEU"[\G-F1;>KW)OUWOS4(0V^E27HK J+K#[Y_N=Z/#IYEZD(
MUG[ZN"XBFN,3?=P]#KCY^*Y_O3Y.1\KR6@P&)*[(-;XI\P#T.''&A54;_\HO
ME:6*\V9'0QJUNT#G*Z7L8>$"',?^[!]02P,$%     @ O#*B6+B3MB-7!
M?0D  !D   !X;"]W;W)K<VAE971S+W-H965T,3@N>&ULC5;;;MM&$/V5!5,$
M">#J[MBQ90&^-$@?@AIQ6S\4?5@MA^+"RUUZ+Y+U]SU#4K2<R$9?).YRYLPY
MLS,[G&^<?P@E411/E;'A(BMCK,^&PZ!*JF08N)HLWA3.5S)BZ5?#4'N2>>-4
MF>%D-/HTK*2VV6+>[-WZQ=RE:+2E6R]"JBKIMU=DW.8B&V>[C>]Z54;>&"[F
MM5S1'<6_ZEN/U;!'R75%-FAGA:?B(KL<GUW-V+XQ^%O3)NP]"U:R=.Z!%[_G
M%]F("9$A%1E!XF]-UV0, X'&8X>9]2'9<?]YA_ZET0XM2QGHVIE[G<?R(CO-
M1$Z%3"9^=YNOU.DY9CSE3&A^Q::UG4TRH5*(KNJ<P:#2MOV73UT>]AQ.1Z\X
M3#J'2<.[#=2PO)%1+N;>;81G:Z#Q0R.U\08Y;?E0[J+'6PV_N+B7WDL;M^*/
MI=$KR9D*\V$$,K\?J@[EJD69O((R%=^<C640O]F<\I?^0S#J:4UVM*XF;P)^
MDWX@IN,C,1E-9F_@37N9TP9O^@K>K7=Y4E%T<C4%<:.#,BXDC^=_+I<A>E3(
MOX>TM]"SP]#<-6>AEHHN,K1%(+^F;/'^W?C3Z/P-XK.>^.PM]/]]/F^B'.9X
M"%K\69*X=E4M[18]IYS/@XC8HQ U>H!RH5R(PA6B2*;0!I%6HNZRNWG.KHR-
M&YR(C8,TU'1/+E*-9BPU*MMK)4V#AQAN!RB4D;H*@Q>T*KD5T@0GEM31 E)(
MRT"/B6QD]Y_";4JRM";<0#4I76@EL+*(Y;Q0I;0KT-16*.U5JD*45O$&I..B
MV!/UF*31R-(288'^8-W&(A@$;EPRN; NBE*N(8\(+^0#?K4%(:F42^"6 L/M
M*<[1J -Q7VHFB=3:%:X_ID)/D:\[8/T8'.N5EQ7R:G->@&J@< 0G95+.^.WU
M9K:B<E9S)-Z#,:VE2;)1Q!G: 2))+B$/.&IG.8,AU;71Y-L0L=0^_[66'J8*
MK<V]@4.PJ< #6L8C=GPNE??O3B?CD_.PJP#@]X<G-""+ K<PCFRY[:454AL@
M"8^J AH7E]?(3@K(QE'#@@M5*\(M:Z#-;[M:@>CD/=#X]!R>V@.3/T(/Q"6N
M_1R>@;H39Q<N;<@'?6RS'N?; D-GX"YG$Y9F"1$P]8"0:Q8";KT\1%IK'DRH
MT_N?-4.QI^YP6IZ<H<GH_%(IG[!#3YBJ.,%F>WPNG.W2:8,S.F\:[4H:KDEQ
MQY<[XG!K[M4MVQ]*]X806@90-YBX07QH;!W2:O/P\:R'A0FR<$.*JB6:I+ML
MI^(7,3N:S&;BMI?89&&OMW4(K"%/?E=5-8[.Y6)\-#X^$5_:/JZXJA#A $>0
M^CS]_%%@KF)J<MUWI\.UT&O\ (N79#$55-F/A8;I['@J#EVSP[V16)%?-8,_
MB*8CV^G8[_;?%I?M2'TV;S],$'6EP=E0 =?1X.0X$[X=]NTBNKH9L$L7,:Z;
MQQ+?1^39 .\+Y^)NP0'Z+Z[%?U!+ P04    " "\,J)865X/%4,%  !L#
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
M $S[6&H[3M?^@;+2CE+1-PMZ7Z+A!32_UMKU'3Y@_V*]^ M02P,$%     @
MO#*B6![QMS+Z"P  =R4  !D   !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL
MQ5I9D]LV$OXK*,7)SE31'%ZZ?$S5V'&R>4@\9:^3AZU]@$A(0DP1- ".K/SZ
M[6Z %"51,W9VLGGPF > OK\^J!=;I3^:M1"6?=Z4E7DY6EM;/[NZ,OE:;+@)
M52TJ>+-4>L,MW.K5E:FUX 5MVI17211-KC9<5J/K%_3L5E^_4(TM925N-3/-
M9L/U[I4HU?;E*!ZU#][)U=KB@ZOK%S5?B??"?JAO-=Q==:<4<B,J(U7%M%B^
M'-W$SUYEN)X6_"K%UO2N&4JR4.HCWOQ4O!Q%R) H16[Q! [_W8G7HBSQ(&#C
MDS]SU)'$C?WK]O0?2':09<&->*W*WV1AUR]'LQ$KQ)(WI7VGMO\47IXQGI>K
MTM!?MG5KLW3$\L98M?&;@8.-K-S__+/70V_#+#JS(?$;$N+;$2(NO^>67[_0
M:LLTKH;3\()$I=W G*S0*.^MAK<2]MGK]U;E'Y^^ KD*]EIMP-:&D[K>?,9K
M\>+* A5<>Y7[$U^Y$Y,S)Z;L9U79M6%OJD(4A_NO@+N.Q:1E\55R[X$_<QVR
M- Y8$B79/>>EG<@IG9>>$WG-M? BW_(=>)AE-UKS:B7H^M\W"V,UN,M_AH1W
M9V?#9V,(/3,US\7+$<2($?I.C*Z_^R:>1,_OX3SK.,_N._U/&>O>$X?Y?8@,
MHP7LMN258?]:"UK$J]UWW\R2>/K<,$,'+.@ ON6Z,,RNN84@-A L3%8L[Q\K
M_+&Y@E@WEJFE.X&I&M^; #=:+7,+Y[DW326M81>C=^\_F-%EP'A5L%IH JDJ
M%^<WW+H=(?NI8C_S'?I4&@!W@AETB[4J"Z$-LF#W@C%>UUK=P6'NX:H2G^$_
M72OM),!3O%;>U@YM@*&?@),*08=4Q2YP,^HHB9[3!GQ*]_%S8 @5V3U&83;(
ML5??L4K8Q4+9-6BRI8#T*E4]_=3P4BXEL.I7@G+<3I1!Y-(QK!&L0+&H#:<]
M4DS(/M3,*C8+XB@*HBAR6B'Z8+(-['2'79AF\3L *R[FQ>^ 4Q0Z8%D44MSA
M3<>SJ4L2!:@ TP)2@MS(DFNWSEP"GNW80C!I3 .,UXTV#:_<V4[\%40GVK(!
M2-%$HM,461(\I_(POY6@%USA;,;+UI;=C@ 4Q9:-)E8\@:TL2V1APPO1HS)H
MZBAF/XI*:#CZP.3N; Z"@BX*='T0&!V1(^N'UH<S^M9W)CA/<?J0<WTQW>F1
MU_WV!>K"VS@*)O!O=MXE^AYQWFI>\$[>CB6'$%NA!8/: 9BO"EFM4"P@A)&:
M!HXGYRQ &ORLE"NY* 6#N"?OH=@?<!(FP1>;?-UR!@+@GJ60P%_ <MQ7EA@T
MVKGH5@(>68S!RFG1.2[P6+'%#A!+Z!R67!ZH]S77>@<PH1FE&+/7\HV70@,+
M;28+6@X:6-KQP#WB[8.EY8+"?JG5YD%-KOF=\%@+K$-,3J-I, ?+'3,(P,JE
M0363!S1VK;3\ V%.6? $;V@RS&&(#JF88&/F*9T3N0^J:UZP"8!,W <:?L<!
M&EJ;D@=Y:@@ASM-J3#RA#XD6$-&DK<,1!O"J,Q.K(1> NR X(I_(!92@'Z'F
M!8]OQ!'<=WGLP+]!";C&L52 5Y#F5PX)RAV[$YBZ4+E+U:!RM!#^;S]X7<9<
MJA+*8=(\">MJ8M"]&62DC_VND)5V1QK"U43DZ0:K+LP;4A7, <&A]I]YJ[/?
MJ%05Q=/>U<UJI<4*I7I[$GW?BUQL%B"8/REE<S#9C#UAXRB<3=F/7NUQ,(9W
MZ3S,,B@5G.HA=,:32Q;/<>$/;<AAG$'6EQK?IVETR<;3<#P;H'TH L)0G(V!
M<C8/XYA-PC2"FP0HIW%+DQ0ZN'L<S*>IVQQE+ O'$[B)X6D6=]9!,W8,"JH@
MP&/(N(-G7L27H(XL\DPE,V JFB-349"F$WH/&8H7A23K>?=KR;053C\P'&%P
M:08Y@#9Y_VRJPVU[SBPS"(BUDOLLO&P06L).LE-Y(&1R7N9-21BWH#JGW)'R
M(7B,E1MZL<<IP OP$"_",3>NA''0D7.S!@C*A<2J"7-36_P=53)=C)I[W-D,
M^C/%WPV$=LD2[Y>4/I[$09PX4,$53U*P.N),1'4DZ@"8*G?G"@> BXXG9Q?+
M/P/V56(I+;OPQ>HEG 65UA].;WWK/888H+ G%PE&&80&"7$1!]F$I+@\%H/P
MA$OML&R@5FQA$?Q"\+S#""KX'5ZBVO;V;KJ4L(>I;8L4D%LT=.M@4\ L1^ 9
ML-#)ZON^8R$/!7PGS<>G2X1&<J@L3-FW\#>"OV]:+RT Y I0&-M)418L"J<3
M>!V%XWE_U9W"E%DB'*;X(CUXB[F378#<.\$U%)I9."5B1_11@_KP$9K -3!-
MC9C++-C;-'H'6H36HJ%R=[M6ODR@];Y_H3=M607/J)>DS(,+?2@[VX1GQ466
M\D9K/.SH%9$Z#-NJPK+_C]9L%'W=KD+D4&R?.&J77%XIJ(D(YP&/<ZNT*]5I
MOSMQW[KY(_)2D8_X?$S9555'^3$<M!(*)@:>GR@<DN_"USW(W!HT"]4)"-[?
M]26)FW+RP[8@H>4&>I5#QBB>-2]ZL'N&*I$+C[SO0-[.5:"@(63LZCD056TD
M, 9T+:ISHPI1[M\#8\ Y4G9-D[,*]+BKE= ]$'7"RHUPN' 2MF2>IU2^?!%F
M%(UNO>I_Q^4LG$P<G,73<#H? C*7/B"+ 5DC\[/\B:Z^>,2T$8W'_;21I?.A
MM+%G\UX-^N3X:.PE8ZJN]_Q!FIO%0PR^VP\_7.7YP0T_L,.__(KR\Q^&Y@./
M6'#>>"_\1;6UP[D*$])=@E74. N3I*LPIY,Q2V?A+&&_NNU0/,XOV60<0E%X
MIKJ$ZG.<A%EZ0O2XM QF,5+,QN%D=I14<3FI0F+HNHX, 97PR@.?6N#XC-3I
M>PN/B\LCG7HW.89+5@KCU.\3\YYTAQ^NI.N@W7QUD),0?T5L.ZN08V:3<!(/
M!(T6;FWJPHH69^.4KHDO@C1OHD?A[80)*.34HI2KMIL&1_'TG*,#=T986[ID
MB4D<!X)4$!_7XKY?!7(8% IL@D&W:/I%?F^D>%(<-^:T=+0XE_+M/!:=M9M.
M/V)I#+7PK%<: YRDR5>5QCUU_:W%<19,YVF_/DZ":3P;K(]O>W/A<]!X^R>P
M\?9O \<I(6,2PF6+C.,Q-M[0A7I@I*(D>=[]/PB.QXL>0L@T0WR<8*2?XN-M
M"Y"]VG3?2> W(8$#J%+A^+=Q@RY?Y8#?M]V'!T"UX(NNPL//!&:Y:X]"F$5@
M1;M[I 5?=>TUHJNL/77?!]/,SX'> 0[UDGU&G947X5'A\=@9?U&>RF/BG)^%
MW??)IO>9AN'7+8L?"0P-U034O&HG<'I0MW:! DSYX=5*JZ:&'D]5W1<:Y+A-
M:V_>!@.O('\A+D+0<?=5S4TT>>5FFH>+>5GZ66?+BD]L+<.^$2K=@ +Y/IA/
MN/;G9$P!)T??TC@:SA_X)-4&+(DP?VCE.8DZ6G'Z+2T<E.8-]MW8A/8-OI3:
M6/:IX1HJBL,1D!9W5,Y+!_X'<G551U,7)'^K"8K9SIJPH<)N %4)4=F?!W/L
M";&?I5G.X+<X. D*XIG+#@YBDS2CF[\D+LZ,BRE?-A7TI6I544(9XC9@E7"]
MT<#,BCX?.D  8?$;F0\]\:E!@'$V#O!;6MD4^ZZV&\T=?2,+7 ::38)DFKK<
MN5U+8%L>CM@6.(/OV*:^C)^6:CY# .])&+LQ1;]4Z#OCH)W:Z7\K(DB!@\!^
M5NYQ\94YJFV,TB"->HX0!]-L?']G]/_F>["?FP3CZ;SGOR#%;(CM7\[$@!NT
MU-+Z6F8P*0)G)PDZ'"PD?%GORH@'%02%$]"F1RC]\.#.-Q&OP4]5*1T:O,?O
M?JYL!&[?PAY?[5Y0/E2- 6V8RZ\?VKU6[MN\Q@D$Y/PG;$)3[TD28UTE<&\
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
MY4=/&XNKU2-JR@)L*Z;1S"-+X$XDRGN@=0>4O@*4P7LE;67@3A98O-2/B-3
M+#TR6Z<7 5>-'D&<AI#&:78!+QL\S3Q>]@K>'=.2R[V!#>K.2_BTVAFKZ<7X
MYYR_'=SX/)PKEEO3L!P7 56#0?V(P?+GGY)I_-L%LN.![/@2^G])RW<!P7#/
M^GO3W1^0XI(SD;>"T6-@!DHEJ'0-_,(EV$JUALG"_'H+?U4:\:H^R3J\9SJO
M($M\TL9 *>0"^A3"FAF>DX%_&<Y531A'^]0WC"4#E"E(KI-P.DMI3<,IP=V5
M)=4RJ!(*+EI7S8"?6VZ?@1V8+@S,8A(.T^O9M^[U5@BYWUXYU4<F4-KSMM-P
M,AO3FH6S.(.M5?D#J,:U$@-60=.2J]0.X"9,KJ=A',<>?!I.DHD_'4'+P4,'
M$8)C\6T4J+-P$W;A/^51M-HMMD+Z#?&&!C57Y#&>"[OC\2+T(;5/TZ!O@.(Y
MA%UK.TM26> R%ZU#\>G]FGS7,T]#+='+JAJ=]<X]V&'.6N.XX7,'R:3E5T>E
M$=PC51C/W:OD_8=6<NL":)GP<1XBE\3_AVT(VY\*-O?;#WT]XM,/V*+!_<-Q
MH"YP0L>Y_X+OI>2,SG7#Z&1@U:CW?BP;RG@K;3>[AMMA\J^Z@?=5O/ML(/)[
M3B4IL"35>'0]"4!WH[@[6-7X\;=3EH:IWU;T]8+:"=#S4BE[/#@#P_?0\@M0
M2P,$%     @ O#*B6%NL>!2S P  )P@  !D   !X;"]W;W)K<VAE971S+W-H
M965T,C8N>&ULG59A;]LV$/TK!ZT86D"U9%E.G-0V8*<;M@%%@V;=, S[0$EG
MBRM%JB05._^^=Y2LNEL:K/L2B^2]=W?O>,<L#\9^<#6BAV.CM%M%M??M=9*X
MLL9&N(EI4=/)SMA&>%K:?>):BZ(*H$8E69I>)(V0.EHOP]ZM72]-YY74>&O!
M=4TC[,,6E3FLHFETVG@G][7GC62];,4>[]"_;V\MK9*1I9(-:B>-!HN[5;29
M7F]SM@\&OTD\N+-OX$P*8S[PXN=J%:4<$"HL/3,(^KG'&U2*B2B,CP-G-+ID
MX/GWB?W'D#OE4@B'-T;]+BM?KZ)%!!7N1*?\.W/X"8=\YLQ7&N7"7SCTMO,\
M@K)SWC0#F")HI.Y_Q7'0X0RP2+\"R 9 %N+N'84H7PLOUDMK#F#9FMCX(Z0:
MT!2<U%R4.V_I5!+.K[>=HQWGX,8TA=2"I7++Q!,U&R3E0+/M:;*OT,S@C=&^
M=O"#KK#Z$I]02&-<V2FN;?8DX1MA)S";QI"E6?X$WVS,<Q;X9M^0)PA=P<8Y
MNOJ;\F,GG0R[?VX*YRU=E[\>TZ%WDS_NAEOHVK6BQ%5$/>+0WF.T_OZ[Z47Z
MZHDD\C&)_"GV_UZL_T$#;S6\+;TIT,)T$72?Q>!K9*M6Z =J(-+(8@5"J7!
M/>X\:2CU'EPM*%\P.[H(5GH\$LRVQO9"/X^&W>A%# +VRA1"06O-O:S('Z%(
MK49V#9C6RY+.2G)J-&KO0M-5(#7\(BB.&&@24>6 SM"V5CJ$>Z$Z9!96>OXJ
M3Z&02K'C *$ZP!](2 :VY/4HJ9U1/<"S[#*EKNIMWT_N)O#:*"7LR2GM<J*E
M,HZ3K C%[JG5R?^QK(7>(U"..(%?V4ZX^N7.(L8T& H?/O\=YT$X$-7?U-OD
MH7@(J%'<'@G"T93D%5_1'=5(A>G&092BE9[6I*#0)6GN#0AK:;:!\+3P03V:
MFJ1LKSX9%,A5,Z5@GPS@6^_.2DINE!0D&_4 <0[^SS3-X]GE19SE\SA-4WC^
M++NZB*>S15A]HUAT!XCW4,NR_LR>99=Q/LU']GD\S</J11"L%3+<@2#68YXX
M@YYLFB_B!8V.GNGJZI\L56<9Q0R^I@J];'AT08M6FHK*10,,:/Q0<*?Y URQ
MH0QM1R>4+]U86>)02'JE_.,J#%6",*$GC\V Y&QX-VCWX8ER5,).^WZ.C[OC
M*[CIA_]G\_X)I:CWDEI9X8Z@Z>1R'H'MGZ5^X4T;GH+">'I8PF=-+SE:-J#S
MG3'^M& 'X_\&ZT]02P,$%     @ O#*B6/%6#)AP @  = 4  !D   !X;"]W
M;W)K<VAE971S+W-H965T,C<N>&ULE53+;MLP$/R5A5+D%%BR[#R:V ;B)$5[
M,!HD?1R*'FAI;1&AN I)V?'?=TG:J@LD1GH1N>3.["S%X6A-YLE6B Y>:J7M
M.*F<:R[3U!85UL+VJ$'-.PLRM7 <FF5J&X.B#*!:I7F6G:6UD#J9C,+:O9F,
MJ'5*:KPW8-NZ%F8S147K<=)/=@L/<EDYOY!.1HU8XB.Z[\V]X2CM6$I9H[:2
M-!A<C)/K_N5TZ/-#P@^):[LW!]_)G.C)!U_*<9)Y0:BP<)Y!\+#"&U3*$[&,
MYRUGTI7TP/WYCOU3Z)U[F0N+-Z1^RM)5X^0B@1(7HE7N@=:?<=O/J><K2-GP
MA77,S3\F4+364;T%LX):ZCB*E^TY[ $NLC< ^1:0!]VQ4%!Y*YR8C RMP?AL
M9O.3T&I LSBI_4]Y=(9W)>/<Y+&=6WQN43NX6_'7CE+'M'XS+;84TTB1OT$Q
M@!EI5UFXTR66_^)3EM-IRG>:IOE!PIDP/1CT3R#/\N$!OD'7XR#P#=[;(_RZ
MGEMG^$;\?JW=R#9\G<V[Y-(VHL!QPC:P:%:83(Z/^F?9U0&MPT[K\!#[^_['
M?U)\U3 3&\CC@9Z JQ!NJ&Z$WAP?7>3]\RL+4Q*F!%K K31L&#*6[W:AA,$2
M!!3"5E#*E2Q1AZP/62\[/X4&V=\5)_7@&Y-V&=)"(S9BKA H%A]DL3HX J%4
M1%6D2N1*3,A%B06($'B!A2*+/IBWEANT=L?4/XM,O==..]US0HUF&?QNH:!6
MNVB*;K5[4JZCD_ZFQ_>(;^%2:@L*%PS->N>G"9CH\1@X:H*OYN38I6%:\;.(
MQB?P_H+([0)?H'MH)W\ 4$L#!!0    ( +PRHEA72XIR10(  )H%   9
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
M<VAE970S,2YX;6R556UOVS80_BL'=2@:P(ML279BUS80IRU:H,&R).T^#/M
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
M;*TL6=8/:WHC4;L VB^5LKN)2S"\NMD?4$L#!!0    ( +PRHEB2F:AFQ0,
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
MBQ7M8-3.@-X+I>Q6<0&&K9[^!U!+ P04    " "\,J)83L >?5X%  "3#@
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
MAZ%VU<URS^+=1$QN,TYW4H$;4G7/8[J[93=E=A]:U.UDMQ::J&V7.0WF*(T
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
MJ/3F65+4_[+'YK.C 9MOBC);-8/U'JSB=/N__-8<B+T!GC@R@#<#^*D#_&:
M7QO=[EEMZZTLY?0\SQY97GU:JU4;];&I1VLW<5I-XTV9Z[_&>EPY?2?CG'V5
MR4:Q*R6+3:[T')4%>_Y6E3).BA?L)?MR\Y8]?_:"/6-QRCXOLTTATT5Q/BQU
M_$IE.&]BO=G&XD=B7<G\%?.]WQ@?<7%@^"4^_*V:[X;[YO"A=KVSSG?6>:WG
M']%[712J+,X.^=@.%(<'5BOKK%C+N;H8Z*53J/Q!#::__N*%H]\/N2(2,SSZ
M.X\^ICY]%Z<RG<<R8;)VRV3);JLI?ZBF_)#UK5Y8ZU7G@(>I\*(H')T/'_9-
MM3_F1W[(^>YCQNZ*W>X*='<OLWR=Y;)4;)8=23%4H._4$(D97H.=U\ V_0)*
MCT1BAL=PYS$D3K^M7K"?5X$?B>!)^J%A+4U%.U,1:NIS7I\HO[,T*]7!'$7'
M]YT_(C'#ZGAG=6R;HV-*CT1BAL?)SN.$.$<GK1P5P2CPGZ0H&M72DS>"K_41
MZJJ>N9<S.;]7"U:H^2:/R_APMN)*?:>22LWTO8<SGFW&-B.I?!*IF3Z!73P4
M&RRRMA'<3ULOG$R>GEGQN+:^@%<\'%ANL@>5:_9.CQ, KM!['HG43+\ /)ZP
MSE=2U*%2,WT"['@H9]CD:]#.UTD8/4U7%WCC =]X..#\M=$,L-@*7N?Q7!7;
M;7VA]+J^0&7ZHN>^\JNON-G[A;ZVBN?Z(&RGG3W_H!Y4PKP7[%_VJ3I)YW%Z
M=_!@$ %/<]!<X),'_.1%UCE/BDY4:J9/@"</Y9;I59:J[_IBO4H ?>E<E/FF
MOK@^:'S<RO:PG>PN.,D#4/)P4KI4>1G?ZOS5UV?9+5NH=5;$Y4$W;41Z>@&)
MQ[+TPH&/.,Y'?\RS-%O%<[94BSM5K<Y'F2^8?K?,Y?SP'#62F"L\JJTKH!^.
MT\^'6,[BI":]PW4-4@2B4C/-[I5O< 2RFL(V!+6FT 4 <0 @C@.0BV\4O;V[
M:-7YD1P^-*181:5F'D7 *FZ-59P4JZC43)^ 51S'JDM9+)E,==97&^J?3:QY
MZMAW#&\352OY7> 4!YSB_S].Z>T3RHKXCO7."A> Q0&PN#5@<5+ HE(S?0)@
M<1RP^E]4\#9FM9: "\CB %D<ARS7Y_^C14M\OWIGA@N\\P'O_)'M"O!)RUU4
M:J9/ #X?92R;^SM>YPK 8]IZ J[S<:YSM )Z5$3Q'>R=(DYN .[= ?2MEP(I
M\E&IF3X!^7S\WJ'%4A#=2\$%WOF =SZ.=XZ6P@E%5GS'>J>&"ZST 2O]T'H)
MD'(?E9KI$[C/Q^],6BR!J'L)N& \'QC/QQGO1J=I771*2_:Q7*J<?9Q54>0L
M4>Q]NMY GO/.,BH>J_=LNR!%'TC1GUAG-2G+4:F9+2' <@(OU?4IHXKN$AT>
MS=8-$)O B>WT(JIHDUHH^.2I'1>P)@#6!'T13K2+<'N-0XTM%] D )H$#DU=
MA51!2DY4:J;9O:8KG)RLYK#-3IQ[3R?1!3T)H">!TY/U5\=)]5(\>.\4<$%(
M @A)6!.2("4D*C73)Q"2P FI5[U4M.'(%Y/6"=@%'PG@(^&(CTZKB^+1>\^^
M"V(20$S"FI@$*3%1J9F-I4!, 4Y,_:\#@C8W'>R[Q /;&@-X"G!X(CFC'ZV
MXL%[]]VZ +, P"RP[FX/2,M;5&JF3R"U@+K#O1'LZM_$X]KZ B@+<"C[F53O
M4>K$]Z)W+K@ OF"OH]Z^I9ZVI]X%K05 :P%U6WW0[JL_U/R)Q[7U!706X'3V
M,SE_0DT3C]X[!UQP7P#<%UBWY@>DS$:E9OH$9@NHV_.#=O/9@<91/*SM[V(
MT4(<T;ZDV;'4]CO+F+AVWPFF4C./!#!=:-VQ'Y("&96:Z1. +,0K97W*F&%W
MFQH>S=8-8%>(8]?I9<RPC5LM+RY0*P34"NGK7V'WO4,\JJTK@*$0AZ&N$F9(
M2D14:J;9O=\9XD1D-85M)FI-H0L>"H&'0IR'3OZ2.*E@B0?K/>$N\"<$_ FM
M\2<DQ1\J-=,GX$_8T7/?IV 9=K?=X^%L?SD+V!,18<]IU4D\6N]?VKH H0A
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
M9(CL>/=X; BZ+:_O%E0(FI6/&X*7A!4&\O<5E9-]U2AN!.L;X-G_4$L#!!0
M   ( +PRHEA<$#)&40,  $T,   9    >&PO=V]R:W-H965T<R]S:&5E=#0T
M+GAM;+5786_;-A#]*P>M&%H@B63)=N+,-I!8W1:@W8)FW3X,^T!+9XLH1;HD
M97?]]3M2BF8[JKH4WA=;I/C>W7LGG<_3G=(?3(%HX5,II)D%A;6;ZS T68$E
M,Q=J@Y+NK)0NF:6E7H=FHY'E'E2*,(ZB<5@R+H/YU._=Z_E4559PB?<:3%66
M3/]]BT+M9L$@>-QXQ]>%=1OA?+IA:WQ ^WYSKVD5MBPY+U$:KB1H7,V"F\%U
M.G'G_8'?.>[,WC4X)4NE/KC%73X+(I<0"LRL8V#TM<4%"N&(*(V/#6?0AG3
M_>M']A^]=M*R9 872OS!<UO,@JL <ERQ2MAW:O<S-GI&CB]3POA/V#5GHP"R
MREA5-F#*H.2R_F:?&A_V ,33#8@;0'P,&'X!D#2 Y+\"A@U@Z)VII7@?4F;9
M?*K5#K0[36SNPIOIT22?2U?V!ZOI+B><G2^8*<[ ?<+KCQ7?,H'2FC-@,H<[
MN45C2[<!Y_ +TYJY(L'+%"WCPKRBW?</*;Q\\0I> )?P6Z$J0T@S#2WEYB*$
M69/';9U'_(4\$GBKI"T,O)8YYH?XD#2UPN)'8;=Q+^%;IB\@&9Q!',7#CGP6
M_?";#<&CV,.3#GC:#T\Q:Z,G/6J2MDR)YTMZRN1K<EPI^/,-'84[BZ7YJ\OV
MFG?8S>N:RK79L QG 74-@WJ+P?S[[P;CZ(<NSTY)EIZ([,#/8>OGL(^=ZK.T
M8#"K-+<<W?.^I2>:+06>4RL]-V0N[0EJBDQF"+0'F<:<6Q#*=#[>=;RQC^=Z
M[78>3</MOGF]&3W7O+YP!XZ,6D=&O8[\I$D8-7(F^&?,84V_&)TZ:Y;17N#X
M2.?H:TZDO9E\8^7'K<[Q<W2Z<F*GT/$3H<<%'7]5:&\JWRCTLA5ZV2OT5UL@
M/;65UM0G@)%,VZFSE^6Y#>*49.F)R [<NVK=N_J?&N[5*?T\)5EZ(K(#/R>M
MGY/>I_$FRW1%[QN7%HG=TAN8(7E*';?+Q,F35VLX&$R.WK_>B,\UYVG$9#">
M'/74<&_0*E&O_<!J(%.5M/5HTNZV,_&-'P6/]F\'UXMZM/V7IAZT:6Y94^L%
M@2NBC"XNJ0/I>GBM%U9M_#BW5):&0W]9T+R/VAV@^RNE[./"!6C_0<S_ 5!+
M P04    " "\,J)8E^)=\P<'   L,@  &0   'AL+W=O<FMS:&5E=',O<VAE
M970T-2YX;6RU6VN/VC@4_2L66ZU:J93XE4=W!JEEM@]INZHZ;?=S!CQ#U)#0
MQ##M:G_\.I#&.'8\R>!\ 0+7)_?>V/<<WX2+^[SX5JX9X^#')LW*R\F:\^W+
MV:Q<KMDF+E_D6Y:)7V[S8A-S<5C<S<IMP>+58= FG2'/\V>;.,DF\XO#=Q^+
M^46^XVF2L8\%*'>;35S\?,W2_/YR B>_OOB4W*UY]<5L?K&-[]@UXU^V'PMQ
M-&M05LF&96629Z!@MY>35_#EPO>J 0>+KPF[+T\^@RJ4FSS_5AV\7UU.O,HC
MEK(EKR!B\;9G"Y:F%9+PXWL-.FG.60T\_?P+_<TA>!',35RR19[^DZSX^G(2
M3L"*W<:[E'_*[]^Q.B!:X2WSM#R\@OO:UIN Y:[D^:8>+#S8)-GQ/?Y1)^)D
M "0= U ] /4=@.L!^!#HT;-#6%<QC^<717X/BLI:H%4?#KDYC!;1)%EU&:]Y
M(7Y-Q#@^7\3E^CFH7L&?WW?)/DY9QLOG(,Y6X'VV9R7?5%^ *;@^7FB0WX)7
M^SA)XYN43<4\FEZ+,8KMTRO&A4'Y3(SZ<GT%GCYY!IZ ) .?U_FN%,CEQ8P+
MWRL/9LO:S]='/U&'GQ_BX@7 \#E 'B*&X0O[\"NV;(9C=?A,9*Q)&VK2A@YX
MN!/OAH-KMMP5"4^8R)>:DE*DQ!3C$9280:L5^[+<QDMV.1%+LF3%GDWFO_\&
M?>\/4\2.P)3X<1,_MJ'/7VWR@B?_LA58Y"4WA7H<[Q_&5[5D/R<H0!1=S/:G
M0>AF.,0TC!HSQ3W2N$>L[KTM\K($7S)1V-*#EV]%03/.NB,./3D_#&C+1]V&
MAJ'90=HX2(<Y^)<X9D8/J7;V:>3[0<M'@Q7T**5F-_W&3=_JYILX*8YSYFN<
M[HQ3VM=.3& 0^%[+/]T,!]A'R.Q?T/@76/U;Y,4V+V+.P$W>45:L $.7G",P
M)=:PB34<H^2$+N-W!*;$'S7Q1^?.Q4B?9!0'I+V>K>=Y9!30DX3K#9FSX#^P
MV!6%($X0BQ+ S=QHA1QZ%5VAJ0DX41QPC(E<H[K*@2,T-0=2/D K._?@SQI
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
MX]0 %CU#6&U1;O.?(!.JQZ!38'1;/)):,UV#:Q2^"AJ<JX#1-3B26K,&9BV
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
MQSW'Y]B^UVG#Q9,L 11ZKBB3<Z=4JKYP79F74&$YX34P/;/FHL)*=\7&E;4
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
MCD[/* .ZZP[=Q*K&5^1"6:IO/ZRHH:)V!K2_5,KN)NZ OD7G/P%02P,$%
M  @ O#*B6/ >E"!O!@  L2L  !D   !X;"]W;W)K<VAE971S+W-H965T-3,N
M>&ULU9IK;]LV%(;_"N$50PO$M7C1Q5UB('76K<"Z%6G:81CV09%I6Z@L>22=
MRW[]*%D1)9-B[( NTB^)91\>O3R'Y'E$\?2V8%_YDE(![E99SL\&2R'6;T8C
MGBSI*N:OBS7-Y2_S@JUB(2_98L37C,:SJM$J&R'/"T:K.,T'D]/JNX]L<EIL
M1);F]",#?+-:Q>S^+<V*V[,!'#Q\<9DNEJ+\8C0Y7<<+^HF*S^N/3%Z-&B^S
M=$5SGA8Y8'1^-CB';Z8D+!M4%E]2>LM;GT'9E>NB^%I>O)^=#;Q2$<UH(DH7
ML?QW0Z<TRTI/4L>_M=-!<\^R8?OS@_=W5>=E9ZYC3J=%]F<Z$\NS030 ,SJ/
M-YFX+&Y_I76'_-)?4F2\^@MN:UMO )(-%\6J;BP5K-)\^S^^JP/1:@!)3P-4
M-T#[-L!U UQU=*NLZM9%+.+)*2MN 2NMI;?R0Q6;JK7L39J7:?PDF/PUE>W$
MY'TNXGR17F<4G'-.!0<O+ZB(TXR_ D/P^=,%>/GB%7@!TAQ<+8L-C_,9/QT)
M>>>R_2BI[_)V>Q?4<Y</,7L-,#P!R$/$T'QJ;WY!DZ8Y[C8?R?XVG49-IU'E
M#_?Y2[E@Z?6F&DC5R.4GX(+>R$&]IC-P19-E7F3%XK[Y<5IE@C(P+7+!Y-CC
MX#R?@4N:Q:43ODS7TNH/L90F6DA/*MLK%L_D%)33TQ2_K6!B%ES.Y3=\'2?T
M;" G*Z?LA@XF/_X  ^\G4S0=.>O$%C>QQ3;ODU]8P3F8QHS=I_D"?(FS#35U
M>.LEJ+R4:\W-!&("87@ZNFEWQ60VQA@V9AV1I!%)K"+/DV2SVLC<R6R?KPHF
MTO^J/)J$;CWY+05#-/8"O"/49!;@<&P6ZC="?:O0W^5"_G@L?>W>T/,]G^Q(
M-)A!-/:166+02 RLD^E=FJ>"#G^3J_',-/9E%TXZ008_W\DBQ.D)>)?R),[
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
M'*P/H/N=,7AT_-R=_AKY7U!+ P04    " "\,J)8^@ )M- "   A!P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U-BYX;6RM5>]OFS 0_5=.K)I::2T$DG;J
M$J3\V-9(ZU2UZ_9AV@<7+F 5;&:;I-U?O[,A+*UHI$W[ K:Y=_?NP3W&&ZGN
M=8YHX*$LA)YXN3'5N>_K),>2Z1-9H: G*ZE*9FBK,E]7"EGJ0&7AAT%PZI>,
M"R\>N[,K%8]E;0HN\$J!KLN2J<<9%G(S\0;>]N":9[FQ!WX\KEB&-VANJRM%
M.[_+DO(2A>92@,+5Q)L.SN<C&^\"OG+<Z)TUV$[NI+RWFV4Z\0)+" M,C,W
MZ+;&.1:%340T?K8YO:ZD!>ZNM]D_N-ZIESNF<2Z+;SPU^<1[ZT&**U87YEIN
M+K#MQQ%,9*'=%39M;.!!4FLCRQ9,#$HNFCM[:'78 5">?D#8 L+G@.$+@*@%
M1*[1AIEK:\$,B\=*;D#9:,IF%TX;AZ9NN+!O\<8H>LH)9^(%*KYF5DI8"FU4
M36_(:#B&STRIYOQP@8;Q0A_94VE@@9IG@AE,@6FXP#3C(MM!4]CMS0(.#X[@
M +B +[FL-1.I'ON&&-NZ?M*RFS7LPA?817 IA<DUO!<IID_Q/G7:M1MNVYV%
M>Q->,G4"T> -A$$X[.$SWP^?5@0/0@>/]M").O4CER_Z._5)K$[7J?W.N>&H
M8<%U4DA=*UI__T2I8&FPU#_Z=&WJ#OOK6FLXUQ5+<.+1[&M4:_3BUZ\&I\&[
M/E'^4[(G$@T[B8;[LL?7:+W(*D$S6RMN'D&N@.R+!E30A"B%(GFDR=TJJ>&P
MKL#(HSY9]M>*H'2?6Y\&>Y'_J,&HTV"TE]='4H#:HG>OD<9082(SP7_1 /*M
M! ;(V.W 2M$[9TV!4U? .OLZ/@Z'H[&_WNVQ)V@P/!MT40UY?\=M2E29,V$-
MB:R%:2:Q.^U\?NKL[=GYC/R_L>L_:9J?!XUI9ELN<$4I@Y,S8J8:0VXV1E;.
MT^ZD(8=TRYS^8:AL #U?26FV&UN@^RO&OP%02P,$%     @ O#*B6'#?2TX;
M"P  _[0  !D   !X;"]W;W)K<VAE971S+W-H965T-3<N>&ULK=UK;Z/H%<#Q
MKX+<534K;3<&7^+L9B+M!'/'W-NNJKY@$B9!ZTL*9#+]]@4'7W (8[;_>3&Q
M'3^_!_,\.D><^-C7+YOLC_PQ20KAVVJYSC\.'HOBZ9>+B_SN,5G%^<^;IV1=
M_N;+)EO%17DW>[C(G[(DOM\.6BTOI.%P>K&*T_7@YGK[F)O=7&^>BV6Z3MQ,
MR)]7JSC[[Z=DN7GY.! 'NP?\].&QJ!ZXN+E^BA^2("FB)S<K[UWLE?MTE:SS
M=+,6LN3+Q\%OXB^1-*L&;)_Q]S1YR8]N"]5+^;S9_%'=T>\_#H;5$27+Y*ZH
MB+C\\36Y39;+2BJ/XS\U.MC/60T\OKW3E>V++U_,YSA/;C?+?Z3WQ>/'P6P@
MW"=?XN=EX6]>M*1^09/*N]LL\^W_PDO]W.% N'O.B\VJ'EP>P2I=O_Z,O]4G
MXFB )+TS0*H'2.<.&-4#1N<.&-<#QN<.F-0#)N<.F-8#IJ<#1N\,N*P'7)X[
MPZP>,#MWP%4]X.ITP/B]A1ON5FYX[ASB?K'/7FUQM]SBV>LM[A9</'O%Q=V2
MBV>ON;A;=/'L51=WRRZ>O>[B;N'%LU=>W"V]>/;:B[O%%\]>?6FW^M+9JR_M
M5E]Z#3FO,6(;8.2XB&^NL\V+D%7/+[WJQC9*;<>7<25=5P$U*++RMVDYKKB1
MDRS]&E=!3=#7>9$]E\&RR(6_"<YSD1?Q^CY=/PAEZ'J)LWOA=K,NLC($YD(8
M?UXFP@<Y*>)TF?]8/G^Q*00YR=.'=5PD]T*<"UIR_U"-/KC"7_\R&TW'OPKI
M6@@?-\]YZ><_E8^*T\G9#XY.'PR4[.01I3AYX(?_Z_[U15&>Z>I\7=S59_73
MZUF5WCFK=IS]+(S$GP1I*(V%0)6%#S_\V,+<]F&BX#U&[L/,(U_X4"]$&S;O
M@]G_7+QS3$H?YG;Q>W5,U8JW66H?2XL4X8-2M#E:'T?]Y+X>TZCUF/0^EN%V
MOCZCU[G2RM=7[ODVR.P%_?;>?K*Z&3FYVS.CCMUM]V'>W]V+/LSW=K?3!WM_
M=[M]F._L;J^/U;&[_3[.=W9WT,?ZSNX.>YVKCMT=]8+:=O=%F1WW*5+:ITAI
MZX[?<8WX*5XG>2+\GJS;4D'GZ.J"Z)?\*;Y+/@[**YX\R;XF@YOJ9 U_;4L(
M)":3V)S$%!)324PC,9W$#!(S2<PB,9O$%B3FD)A+8AZ)^206D%A(8A&$-5+*
M:)]21EM]]/VKKG]9Y>\$O4A6^;_;LLN(S"XD)I/8G,04$E-)3",QG<0,$C-)
MS"(QF\06).:0F$MB'HGY)!:06$AB$80ULLMXGUW&G1<LQZ6[+W7I[FY7NFO+
M,9U<WQSSBDVW6/7GG*\WHZO9\/KBZW'N(&><DYA"8BJ):22FOV+5GQ_VRS0=
M5O^:"V60DYHD9I&8_7;3CJ7)I'DN%N2,#HFY).:1F$]BP9F;-B0GC2"L$<DG
M^T@^Z8SD\^=LTQ:P.T?U#=@D)I/8G,04$E-)3",QG<0,$C-)S"(QF\06).:0
MF$MB'HGY)!:06$AB$80U4LETGTJF5,EI2F87$I-);$YB"HFI)*:1F$YB!HF9
M)&:1F$UB"Q)S2,PE,8_$?!(+2"PDL0C"&MGE<I]=+MF24R?7-\>\8I.CRT+Q
MZFI\6G-Z?98H'C]M-CF]>)R31Z:0F$IB&HGI)&:0F$EB%HG9;S?M>#P:2B<U
MIY9-.WY;\7#((W-)S",QG\0"$@M)+(*P1B2?[2/YK#.2!V4(CY\V62+(F^4R
MSMJ"=Z?0-WB3F$QB<Q)32$PE,8W$=!(S2,PD,8O$;!);D)A#8BZ)>23FDUA
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
MFH:R;J6L^U9EG-$YX\P\MZDK6'H-=?XK>;LUOA>VR^M5\GH'Y7V5!MM,LZ7
MADHP/'(#R9*)9:WCVN0>9/W;E7,DLD8 815 ^%]:)SQF $<B:P30KP+H_W/K
M]%L6YZNUN5NRMW4&E;+!45IGT-+8KUMGMV:W==S:=F:/$OB1QT[0A,,"4=Y%
M']VI8GLN)D:N\QUN+@WNE_EPA2<:4+8 GR^D-"\3NVE69Z3H-U!+ P04
M" "\,J)8BE<!3L@"  "$"   &0   'AL+W=O<FMS:&5E=',O<VAE970U.2YX
M;6RM5EUOTS 4_2M6F- FP?+13XTVTM8*M@>@VA@\(![<Y*:UYMC!=MK!K^?:
MR:)TS0I#>TGL^)[C<\_U1R9;J>[T&L"0^YP+/?76QA1GOJ^3->14G\H"!(YD
M4N748%>M?%THH*D#Y=R/@F#HYY0)+YZX;PL53V1I.!.P4$27>4[5KPO@<COU
M0N_APS5;K8W]X,>3@J[@!LQML5#8\QN6E.4@-)."*,BFWGEX-AO;>!?PE<%6
MM]K$9K*4\LYVKM*I%UA!P"$QEH'B:P,SX-P2H8R?-:?73&F![?8#^WN7.^:R
MI!IFDG]CJ5E/O;%'4LAHR<VUW%Y"G<_ \B62:_<DVRIVA,%)J8W,:S JR)FH
MWO2^]J$%"/M/ *(:$/TKH%<#>B[12IE+:TX-C2=*;HFRT<AF&\X;A\9LF+!5
MO#$*1QGB3#P'Q3;46DFNA#:JQ H93=Z2SUFFP1@F5N1<8TN3XSD8RK@^P=';
MFSDY/CHA1X0)\F4M2TU%JB>^04F6V$_JZ2^JZ:,GIO](U2GIA6](%$3]#OCL
M,'P.20/O[<)]-*)Q(VK<B!Q?[WEN8&[D$M*5,\.N.V88:#)G.N%2EPK(]_,E
MAN.:_-'E035IOWM2NT_/=$$3F'JX$36H#7CQZU?A,'C7Y<@+D>WXTVO\Z1UB
MCS\HJ=&.7);6%IGA/D[D2K#?D!+J5DE7^A7GT'':4V431]'$W[23V@\)!V$3
MLZ.UWVCM/TNK7<Y=ZBJ606OJX)&X0Q$[T@:-M,%!:9_P=*Z$60\KXX@KES"0
M=HD<[$G8LW _Y$D+AXW.X7^7FS.Z9-QMA"[!PP[!X2/%^S%A,.Q6/&H4CUZD
MZ*._%OU0Q(ZT<2-M_(RBM^P[7/EQQ^9Y;.1^S+Z1?NN.L/<SGKQXGFG"(4-4
M<#K"5%5UYU4=(PMW;2REP4O(-=?XFP#*!N!X)J5YZ-B;J/GQB/\ 4$L#!!0
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
MZ^!ZC/&KIC<W$R-+UP_7TF!W=<,<GS-0U@#W-U*:_<0>T#V0R6]02P,$%
M  @ O#*B6)X6TE?0"@  &&4  !D   !X;"]W;W)K<VAE971S+W-H965T-C8N
M>&ULQ9U;;^.X'<6_"N$NBAE@$NMJ.],D0&*)TP6:;C#9V7DH^L!8="R,++F2
MG$NQ'[[4):9IT;25GD%>XDO('RD=\D_RB++.G[+\1['@O"3/RR0M+@:+LEQ]
M'@Z+V8(O67&:K7@J_C//\B4KQ<?\85BL<LZB.M,R&3J6-1HN69P.+L_K[V[S
MR_-L729QRF]S4JR72Y:_7/,D>[H8V(/7+[[&#XNR^F)X>;YB#_R.E]]6M[GX
M--Q0HGC)TR+.4I+S^<7@ROY,?:_*4*?X(^9/Q=9[4AW*?9;]J#[\&ET,K*I&
M/.&SLD(P\?+(ISQ)*I*HQW]:Z&!39I5Q^_TKG=8'+P[FGA5\FB7?XZA<7 PF
M Q+Q.5LGY=?LZ>^\/2"_XLVRI*C_DJ<VK34@LW519LLVLZC!,DZ;5_;<GHBM
M#-YH3P:GS>#L9MA7@MMF<'<RN/Z>#%Z;P=O)X#A[,OAM!G\WP[XJC=H,H_K<
M-R>K/M,!*]GE>9X]D;Q*+6C5FUJN.K<XP7%:M:R[,A?_C46^\O*NS&8_3JZ%
M-A&99DO18 M62QX^5^\Y.2'_9'G.*OW)AX"7+$Z*C^?#4I1=$8:SMISKIAQG
M3SDNN<G2<E&0,(UXI,D?F//;M@$P% >].7+G]<BO'2/QAN6GQ+4_$<=R//+M
M+B ??OE('O)LO2*_D"$I%BSG1?NBJ?#4C+]:";SEU'AW@S\&'+R]WGN9H9D9
M\-F&N:FL!D,/5>V%6&Y+T=5%$<K=-%&WIKK[FF@%.KGO-M$KT2[3!R[B7$GN
M7\AVNEOV4G]]]<3RB/SK'P))?BWYLOBWKNDVY7OZ\JO8_KE8L1F_&(C@7?#\
MD0\N__H7>V3]3=<LD+  "0N1, J"*2W"V[0(ST2_O,VS&>=10>9YMB1U""._
MK:HV(<+#,\]G<:&-,=<-=E1CJS'W4<05Q[8LZWSXN*UA-YU[-AYUT@7&:O:5
M!PFC()@BC[^1QS?*TW3$:[4CRK[Z::,1R>:M;I_([^R97/.4S^-2IYS?4>3$
M.>L*ITEF>R.-<L8CZ*L<$D9!,$6YT4:YD5&Y[_5$C$<G[)'G8F(IAA66EB<1
M*SF9LS@GCRQ9B['K0YR2*$L2EA=DQ?,FUG\D?VZ-;SH1F\+'V]W/.QV-=C34
MI!J?CL]V!#0>2%\!D3 *@BD"CC<"CHT"_IZ5+"%Q6N:QF/S/&KUT4HR[D=#R
M_6Z'ZJ9S/;?;\0)CM?K*@811$$R18[*18W*$'-L]1T2\HAZOLG:\>N2%-N!-
M.B?>\2?6N*M0D]#?5LBV)]U!+3!6M:]$2!@%P12)SC82G1DE^E)-G NQZBH7
M(JB5"T[X<I5D+YR35;9:)\U4\\]F@JT3ZJQ[_G<4,E:@[XSP8'$ALC@*@BG2
MV)9<G%I&<<*BC)=B\(G(/,OG/"[7.2=Y/1IE.5FG5><1_WSM2]67T_ W[>K4
MZIRWW8YDKDM?G0X7&$(+I"B:*M66CV ?*15+TW45]8Y5K.!I+%Z6+&7-!%&K
M7VMC*.?SU#K;U=!8R=X:'E5H""V4HFBJCH[4T?E).K(D(9D(H/DF@FHG@6WY
M.R?5W@V:YFKV5O*H0D-HH11%4Y64MHEM7(-7ID[.Q2),3 ?);-LWX:VU%ZTY
M*3.2\\=JO4SXOF"KE]'MSB GKM.=G[0)M\^\XWK=Z8GY:/K.3Z TBJ*I2DJ[
MPS;['=_2G,^RAS3^KQ!')Z56H*Z),1DY8U>C$-)Y"(XN-X262U$T52/I>=AF
MT^-UZ4Q>E\YB71QG4=7![D4WVNBGE<J,=L@+KU;:-EE6%C@9D8B]:"UI,ZBW
MDE"3!$JC*)JJMO1);+-1TEPV:;SFHSODJ!LQ7=?2A<Q1)V3:(W^L67:;J]E;
M(J@/@J*I$DDGQ#Y@A;!GT?-J0['QB8_6:=P]^V-/XXW877/$<:V)1B6H.P*E
M411-54D:)+;9(?DJ![8V8,ZRHBS(C*WBDB5[(V;7'NFH@[0H@L,%AH>34%2=
MU),MK0[;['6(4&.3VX2E8FX?$?%I7'_2GF"DBS"%T@(H+832*(JF7M*6AHEC
MO?.U4@=I6DRAM !*"Z$TBJ*I#4/:,X[9GKEK-AVP1Q8G[#YIEO'UU1VQF(^J
M2SA;KC19B:C07.5I+N94EW;V7]8Q%]V[24 M'"@MA-)H2U,F&M;(KF80FW%#
ME5NZ.([9Q:EW8.R+[>:\O?6"&C506@BE411-U53Z.<Y[[X-QH!MAH+0 2@NA
M-(JBJ0U#VD..V1YZC>WK19GEM96'#.Y>)TA-)E:U%MV9;YLKV5ON(XL-H<52
M7;'5I=2]$5GZ0X[9Q+F*HK@Z_2QYW0#X<\9BI,LRA=*"EK9]<L=:2:%.$8JF
MZBZ=(L?L%(6O5Y.WMZEIE4.:+U,H+8#20BB-HFBJOM)F<L;O/2HC_9XIE!9
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
MTFMU\2YET0,5$RURVT:\"(U-B1TNL6\$:0[@_EP(O9T8 U4G.OH/4$L#!!0
M   ( +PRHEC%E'X2BP,  !$/   9    >&PO=V]R:W-H965T<R]S:&5E=#<Q
M+GAM;,U736_;.!#]*X0V6+2 $WW9CIVU#<1.BBW0 $'<=@]%#XPTMH10I):D
M[71_?8>4HDB.(B +'7*)*&KFZ<WCLS(S.PCYH!( 31XSQM7<2;3.+UQ710ED
M5)V)'#@^V0B948VW<NNJ7 *-;5+&W,#SQFY&4^XL9G;O5BYF8J=9RN%6$K7+
M,BI_+8&)P]SQG:>-NW2;:+/A+F8YW<(:]+?\5N*=6Z'$:09<I8(3"9NY<^E?
MK/S0)-B([RD<5&U-3"GW0CR8F\_QW/$,(V 0:0-!\;*'%3!FD)#'OR6H4[W3
M)-;73^B?;/%8S#U5L!+LGS36R=R9."2&#=TQ?2<.?T-9T,C@18(I^Y<<REC/
M(=%.:9&5R<@@2WEQI8^E$+4$Q&E/",J$X#AA^$I"6"98Y=R"F2WKBFJZF$EQ
M(-)$(YI96&UL-E:3<G.,:RWQ:8IY>K'6(GHX7:(0,5F)#-VAJ-7W^M&L@9R2
M-5HGWC$@8D.NLYR)7P!D#7*?1GA-J(33^Q?Y W+)F(@*+$R\@TAL>?H?AMV"
M3(6)5EJ1#U>@:<K41WS1M_45^7#RD9R0E).OB=@IRF,U<S76:=BZ45G3LJ@I
M>*6FD-P(KA-%KGD,<3/?17TJD8(GD99!)^ -E6<D] <D\()A"Y]5=_IECNE>
M8-/##CIA=6:AQ0M?P>O]$'Y\P3>0SQHR];--[H+.L)V.^=!<J)Q&,'?P2Z*0
M$SB+/__PQ]Y?;5KU!-90;E@I-^Q"+]U>"!75W0Z%V]N*+Q#'%M%\%/<+/PR]
M8.;NZU6U1(U'Y],JJD%W5-$===(UIV/.3<(>^*Z572? 6X^F)[!&K>.JUO'[
M,O6X3^5Z FLH=UXI=]Z[J0O$4<VN8V]T9.F6F,!O-_2DHCKII'J'Q5,9)0/\
M3[O'%B+'AD /"'[F"? M!N,!\FT;X4[<MYY63V -"::5!-/WY?-IG\KU!-90
MSO>>>Q6O=Z>7D'4;#\/)],CK+5&CR=1K=[M?:Z[\;L+8GJ*A!V0+'"1EA=5I
MC(U<JK2DIH5M)=T)^]9#ZPNM*4+P+$+POAQ?\NE+O9[0FNH]]WI^9T/T_SP?
MONA&)J$W.?;\RR@?A[_)D>G=VG"1@=S:F4LAEQW710M=[59SW:6=9H[VEV;>
MLT/+,TPQ+&)_C1]_11AL$-([.\??H2SFK^)&B]R.,/="XT!DEPG.K"!- #[?
M"*&?;LP+JBEX\1M02P,$%     @ O#*B6+T6O04= P  10H  !D   !X;"]W
M;W)K<VAE971S+W-H965T-S(N>&ULK5;1;ILP%/T5BU53*W6% $G:+$%J0J=5
M6J4H:;N':0\NW 2K@*EMDG9?/]L02A."VBIY"-B^Y_B>8QO?X9JR1QX!"/2<
MQ"D?&9$0V< T>1!!@OD9S2"5(PO*$BQDDRU-GC' H08EL6E;5L],,$D-;ZC[
MILP;TES$)(4I0SQ/$LQ>QA#3]<CH&)N.&5E&0G68WC##2YB#N,NF3+;,BB4D
M":2<T!0Q6(R,R\[ [ZMX'7!/8,UK[T@I>:#T436NPY%AJ80@AD H!BP?*YA
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
MJB7^M@D:0W)M;F6:3$"N[)"MD%K&=3Z?E;OE(#^UX^N;_0LSX-LI]14F_SK
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
MP%8!JQV(;X\#-67W"0)854P;MH-Q)(HP!&K17J-AB&0GA(]]?;!=$@119$<
MLRL( @R!W8@CF +0@"%!4-X'M^Y'WNH^Y35_Z0_^ E!+ P04    " "\,J)8
MEXJ[',     3 @  "P   %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S
M9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X
M 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606IW.D5XA<UYVE/=LO
M3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E_G;@2=&A(E@6FD7)
MTZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0
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
MYWO+]?&7Y??)"3L7G.O;BN'I+U!+ P04    " "\,J)85:BY9Q("  !S+
M$P   %M#;VYT96YT7U1Y<&5S72YX;6S-VM].VS 4!O!7J7*+&M?_-T2Y 6XW
M+O8"7G+:1DUBRS:LO/V<%) VL0I4I'TWC5K;YSOQD7Y7O?KQ%"@M#D,_IG6U
MRSE<,I::'0TNU3[06%8V/@XNEZ]QRX)K]FY+3*Q6AC5^S#3F99YJ5-=7M[1Q
M#WU>W!W*SZGSX[J*U*=J<7/<.&6M*Q="WS4NEW7V.+9_I2R?$^IR<MZ3=EU(
M%V5#Q=Y,F%;^'?!\[OLCQ=BUM+AW,7]S0]G%#CU+^:FG5)\N\4:/?K/I&FI]
M\S"4(W4*D5R;=D1YZ.MCT8O3R;G<,!T_^=GY<YE3@67G??0AE8E%^GC<RTBF
MT\M0"E',W>E7?$TLI<]^/YJFW5+[SNQRO;]\W,_S2&Q^G'_'?\[XM?X'^Q @
M?4B0/A1('QJD#P/2AP7IXPM('U]!^N KE$901.4HI'(44SD*JAQ%58["*D=Q
ME:/ RE%D%2BR"A19!8JL D56@2*K0)%5H,@J4&05*+(*%%DEBJP215:)(JM$
MD56BR"I19)4HLDH4626*K!)%5H4BJT*15:'(JE!D52BR*A19%8JL"D56A2*K
M0I%5H\BJ4635*+)J%%DUBJP:15:-(JM&D56CR*I19#4HLAH460V*K 9%5H,B
MJT&1U:#(:E!D-2BR&A19+8JL%D56BR*K19'5HLAJ462U*++:_RGK3^_WGQP_
M/^O!=>-+/IO_:WS]&U!+ 0(4 Q0    ( +PRHE@'04UB@0   +$    0
M          "  0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#%     @ O#*B
M6"-#MEOO    *P(  !$              ( !KP   &1O8U!R;W!S+V-O<F4N
M>&UL4$L! A0#%     @ O#*B6)E<G",0!@  G"<  !,              ( !
MS0$  'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4    " "\,J)8H^JR:28%
M   P%0  &               @($."   >&PO=V]R:W-H965T<R]S:&5E=#$N
M>&UL4$L! A0#%     @ O#*B6##]NC;G!   M1(  !@              ("!
M:@T  'AL+W=O<FMS:&5E=',O<VAE970R+GAM;%!+ 0(4 Q0    ( +PRHECL
M\*S?Q0,  $P-   8              " @8<2  !X;"]W;W)K<VAE971S+W-H
M965T,RYX;6Q02P$"% ,4    " "\,J)8Y$(439$"   $!@  &
M    @(&"%@  >&PO=V]R:W-H965T<R]S:&5E=#0N>&UL4$L! A0#%     @
MO#*B6-\ ENAG!P  )"   !@              ("!21D  'AL+W=O<FMS:&5E
M=',O<VAE970U+GAM;%!+ 0(4 Q0    ( +PRHE@ED<?XL0,  . -   8
M          " @>8@  !X;"]W;W)K<VAE971S+W-H965T-BYX;6Q02P$"% ,4
M    " "\,J)83[:F$$D'  #M'@  &               @('-)   >&PO=V]R
M:W-H965T<R]S:&5E=#<N>&UL4$L! A0#%     @ O#*B6/KX.VJ5!P  @34
M !@              ("!3"P  'AL+W=O<FMS:&5E=',O<VAE970X+GAM;%!+
M 0(4 Q0    ( +PRHE@6CP^2S@(  ,\&   8              " @1<T  !X
M;"]W;W)K<VAE971S+W-H965T.2YX;6Q02P$"% ,4    " "\,J)8O?^GBB4$
M  "N"0  &0              @($;-P  >&PO=V]R:W-H965T<R]S:&5E=#$P
M+GAM;%!+ 0(4 Q0    ( +PRHEA.%@[.%@4  !D-   9              "
M@7<[  !X;"]W;W)K<VAE971S+W-H965T,3$N>&UL4$L! A0#%     @ O#*B
M6-EZCH/;!0  # X  !D              ("!Q$   'AL+W=O<FMS:&5E=',O
M<VAE970Q,BYX;6Q02P$"% ,4    " "\,J)8^B 7UD4)  !$&@  &0
M        @('61@  >&PO=V]R:W-H965T<R]S:&5E=#$S+GAM;%!+ 0(4 Q0
M   ( +PRHEA'L<4,=P(  &H%   9              " @5)0  !X;"]W;W)K
M<VAE971S+W-H965T,30N>&UL4$L! A0#%     @ O#*B6'1D>R$P!@  M@\
M !D              ("! %,  'AL+W=O<FMS:&5E=',O<VAE970Q-2YX;6Q0
M2P$"% ,4    " "\,J)8/MIDW',"  !U!0  &0              @(%G60
M>&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;%!+ 0(4 Q0    ( +PRHE@^2"AP
MG ,   ((   9              " @1%<  !X;"]W;W)K<VAE971S+W-H965T
M,3<N>&UL4$L! A0#%     @ O#*B6+B3MB-7!   ?0D  !D
M ("!Y%\  'AL+W=O<FMS:&5E=',O<VAE970Q."YX;6Q02P$"% ,4    " "\
M,J)865X/%4,%  !L#   &0              @(%R9   >&PO=V]R:W-H965T
M<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0    ( +PRHECV*9%C%08  )</   9
M          " @>QI  !X;"]W;W)K<VAE971S+W-H965T,C N>&UL4$L! A0#
M%     @ O#*B6*_51@C4!0  O0X  !D              ("!.'   'AL+W=O
M<FMS:&5E=',O<VAE970R,2YX;6Q02P$"% ,4    " "\,J)8'O&W,OH+  !W
M)0  &0              @(%#=@  >&PO=V]R:W-H965T<R]S:&5E=#(R+GAM
M;%!+ 0(4 Q0    ( +PRHEA% YXPC@,  !$(   9              " @72"
M  !X;"]W;W)K<VAE971S+W-H965T,C,N>&UL4$L! A0#%     @ O#*B6)AS
MAO4#!P  G!$  !D              ("!.88  'AL+W=O<FMS:&5E=',O<VAE
M970R-"YX;6Q02P$"% ,4    " "\,J)8LE YYUH#   ;"0  &0
M    @(%SC0  >&PO=V]R:W-H965T<R]S:&5E=#(U+GAM;%!+ 0(4 Q0    (
M +PRHEA;K'@4LP,  "<(   9              " @021  !X;"]W;W)K<VAE
M971S+W-H965T,C8N>&UL4$L! A0#%     @ O#*B6/%6#)AP @  = 4  !D
M             ("![I0  'AL+W=O<FMS:&5E=',O<VAE970R-RYX;6Q02P$"
M% ,4    " "\,J)85TN*<D4"  ":!0  &0              @(&5EP  >&PO
M=V]R:W-H965T<R]S:&5E=#(X+GAM;%!+ 0(4 Q0    ( +PRHE@O,7L:* (
M %4%   9              " @1&:  !X;"]W;W)K<VAE971S+W-H965T,CDN
M>&UL4$L! A0#%     @ O#*B6,M1_]T2!0  "PT  !D              ("!
M<)P  'AL+W=O<FMS:&5E=',O<VAE970S,"YX;6Q02P$"% ,4    " "\,J)8
M7\(0'5$#  !Q!P  &0              @(&YH0  >&PO=V]R:W-H965T<R]S
M:&5E=#,Q+GAM;%!+ 0(4 Q0    ( +PRHE@XH>M_Y@8  %T4   9
M      " @4&E  !X;"]W;W)K<VAE971S+W-H965T,S(N>&UL4$L! A0#%
M  @ O#*B6&&9@J"' @  <P4  !D              ("!7JP  'AL+W=O<FMS
M:&5E=',O<VAE970S,RYX;6Q02P$"% ,4    " "\,J)82^>Z790"  ")!0
M&0              @($<KP  >&PO=V]R:W-H965T<R]S:&5E=#,T+GAM;%!+
M 0(4 Q0    ( +PRHEC(V":-@0(  ($%   9              " @>>Q  !X
M;"]W;W)K<VAE971S+W-H965T,S4N>&UL4$L! A0#%     @ O#*B6)*9J&;%
M P  R0@  !D              ("!G[0  'AL+W=O<FMS:&5E=',O<VAE970S
M-BYX;6Q02P$"% ,4    " "\,J)8VZGYC:,"  #A!0  &0
M@(&;N   >&PO=V]R:W-H965T<R]S:&5E=#,W+GAM;%!+ 0(4 Q0    ( +PR
MHEA.P!Y]7@4  ),.   9              " @76[  !X;"]W;W)K<VAE971S
M+W-H965T,S@N>&UL4$L! A0#%     @ O#*B6.D$,EM@!   ]@L  !D
M         ("!"L$  'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6Q02P$"% ,4
M    " "\,J)83"\W=;,$  !##   &0              @(&AQ0  >&PO=V]R
M:W-H965T<R]S:&5E=#0P+GAM;%!+ 0(4 Q0    ( +PRHEBU>E7TJ (  /8%
M   9              " @8O*  !X;"]W;W)K<VAE971S+W-H965T-#$N>&UL
M4$L! A0#%     @ O#*B6"5KYW8@"   04X  !D              ("!:LT
M 'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6Q02P$"% ,4    " "\,J)8]6.>
MC @%   -'@  &0              @('!U0  >&PO=V]R:W-H965T<R]S:&5E
M=#0S+GAM;%!+ 0(4 Q0    ( +PRHEA<$#)&40,  $T,   9
M  " @0#;  !X;"]W;W)K<VAE971S+W-H965T-#0N>&UL4$L! A0#%     @
MO#*B6)?B7?,'!P  +#(  !D              ("!B-X  'AL+W=O<FMS:&5E
M=',O<VAE970T-2YX;6Q02P$"% ,4    " "\,J)878M\X,,%   4(0  &0
M            @('&Y0  >&PO=V]R:W-H965T<R]S:&5E=#0V+GAM;%!+ 0(4
M Q0    ( +PRHE@=Y%WEO (  #8'   9              " @<#K  !X;"]W
M;W)K<VAE971S+W-H965T-#<N>&UL4$L! A0#%     @ O#*B6+4H8=:V!0
MTR8  !D              ("!L^X  'AL+W=O<FMS:&5E=',O<VAE970T."YX
M;6Q02P$"% ,4    " "\,J)8)T,K"(0"  #)!@  &0              @(&@
M]   >&PO=V]R:W-H965T<R]S:&5E=#0Y+GAM;%!+ 0(4 Q0    ( +PRHEBP
M%$T_K 4  ,$F   9              " @5OW  !X;"]W;W)K<VAE971S+W-H
M965T-3 N>&UL4$L! A0#%     @ O#*B6.1A7!^E @  3 <  !D
M     ("!/OT  'AL+W=O<FMS:&5E=',O<VAE970U,2YX;6Q02P$"% ,4
M" "\,J)8>'_A#V@"  "N!0  &0              @($:  $ >&PO=V]R:W-H
M965T<R]S:&5E=#4R+GAM;%!+ 0(4 Q0    ( +PRHECP'I0@;P8  +$K   9
M              " @;D" 0!X;"]W;W)K<VAE971S+W-H965T-3,N>&UL4$L!
M A0#%     @ O#*B6)N)H9$] P  _0D  !D              ("!7PD! 'AL
M+W=O<FMS:&5E=',O<VAE970U-"YX;6Q02P$"% ,4    " "\,J)8U$$?>A0"
M  !!!   &0              @('3# $ >&PO=V]R:W-H965T<R]S:&5E=#4U
M+GAM;%!+ 0(4 Q0    ( +PRHECZ  FTT (  "$'   9              "
M@1X/ 0!X;"]W;W)K<VAE971S+W-H965T-38N>&UL4$L! A0#%     @ O#*B
M6'#?2TX;"P  _[0  !D              ("!)1(! 'AL+W=O<FMS:&5E=',O
M<VAE970U-RYX;6Q02P$"% ,4    " "\,J)8((0AM[\"   O"0  &0
M        @(%W'0$ >&PO=V]R:W-H965T<R]S:&5E=#4X+GAM;%!+ 0(4 Q0
M   ( +PRHEB*5P%.R (  (0(   9              " @6T@ 0!X;"]W;W)K
M<VAE971S+W-H965T-3DN>&UL4$L! A0#%     @ O#*B6)*[@[J? @  ^P8
M !D              ("!;",! 'AL+W=O<FMS:&5E=',O<VAE970V,"YX;6Q0
M2P$"% ,4    " "\,J)8%_0\*'L#  #A#P  &0              @(%")@$
M>&PO=V]R:W-H965T<R]S:&5E=#8Q+GAM;%!+ 0(4 Q0    ( +PRHEC&5!\3
M' ,  !H+   9              " @?0I 0!X;"]W;W)K<VAE971S+W-H965T
M-C(N>&UL4$L! A0#%     @ O#*B6--81YX^ @  +P4  !D
M ("!1RT! 'AL+W=O<FMS:&5E=',O<VAE970V,RYX;6Q02P$"% ,4    " "\
M,J)8%5^(8J\"  " !@  &0              @(&\+P$ >&PO=V]R:W-H965T
M<R]S:&5E=#8T+GAM;%!+ 0(4 Q0    ( +PRHECM;6/KV@(  "P'   9
M          " @:(R 0!X;"]W;W)K<VAE971S+W-H965T-C4N>&UL4$L! A0#
M%     @ O#*B6)X6TE?0"@  &&4  !D              ("!LS4! 'AL+W=O
M<FMS:&5E=',O<VAE970V-BYX;6Q02P$"% ,4    " "\,J)8>'<G,8<$  #:
M$@  &0              @(&Z0 $ >&PO=V]R:W-H965T<R]S:&5E=#8W+GAM
M;%!+ 0(4 Q0    ( +PRHE@Y0=\/_ (  "\(   9              " @7A%
M 0!X;"]W;W)K<VAE971S+W-H965T-C@N>&UL4$L! A0#%     @ O#*B6,1W
MET2R P  HPX  !D              ("!JT@! 'AL+W=O<FMS:&5E=',O<VAE
M970V.2YX;6Q02P$"% ,4    " "\,J)8]^>B#J$#  "5#@  &0
M    @(&43 $ >&PO=V]R:W-H965T<R]S:&5E=#<P+GAM;%!+ 0(4 Q0    (
M +PRHEC%E'X2BP,  !$/   9              " @6Q0 0!X;"]W;W)K<VAE
M971S+W-H965T-S$N>&UL4$L! A0#%     @ O#*B6+T6O04= P  10H  !D
M             ("!+E0! 'AL+W=O<FMS:&5E=',O<VAE970W,BYX;6Q02P$"
M% ,4    " "\,J)8[K^GP+L%  !U'0  &0              @(&"5P$ >&PO
M=V]R:W-H965T<R]S:&5E=#<S+GAM;%!+ 0(4 Q0    ( +PRHECP',LMTP(
M )0'   9              " @71= 0!X;"]W;W)K<VAE971S+W-H965T-S0N
M>&UL4$L! A0#%     @ O#*B6"2KRX9" P   @T  !D              ("!
M?F ! 'AL+W=O<FMS:&5E=',O<VAE970W-2YX;6Q02P$"% ,4    " "\,J)8
MKM [$TL#  !%#   &0              @('W8P$ >&PO=V]R:W-H965T<R]S
M:&5E=#<V+GAM;%!+ 0(4 Q0    ( +PRHEA^;1.3"0(  +@$   9
M      " @7EG 0!X;"]W;W)K<VAE971S+W-H965T-S<N>&UL4$L! A0#%
M  @ O#*B6&*J5T2! P  WQ<   T              ( !N6D! 'AL+W-T>6QE
M<RYX;6Q02P$"% ,4    " "\,J)8EXJ[',     3 @  "P
M@ %E;0$ 7W)E;',O+G)E;'-02P$"% ,4    " "\,J)86X''U*$%  !^,@
M#P              @ %.;@$ >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @
MO#*B6'KM3FU6 @  CBT  !H              ( !''0! 'AL+U]R96QS+W=O
M<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ O#*B6%6HN6<2 @  <RP  !,
M             ( !JG8! %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&     %4
,50!*%P  [7@!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>99
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// 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)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>100
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* 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;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>102
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.24.1.u1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>173</ContextCount>
  <ElementCount>339</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>67</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>16</UnitCount>
  <MyReports>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Statement - Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsofOperations</Role>
      <ShortName>Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - Consolidated Statements of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementsofCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - Statement - Consolidated Statement of Shareholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity</Role>
      <ShortName>Consolidated Statement of Shareholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical</Role>
      <ShortName>Consolidated Statement of Shareholders' Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SummaryofSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - New Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/NewPronouncements</Role>
      <ShortName>New Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Cash, Cash Equivalents, and Investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestments</Role>
      <ShortName>Cash, Cash Equivalents, and Investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Goodwill</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/Goodwill</Role>
      <ShortName>Goodwill</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Intangible Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IntangibleAssets</Role>
      <ShortName>Intangible Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Warranty Obligations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WarrantyObligations</Role>
      <ShortName>Warranty Obligations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>0000019 - Disclosure - Commitment and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CommitmentandContingencies</Role>
      <ShortName>Commitment and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>0000020 - Disclosure - Derivative Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstruments</Role>
      <ShortName>Derivative Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>0000021 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>0000022 - Disclosure - Stock-Based Compensation Expense</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpense</Role>
      <ShortName>Stock-Based Compensation Expense</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>0000023 - Disclosure - Stock Repurchase Program</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockRepurchaseProgram</Role>
      <ShortName>Stock Repurchase Program</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>0000024 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>0000025 - Disclosure - Weighted-Average Shares</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageShares</Role>
      <ShortName>Weighted-Average Shares</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>0000026 - Disclosure - Business Combinations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/BusinessCombinations</Role>
      <ShortName>Business Combinations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>0000027 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>995410 - Disclosure - Pay vs Performance Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/PvpDisclosure</Role>
      <ShortName>Pay vs Performance Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>995445 - Disclosure - Insider Trading Arrangements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements</Role>
      <ShortName>Insider Trading Arrangements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>9954471 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.cognex.com/role/SummaryofSignificantAccountingPolicies</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>9954472 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/FairValueMeasurements</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>9954473 - Disclosure - Cash, Cash Equivalents, and Investments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables</Role>
      <ShortName>Cash, Cash Equivalents, and Investments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/CashCashEquivalentsandInvestments</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>9954474 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/Inventories</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>9954475 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/Leases</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>9954476 - Disclosure - Goodwill (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/GoodwillTables</Role>
      <ShortName>Goodwill (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/Goodwill</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>9954477 - Disclosure - Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IntangibleAssetsTables</Role>
      <ShortName>Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/IntangibleAssets</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>9954478 - Disclosure - Warranty Obligations (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WarrantyObligationsTables</Role>
      <ShortName>Warranty Obligations (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/WarrantyObligations</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>9954479 - Disclosure - Derivative Instruments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsTables</Role>
      <ShortName>Derivative Instruments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/DerivativeInstruments</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>9954480 - Disclosure - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionTables</Role>
      <ShortName>Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/RevenueRecognition</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>9954481 - Disclosure - Stock-Based Compensation Expense (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseTables</Role>
      <ShortName>Stock-Based Compensation Expense (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/StockBasedCompensationExpense</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>9954482 - Disclosure - Weighted-Average Shares (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageSharesTables</Role>
      <ShortName>Weighted-Average Shares (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.cognex.com/role/WeightedAverageShares</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>9954484 - Disclosure - Fair Value Measurements (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/FairValueMeasurementsDetails</Role>
      <ShortName>Fair Value Measurements (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/FairValueMeasurementsTables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>9954485 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>9954486 - Disclosure - Cash, Cash Equivalents, and Investments - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>9954487 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>9954488 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>9954489 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>9954490 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails</Role>
      <ShortName>Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>9954491 - Disclosure - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/InventoriesDetails</Role>
      <ShortName>Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/InventoriesTables</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>9954492 - Disclosure - Leases - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/LeasesNarrativeDetails</Role>
      <ShortName>Leases - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>9954493 - Disclosure - Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails</Role>
      <ShortName>Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>9954494 - Disclosure - Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/GoodwillDetails</Role>
      <ShortName>Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/GoodwillTables</ParentRole>
      <Position>52</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>9954495 - Disclosure - Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IntangibleAssetsDetails</Role>
      <ShortName>Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/IntangibleAssetsTables</ParentRole>
      <Position>53</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>9954496 - Disclosure - Warranty Obligations (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WarrantyObligationsDetail</Role>
      <ShortName>Warranty Obligations (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/WarrantyObligationsTables</ParentRole>
      <Position>54</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>9954497 - Disclosure - Commitment and Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/CommitmentandContingenciesDetails</Role>
      <ShortName>Commitment and Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/CommitmentandContingencies</ParentRole>
      <Position>55</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>9954498 - Disclosure - Derivative Instruments - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails</Role>
      <ShortName>Derivative Instruments - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>9954499 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails</Role>
      <ShortName>Derivative Instruments - Outstanding Forward Contracts Table (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>9954500 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails</Role>
      <ShortName>Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>9954501 - Disclosure - Derivative Instruments - Offsetting Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails</Role>
      <ShortName>Derivative Instruments - Offsetting Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>9954502 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails</Role>
      <ShortName>Derivative Instruments - Derivative Instruments, Gain (Loss) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>9954503 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails</Role>
      <ShortName>Revenue Recognition - Revenue Disaggregated by Geography (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>9954504 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails</Role>
      <ShortName>Revenue Recognition - Revenue Disaggregated by Products and Services (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>9954505 - Disclosure - Revenue Recognition - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails</Role>
      <ShortName>Revenue Recognition - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>9954506 - Disclosure - Revenue Recognition - Schedule of Allowance for Credit Loss (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails</Role>
      <ShortName>Revenue Recognition - Schedule of Allowance for Credit Loss (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>9954507 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails</Role>
      <ShortName>Revenue Recognition - Deferred Revenue Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>9954508 - Disclosure - Stock-Based Compensation Expense - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>66</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>9954509 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>67</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>9954510 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>68</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>9954511 - Disclosure - Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>69</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>9954512 - Disclosure - Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>70</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>9954513 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails</Role>
      <ShortName>Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>71</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>9954514 - Disclosure - Stock Repurchase Program (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/StockRepurchaseProgramDetails</Role>
      <ShortName>Stock Repurchase Program (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/StockRepurchaseProgram</ParentRole>
      <Position>72</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>9954515 - Disclosure - Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/IncomeTaxesDetails</Role>
      <ShortName>Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/IncomeTaxes</ParentRole>
      <Position>73</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>9954516 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails</Role>
      <ShortName>Weighted-Average Shares - Calculation of Weighted-Average Shares (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>74</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>9954517 - Disclosure - Weighted-Average Shares - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails</Role>
      <ShortName>Weighted-Average Shares - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>75</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>9954518 - Disclosure - Business Combinations (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/BusinessCombinationsDetails</Role>
      <ShortName>Business Combinations (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/BusinessCombinations</ParentRole>
      <Position>76</Position>
    </Report>
    <Report instance="cgnx-20240331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>9954519 - Disclosure - Subsequent Events (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.cognex.com/role/SubsequentEventsDetails</Role>
      <ShortName>Subsequent Events (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.cognex.com/role/SubsequentEvents</ParentRole>
      <Position>77</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 4 fact(s) appearing in ix:hidden were eligible for transformation: dei:DocumentPeriodEndDate, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 -  cgnx-20240331.htm 4</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="cgnx-20240331.htm">cgnx-20240331.htm</File>
    <File>cgnx-20240331.xsd</File>
    <File>cgnx-20240331_cal.xml</File>
    <File>cgnx-20240331_def.xml</File>
    <File>cgnx-20240331_lab.xml</File>
    <File>cgnx-20240331_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="799">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
    <BaseTaxonomy items="2">http://xbrl.sec.gov/ecd/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>105
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "cgnx-20240331.htm": {
   "nsprefix": "cgnx",
   "nsuri": "http://www.cognex.com/20240331",
   "dts": {
    "inline": {
     "local": [
      "cgnx-20240331.htm"
     ]
    },
    "schema": {
     "local": [
      "cgnx-20240331.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-20240331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "cgnx-20240331_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "cgnx-20240331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cgnx-20240331_pre.xml"
     ]
    }
   },
   "keyStandard": 304,
   "keyCustom": 35,
   "axisStandard": 22,
   "axisCustom": 0,
   "memberStandard": 50,
   "memberCustom": 15,
   "hidden": {
    "total": 9,
    "http://xbrl.sec.gov/dei/2023": 6,
    "http://fasb.org/us-gaap/2023": 3
   },
   "contextCount": 173,
   "entityCount": 1,
   "segmentCount": 67,
   "elementCount": 641,
   "unitCount": 16,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 799,
    "http://xbrl.sec.gov/dei/2023": 29,
    "http://xbrl.sec.gov/ecd/2023": 2
   },
   "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-20240331.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-20240331.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-1",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.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-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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "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-20240331.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-1",
      "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-20240331.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",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-19",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-19",
      "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-20240331.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-1",
      "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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-20240331.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-3",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-3",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.cognex.com/role/BusinessCombinations",
     "longName": "0000026 - Disclosure - Business Combinations",
     "shortName": "Business Combinations",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:BusinessCombinationDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.cognex.com/role/SubsequentEvents",
     "longName": "0000027 - Disclosure - Subsequent Events",
     "shortName": "Subsequent Events",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "27",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "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": "28",
     "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R29": {
     "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": "29",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "ecd:NonRule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "ecd:NonRule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "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": "30",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "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": "31",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "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": "32",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.cognex.com/role/InventoriesTables",
     "longName": "9954474 - Disclosure - Inventories (Tables)",
     "shortName": "Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.cognex.com/role/LeasesTables",
     "longName": "9954475 - Disclosure - Leases (Tables)",
     "shortName": "Leases (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "34",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.cognex.com/role/GoodwillTables",
     "longName": "9954476 - Disclosure - Goodwill (Tables)",
     "shortName": "Goodwill (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "35",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "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": "36",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "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": "37",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "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": "38",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "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": "39",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "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": "40",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R41": {
     "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": "41",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "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": "42",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:AvailableForSaleSecuritiesDebtSecurities",
      "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-31",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R43": {
     "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": "43",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "cgnx:CashCashEquivalentsShortTermAndLongTermInvestments",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R44": {
     "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": "44",
     "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "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": "45",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R46": {
     "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": "46",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.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",
       "div",
       "us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "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": "47",
     "firstAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R48": {
     "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": "48",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://www.cognex.com/role/InventoriesDetails",
     "longName": "9954491 - Disclosure - Inventories (Details)",
     "shortName": "Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap:InventoryRawMaterialsNetOfReserves",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.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",
       "ix:continuation",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "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": "50",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:OperatingLeaseCost",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:OperatingLeaseCost",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R51": {
     "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": "51",
     "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-20240331.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-20240331.htm",
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.cognex.com/role/GoodwillDetails",
     "longName": "9954494 - Disclosure - Goodwill (Details)",
     "shortName": "Goodwill (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:Goodwill",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.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",
       "ix:continuation",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "unique": true
     }
    },
    "R53": {
     "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": "53",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "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": "54",
     "firstAnchor": {
      "contextRef": "c-4",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "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": "55",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "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": "56",
     "firstAnchor": {
      "contextRef": "c-97",
      "name": "us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-97",
      "name": "us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R57": {
     "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": "57",
     "firstAnchor": {
      "contextRef": "c-110",
      "name": "us-gaap:DerivativeAssetNotionalAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "cgnx:OutstandingForwardContractsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-110",
      "name": "us-gaap:DerivativeAssetNotionalAmount",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "cgnx:OutstandingForwardContractsTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R58": {
     "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": "58",
     "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-116",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R59": {
     "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": "59",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R60": {
     "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": "60",
     "firstAnchor": {
      "contextRef": "c-97",
      "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R61": {
     "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": "61",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-119",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R62": {
     "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": "62",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-127",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R63": {
     "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": "63",
     "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-20240331.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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R64": {
     "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": "64",
     "firstAnchor": {
      "contextRef": "c-4",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R65": {
     "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": "65",
     "firstAnchor": {
      "contextRef": "c-4",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R66": {
     "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": "66",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ProceedsFromStockOptionsExercised",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ProceedsFromStockOptionsExercised",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R67": {
     "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": "67",
     "firstAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-4",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R68": {
     "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": "68",
     "firstAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R69": {
     "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": "69",
     "firstAnchor": {
      "contextRef": "c-142",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-142",
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R70": {
     "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": "70",
     "firstAnchor": {
      "contextRef": "c-146",
      "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-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-146",
      "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-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R71": {
     "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": "71",
     "firstAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-149",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R72": {
     "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": "72",
     "firstAnchor": {
      "contextRef": "c-155",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-155",
      "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R73": {
     "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": "73",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R74": {
     "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": "74",
     "firstAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "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-20240331.htm",
      "unique": true
     }
    },
    "R75": {
     "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": "75",
     "firstAnchor": {
      "contextRef": "c-164",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-164",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R76": {
     "role": "http://www.cognex.com/role/BusinessCombinationsDetails",
     "longName": "9954518 - Disclosure - Business Combinations (Details)",
     "shortName": "Business Combinations (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "76",
     "firstAnchor": {
      "contextRef": "c-170",
      "name": "cgnx:BusinessCombinationEnterpriseValue",
      "unitRef": "jpy",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-9",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-170",
      "name": "cgnx:BusinessCombinationEnterpriseValue",
      "unitRef": "jpy",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-9",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    },
    "R77": {
     "role": "http://www.cognex.com/role/SubsequentEventsDetails",
     "longName": "9954519 - Disclosure - Subsequent Events (Details)",
     "shortName": "Subsequent Events (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "77",
     "firstAnchor": {
      "contextRef": "c-173",
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "unitRef": "usdPerShare",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-173",
      "name": "us-gaap:CommonStockDividendsPerShareDeclared",
      "unitRef": "usdPerShare",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "cgnx-20240331.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "cgnx_A27000SquareFootPremisesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_A88000SquareFootPremisesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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_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": [
      "r30",
      "r726"
     ]
    },
    "cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r848"
     ]
    },
    "cgnx_AccountsReceivableAllowanceForCreditLossWriteoffRecovery": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "AccountsReceivableAllowanceForCreditLossWriteoffRecovery",
     "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 (Recovery)",
        "documentation": "Accounts Receivable, Allowance for Credit Loss, Writeoff (Recovery)"
       }
      }
     },
     "auth_ref": []
    },
    "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 $1,339 and $583 in 2024 and 2023, 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": [
      "r237",
      "r238"
     ]
    },
    "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_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": [
      "r85",
      "r86",
      "r125",
      "r132",
      "r545"
     ]
    },
    "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": [
      "r85",
      "r132"
     ]
    },
    "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": [
      "r32"
     ]
    },
    "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": [
      "r37",
      "r38",
      "r100",
      "r159",
      "r549",
      "r571",
      "r574"
     ]
    },
    "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",
      "r20",
      "r38",
      "r441",
      "r444",
      "r493",
      "r567",
      "r568",
      "r829",
      "r830",
      "r831",
      "r834",
      "r835",
      "r836"
     ]
    },
    "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": [
      "r777"
     ]
    },
    "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": [
      "r90"
     ]
    },
    "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": [
      "r406",
      "r407",
      "r408",
      "r579",
      "r834",
      "r835",
      "r836",
      "r903",
      "r922"
     ]
    },
    "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": [
      "r783"
     ]
    },
    "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": [
      "r783"
     ]
    },
    "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": [
      "r783"
     ]
    },
    "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": [
      "r783"
     ]
    },
    "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": [
      "r60",
      "r61",
      "r376"
     ]
    },
    "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": []
    },
    "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": [
      "r748",
      "r759",
      "r769",
      "r794"
     ]
    },
    "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": [
      "r751",
      "r762",
      "r772",
      "r797"
     ]
    },
    "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": [
      "r783"
     ]
    },
    "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": []
    },
    "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": [
      "r790"
     ]
    },
    "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": [
      "r755",
      "r763",
      "r773",
      "r790",
      "r798",
      "r802",
      "r810"
     ]
    },
    "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": [
      "r808"
     ]
    },
    "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": [
      "r404",
      "r409"
     ]
    },
    "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, 2023",
        "periodEndLabel": "Balance as of March 31, 2024",
        "label": "Accounts Receivable, Allowance for Credit Loss",
        "documentation": "Amount of allowance for credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r160",
      "r239",
      "r278",
      "r281",
      "r283",
      "r918"
     ]
    },
    "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": [
      "r160",
      "r239",
      "r278"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r925",
      "r926",
      "r927",
      "r928"
     ]
    },
    "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": 12.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": [
      "r12",
      "r47",
      "r50"
     ]
    },
    "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": [
      "r216"
     ]
    },
    "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": [
      "r45"
     ]
    },
    "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": [
      "r45"
     ]
    },
    "cgnx_ApplicationSpecificCustomerSolutionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_AsiaExcludingChinaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r717",
      "r840",
      "r841",
      "r842"
     ]
    },
    "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": [
      "r131",
      "r158",
      "r187",
      "r221",
      "r227",
      "r231",
      "r273",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r434",
      "r436",
      "r464",
      "r544",
      "r614",
      "r726",
      "r739",
      "r867",
      "r868",
      "r908"
     ]
    },
    "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_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": [
      "r151",
      "r162",
      "r187",
      "r273",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r434",
      "r436",
      "r464",
      "r726",
      "r867",
      "r868",
      "r908"
     ]
    },
    "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_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_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": [
      "r245"
     ]
    },
    "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": [
      "r246"
     ]
    },
    "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": [
      "r242",
      "r287",
      "r543"
     ]
    },
    "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r249",
      "r541"
     ]
    },
    "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": [
      "r243",
      "r287",
      "r537",
      "r838"
     ]
    },
    "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 $141,876 and $132,799 in 2024 and 2023, respectively, allowance for credit losses of $0 in 2024 and 2023",
        "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": [
      "r240",
      "r287"
     ]
    },
    "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": [
      "r154",
      "r240",
      "r287"
     ]
    },
    "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": [
      "r805"
     ]
    },
    "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": [
      "r806"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "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": [
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403"
     ]
    },
    "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": [
      "r804"
     ]
    },
    "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": [
      "r803"
     ]
    },
    "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": [
      "r802"
     ]
    },
    "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": [
      "r802"
     ]
    },
    "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"
     ],
     "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": []
    },
    "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"
     ],
     "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": [
      "r70",
      "r75"
     ]
    },
    "us-gaap_BusinessAcquisitionAcquireeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionAcquireeDomain",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "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": [
      "r431",
      "r720",
      "r721"
     ]
    },
    "us-gaap_BusinessAcquisitionAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionAxis",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "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": [
      "r63",
      "r64",
      "r431",
      "r720",
      "r721"
     ]
    },
    "us-gaap_BusinessAcquisitionLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessAcquisitionLineItems",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business Acquisition [Line Items]",
        "label": "Business Acquisition [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": [
      "r431"
     ]
    },
    "us-gaap_BusinessCombinationAndAssetAcquisitionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationAndAssetAcquisitionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Combination and Asset Acquisition [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_BusinessCombinationConsiderationTransferred1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationConsiderationTransferred1",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business Combination, Consideration Transferred",
        "label": "Business Combination, Consideration Transferred",
        "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r2",
      "r16"
     ]
    },
    "us-gaap_BusinessCombinationDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BusinessCombinationDisclosureTextBlock",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business Combinations",
        "label": "Business Combination Disclosure [Text Block]",
        "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)."
       }
      }
     },
     "auth_ref": [
      "r127",
      "r432"
     ]
    },
    "cgnx_BusinessCombinationEnterpriseValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "BusinessCombinationEnterpriseValue",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business Combination, Enterprise Value",
        "label": "Business Combination, Enterprise Value",
        "documentation": "Business Combination, Enterprise Value"
       }
      }
     },
     "auth_ref": []
    },
    "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": []
    },
    "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": []
    },
    "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": []
    },
    "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_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": [
      "r850"
     ]
    },
    "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": []
    },
    "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",
        "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": [
      "r43",
      "r153",
      "r694"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAxis",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails",
      "http://www.cognex.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and Cash Equivalents [Axis]",
        "label": "Cash and Cash Equivalents [Axis]",
        "documentation": "Information by type of cash and cash equivalent balance."
       }
      }
     },
     "auth_ref": [
      "r153"
     ]
    },
    "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": [
      "r153",
      "r548"
     ]
    },
    "us-gaap_CashAndCashEquivalentsFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsFairValueDisclosure",
     "crdr": "debit",
     "presentation": [
      "http://www.cognex.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents",
        "label": "Cash and Cash Equivalents, Fair Value Disclosure",
        "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_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_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": [
      "r43",
      "r110",
      "r184"
     ]
    },
    "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"
     ]
    },
    "cgnx_CashCashEquivalentsShortTermAndLongTermInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_CashMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashMember",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash",
        "label": "Cash [Member]",
        "documentation": "Currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits."
       }
      }
     },
     "auth_ref": [
      "r153"
     ]
    },
    "cgnx_CertificateOfDepositFairValueDisclosure": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "CertificateOfDepositFairValueDisclosure",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Certificate of deposit",
        "label": "Certificate Of Deposit, Fair Value Disclosure",
        "documentation": "Certificate Of Deposit, Fair Value Disclosure"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CertificatesOfDepositMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CertificatesOfDepositMember",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Certificate of deposit",
        "label": "Certificates of Deposit [Member]",
        "documentation": "Short to medium-term investment available at banks and savings and loan institutions where a customer agrees to lend money to the institution for a certain amount of time and is paid a predetermined rate of interest. Certificates of deposit (CD) are typically Federal Deposit Insurance Corporation (FDIC) insured."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r733",
      "r734",
      "r735",
      "r736"
     ]
    },
    "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": [
      "r781"
     ]
    },
    "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_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": [
      "r52",
      "r53",
      "r54",
      "r55"
     ]
    },
    "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": [
      "r782"
     ]
    },
    "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": [
      "r782"
     ]
    },
    "cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r35",
      "r83",
      "r547",
      "r601"
     ]
    },
    "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": []
    },
    "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",
      "r309",
      "r310",
      "r678",
      "r863"
     ]
    },
    "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"
     ]
    },
    "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_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": [
      "r729",
      "r730",
      "r731",
      "r733",
      "r734",
      "r735",
      "r736",
      "r834",
      "r835",
      "r903",
      "r920",
      "r922"
     ]
    },
    "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": [
      "r89"
     ]
    },
    "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": [
      "r89",
      "r602"
     ]
    },
    "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": [
      "r89"
     ]
    },
    "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": [
      "r21",
      "r89",
      "r602",
      "r620",
      "r922",
      "r923"
     ]
    },
    "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 2024 and 2023, respectively; issued and outstanding: 171,662 and 171,599 shares in 2024 and 2023, 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": [
      "r89",
      "r602"
     ]
    },
    "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": [
      "r787"
     ]
    },
    "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": [
      "r786"
     ]
    },
    "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": [
      "r788"
     ]
    },
    "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": [
      "r785"
     ]
    },
    "cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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 (loss)",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r39",
      "r173",
      "r175",
      "r179",
      "r538",
      "r556"
     ]
    },
    "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": []
    },
    "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": [
      "r353",
      "r354",
      "r365"
     ]
    },
    "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": []
    },
    "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": [
      "r104",
      "r530"
     ]
    },
    "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": [
      "r817"
     ]
    },
    "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": []
    },
    "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": [
      "r905"
     ]
    },
    "cgnx_CurrencytranslationadjustmentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_CurrentAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": []
    },
    "cgnx_CustomerContractsAndRelationshipsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r244",
      "r287",
      "r294",
      "r295"
     ]
    },
    "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": [
      "r287"
     ]
    },
    "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": [
      "r287"
     ]
    },
    "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": [
      "r849"
     ]
    },
    "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": [
      "r287",
      "r839"
     ]
    },
    "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": [
      "r287",
      "r839"
     ]
    },
    "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": [
      "r140",
      "r291",
      "r705"
     ]
    },
    "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": [
      "r140",
      "r291"
     ]
    },
    "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": [
      "r140",
      "r291",
      "r705"
     ]
    },
    "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": [
      "r140",
      "r291"
     ]
    },
    "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": [
      "r271"
     ]
    },
    "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": [
      "r271"
     ]
    },
    "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": [
      "r138",
      "r289",
      "r705"
     ]
    },
    "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": [
      "r139",
      "r290"
     ]
    },
    "cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r412",
      "r413"
     ]
    },
    "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": [
      "r412",
      "r413",
      "r546"
     ]
    },
    "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, 2023",
        "periodEndLabel": "Balance as of March 31, 2024",
        "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": [
      "r826"
     ]
    },
    "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": []
    },
    "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_DeferredRevenueForeignCurrencyExchangeAdjustment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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_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_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": 10.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": [
      "r12",
      "r51"
     ]
    },
    "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": [
      "r13",
      "r26"
     ]
    },
    "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": [
      "r655",
      "r658",
      "r661",
      "r664",
      "r899",
      "r900",
      "r901"
     ]
    },
    "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": [
      "r164",
      "r166",
      "r463",
      "r581",
      "r582",
      "r583",
      "r585",
      "r586",
      "r588",
      "r589",
      "r590",
      "r592",
      "r593",
      "r608",
      "r609",
      "r655",
      "r659",
      "r662",
      "r663",
      "r665",
      "r666",
      "r699",
      "r731",
      "r921"
     ]
    },
    "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": [
      "r590",
      "r593",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r615",
      "r616",
      "r617",
      "r618",
      "r628",
      "r629",
      "r630",
      "r631",
      "r634",
      "r635",
      "r636",
      "r637",
      "r655",
      "r656",
      "r662",
      "r665",
      "r729",
      "r731"
     ]
    },
    "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": [
      "r28",
      "r73",
      "r99",
      "r163",
      "r699"
     ]
    },
    "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": [
      "r28",
      "r73",
      "r99",
      "r163",
      "r699"
     ]
    },
    "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": [
      "r902"
     ]
    },
    "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": [
      "r71",
      "r74",
      "r76",
      "r77",
      "r590",
      "r593",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r615",
      "r616",
      "r617",
      "r618",
      "r628",
      "r629",
      "r630",
      "r631",
      "r634",
      "r635",
      "r636",
      "r637",
      "r655",
      "r656",
      "r662",
      "r665",
      "r699",
      "r729",
      "r731"
     ]
    },
    "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_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": [
      "r130",
      "r439",
      "r447"
     ]
    },
    "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": []
    },
    "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_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": [
      "r22",
      "r71",
      "r76",
      "r77",
      "r80",
      "r81",
      "r438"
     ]
    },
    "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": [
      "r438"
     ]
    },
    "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": [
      "r164",
      "r166",
      "r463",
      "r581",
      "r582",
      "r583",
      "r585",
      "r588",
      "r589",
      "r590",
      "r592",
      "r593",
      "r615",
      "r617",
      "r618",
      "r656",
      "r657",
      "r659",
      "r662",
      "r663",
      "r665",
      "r666",
      "r699",
      "r921"
     ]
    },
    "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": [
      "r13",
      "r26"
     ]
    },
    "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": [
      "r447"
     ]
    },
    "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": [
      "r900",
      "r901"
     ]
    },
    "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": [
      "r22",
      "r66",
      "r67",
      "r68",
      "r69",
      "r72",
      "r76",
      "r78",
      "r79",
      "r81",
      "r447"
     ]
    },
    "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": []
    },
    "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": [
      "r128"
     ]
    },
    "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": [
      "r364",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716"
     ]
    },
    "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": [
      "r364",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716"
     ]
    },
    "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": []
    },
    "cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r9",
      "r121"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r743"
     ]
    },
    "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": [
      "r776"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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_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_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": [
      "r180",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r209",
      "r211",
      "r213",
      "r214",
      "r215",
      "r219",
      "r451",
      "r452",
      "r539",
      "r557",
      "r701"
     ]
    },
    "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": [
      "r180",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r211",
      "r213",
      "r214",
      "r215",
      "r219",
      "r451",
      "r452",
      "r539",
      "r557",
      "r701"
     ]
    },
    "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": []
    },
    "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": [
      "r208",
      "r216",
      "r217",
      "r218"
     ]
    },
    "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": [
      "r472"
     ]
    },
    "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": [
      "r415"
     ]
    },
    "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": [
      "r188",
      "r415",
      "r427"
     ]
    },
    "cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r816",
      "r898"
     ]
    },
    "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_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": [
      "r405"
     ]
    },
    "cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r404"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-Based Payment Arrangement, Exercise of Option, Tax Benefit",
        "label": "Share-Based Payment Arrangement, Exercise of Option, Tax Benefit",
        "documentation": "Amount of tax benefit from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r142"
     ]
    },
    "cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": []
    },
    "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": []
    },
    "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": []
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r741"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r741"
     ]
    },
    "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": []
    },
    "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": [
      "r741"
     ]
    },
    "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": []
    },
    "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": [
      "r815"
     ]
    },
    "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": [
      "r741"
     ]
    },
    "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": [
      "r741"
     ]
    },
    "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": [
      "r741"
     ]
    },
    "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": [
      "r741"
     ]
    },
    "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_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity [Abstract]",
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "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_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": [
      "r21",
      "r148",
      "r176",
      "r177",
      "r178",
      "r189",
      "r190",
      "r191",
      "r195",
      "r203",
      "r205",
      "r220",
      "r274",
      "r277",
      "r352",
      "r406",
      "r407",
      "r408",
      "r420",
      "r421",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r446",
      "r450",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r493",
      "r567",
      "r568",
      "r569",
      "r579",
      "r641"
     ]
    },
    "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": [
      "r784"
     ]
    },
    "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": [
      "r748",
      "r759",
      "r769",
      "r794"
     ]
    },
    "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": [
      "r745",
      "r756",
      "r766",
      "r791"
     ]
    },
    "cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO": {
     "xbrltype": "pureItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r925",
      "r926",
      "r927",
      "r928"
     ]
    },
    "cgnx_ExcessAndObsoleteInventoryCharges": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "ExcessAndObsoleteInventoryCharges",
     "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": "Excess and obsolete inventory charges",
        "label": "Excess and Obsolete Inventory Charges",
        "documentation": "Excess and Obsolete Inventory Charges"
       }
      }
     },
     "auth_ref": []
    },
    "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": [
      "r790"
     ]
    },
    "cgnx_ExpirationPeriodOfStockOptionPlan": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_FairValueAdjustmentOnAcquiredInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "FairValueAdjustmentOnAcquiredInventories",
     "crdr": "debit",
     "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": {
        "terseLabel": "Fair Value Adjustment on Acquired Inventories",
        "label": "Fair Value Adjustment on Acquired Inventories",
        "documentation": "Fair Value Adjustment on Acquired Inventories"
       }
      }
     },
     "auth_ref": []
    },
    "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": [
      "r457",
      "r458",
      "r461"
     ]
    },
    "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": [
      "r457",
      "r458",
      "r461"
     ]
    },
    "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": [
      "r336",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r458",
      "r501",
      "r502",
      "r503",
      "r707",
      "r708",
      "r717",
      "r718",
      "r719"
     ]
    },
    "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": [
      "r457",
      "r458",
      "r459",
      "r460",
      "r462"
     ]
    },
    "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": []
    },
    "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": [
      "r456"
     ]
    },
    "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": [
      "r336",
      "r368",
      "r373",
      "r458",
      "r501",
      "r717",
      "r718",
      "r719"
     ]
    },
    "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": [
      "r336",
      "r368",
      "r373",
      "r458",
      "r502",
      "r707",
      "r708",
      "r717",
      "r718",
      "r719"
     ]
    },
    "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": [
      "r336",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r458",
      "r503",
      "r707",
      "r708",
      "r717",
      "r718",
      "r719"
     ]
    },
    "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_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": [
      "r336",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r501",
      "r502",
      "r503",
      "r707",
      "r708",
      "r717",
      "r718",
      "r719"
     ]
    },
    "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": [
      "r456",
      "r462"
     ]
    },
    "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": [
      "r70",
      "r72",
      "r80"
     ]
    },
    "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": [
      "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",
      "r269",
      "r270",
      "r279",
      "r280",
      "r284",
      "r285",
      "r286",
      "r288",
      "r292",
      "r293",
      "r337",
      "r350",
      "r447",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r555",
      "r705",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r843",
      "r844",
      "r845",
      "r846"
     ]
    },
    "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": [
      "r156",
      "r305"
     ]
    },
    "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_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": "2025",
        "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_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 2024",
        "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_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": "2029",
        "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_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": "2028",
        "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_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": "2027",
        "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"
     ]
    },
    "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": "2026",
        "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"
     ]
    },
    "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": [
      "r303",
      "r304",
      "r305",
      "r306",
      "r531",
      "r535"
     ]
    },
    "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_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",
      "r535"
     ]
    },
    "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": [
      "r531"
     ]
    },
    "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": [
      "r48",
      "r49"
     ]
    },
    "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",
      "r531"
     ]
    },
    "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_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_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": []
    },
    "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": [
      "r468",
      "r469",
      "r470",
      "r471",
      "r638"
     ]
    },
    "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": [
      "r608",
      "r612",
      "r617",
      "r630",
      "r636",
      "r660",
      "r661",
      "r662",
      "r731"
     ]
    },
    "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": [
      "r752",
      "r763",
      "r773",
      "r798"
     ]
    },
    "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": [
      "r752",
      "r763",
      "r773",
      "r798"
     ]
    },
    "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": [
      "r752",
      "r763",
      "r773",
      "r798"
     ]
    },
    "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": [
      "r752",
      "r763",
      "r773",
      "r798"
     ]
    },
    "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": [
      "r752",
      "r763",
      "r773",
      "r798"
     ]
    },
    "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_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": [
      "r12"
     ]
    },
    "cgnx_GeneralStockOptionPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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, 2023",
        "periodEndLabel": "Balance as of March 31, 2024",
        "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": [
      "r155",
      "r298",
      "r536",
      "r706",
      "r726",
      "r852",
      "r859"
     ]
    },
    "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": []
    },
    "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": [
      "r297",
      "r299",
      "r301",
      "r706"
     ]
    },
    "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": [
      "r300"
     ]
    },
    "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_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": [
      "r103",
      "r187",
      "r221",
      "r226",
      "r230",
      "r232",
      "r273",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r464",
      "r703",
      "r867"
     ]
    },
    "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": []
    },
    "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": [
      "r22",
      "r438"
     ]
    },
    "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": [
      "r22"
     ]
    },
    "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",
      "r101",
      "r135",
      "r221",
      "r226",
      "r230",
      "r232",
      "r540",
      "r553",
      "r703"
     ]
    },
    "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_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": [
      "r307",
      "r308",
      "r625"
     ]
    },
    "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": [
      "r308",
      "r625"
     ]
    },
    "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": [
      "r17"
     ]
    },
    "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": []
    },
    "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": [
      "r17"
     ]
    },
    "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_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": []
    },
    "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": [
      "r18",
      "r62",
      "r125",
      "r126"
     ]
    },
    "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_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": [
      "r188",
      "r411",
      "r416",
      "r417",
      "r419",
      "r425",
      "r428",
      "r429",
      "r430",
      "r578"
     ]
    },
    "cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r141",
      "r145",
      "r204",
      "r205",
      "r224",
      "r414",
      "r426",
      "r559"
     ]
    },
    "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": [
      "r898"
     ]
    },
    "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": [
      "r898"
     ]
    },
    "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": [
      "r898"
     ]
    },
    "us-gaap_IncomeTaxReconciliationTaxContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxReconciliationTaxContingencies",
     "crdr": "debit",
     "presentation": [
      "http://www.cognex.com/role/IncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Increase in tax expense, tax reserves",
        "label": "Effective Income Tax Rate Reconciliation, Tax Contingency, 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 income tax contingencies. Including, but not limited to, domestic tax contingency, foreign tax contingency, state and local tax contingency, and other contingencies."
       }
      }
     },
     "auth_ref": [
      "r898"
     ]
    },
    "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": [
      "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": [
      "r11"
     ]
    },
    "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": 7.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": [
      "r11"
     ]
    },
    "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": [
      "r11"
     ]
    },
    "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": 14.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": [
      "r832"
     ]
    },
    "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": 13.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": [
      "r529",
      "r832"
     ]
    },
    "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": [
      "r11"
     ]
    },
    "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": 9.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": [
      "r690"
     ]
    },
    "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": 17.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": [
      "r11"
     ]
    },
    "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": 15.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": [
      "r11"
     ]
    },
    "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": 8.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": [
      "r11"
     ]
    },
    "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": []
    },
    "cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r755",
      "r763",
      "r773",
      "r790",
      "r798",
      "r802",
      "r810"
     ]
    },
    "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": [
      "r808"
     ]
    },
    "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": [
      "r744",
      "r814"
     ]
    },
    "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": [
      "r744",
      "r814"
     ]
    },
    "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": [
      "r744",
      "r814"
     ]
    },
    "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": [
      "r302"
     ]
    },
    "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": [
      "r827",
      "r924"
     ]
    },
    "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_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": [
      "r296"
     ]
    },
    "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",
      "r696"
     ]
    },
    "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": [
      "r161",
      "r695",
      "r726"
     ]
    },
    "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",
      "r698"
     ]
    },
    "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",
      "r697"
     ]
    },
    "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": [
      "r106"
     ]
    },
    "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": [
      "r582",
      "r584",
      "r585",
      "r588",
      "r591",
      "r646",
      "r648",
      "r650",
      "r653",
      "r654",
      "r667",
      "r668",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r731"
     ]
    },
    "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": [
      "r582",
      "r584",
      "r585",
      "r588",
      "r591",
      "r646",
      "r648",
      "r650",
      "r653",
      "r654",
      "r667",
      "r668",
      "r670",
      "r671",
      "r672",
      "r673",
      "r674",
      "r731"
     ]
    },
    "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": []
    },
    "country_JP": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "localname": "JP",
     "presentation": [
      "http://www.cognex.com/role/IncomeTaxesDetails",
      "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "JAPAN",
        "label": "JAPAN"
       }
      }
     },
     "auth_ref": []
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r487",
      "r725"
     ]
    },
    "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_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": [
      "r486"
     ]
    },
    "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": [
      "r486"
     ]
    },
    "cgnx_LesseeOperatingLeaseComponents": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r907"
     ]
    },
    "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": [
      "r492"
     ]
    },
    "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": [
      "r492"
     ]
    },
    "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": "2025",
        "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": [
      "r492"
     ]
    },
    "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": "2029",
        "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": [
      "r492"
     ]
    },
    "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": "2028",
        "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": [
      "r492"
     ]
    },
    "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": "2027",
        "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": [
      "r492"
     ]
    },
    "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": "2026",
        "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": [
      "r492"
     ]
    },
    "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 2024",
        "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": [
      "r907"
     ]
    },
    "cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r906"
     ]
    },
    "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": [
      "r482"
     ]
    },
    "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": [
      "r31",
      "r187",
      "r273",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r435",
      "r436",
      "r437",
      "r464",
      "r600",
      "r702",
      "r739",
      "r867",
      "r908",
      "r909"
     ]
    },
    "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": [
      "r94",
      "r134",
      "r551",
      "r726",
      "r833",
      "r847",
      "r904"
     ]
    },
    "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": []
    },
    "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": [
      "r33",
      "r152",
      "r187",
      "r273",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r435",
      "r436",
      "r437",
      "r464",
      "r726",
      "r867",
      "r908",
      "r909"
     ]
    },
    "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": []
    },
    "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": []
    },
    "cgnx_LiabilityForUncertainTaxPositions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r34"
     ]
    },
    "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_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 $285,376 and $250,790 in 2024 and 2023, respectively, allowance for credit losses of $0 in 2024 and 2023",
        "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": [
      "r154"
     ]
    },
    "cgnx_LossGainFromCatastrophes": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": []
    },
    "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": [
      "r311",
      "r312",
      "r313",
      "r314",
      "r374",
      "r528",
      "r566",
      "r592",
      "r593",
      "r647",
      "r649",
      "r651",
      "r652",
      "r669",
      "r688",
      "r689",
      "r704",
      "r709",
      "r722",
      "r728",
      "r869",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915"
     ]
    },
    "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": []
    },
    "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": [
      "r782"
     ]
    },
    "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": [
      "r782"
     ]
    },
    "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": [
      "r311",
      "r312",
      "r313",
      "r314",
      "r374",
      "r528",
      "r566",
      "r592",
      "r593",
      "r647",
      "r649",
      "r651",
      "r652",
      "r669",
      "r688",
      "r689",
      "r704",
      "r709",
      "r722",
      "r728",
      "r869",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915"
     ]
    },
    "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": [
      "r801"
     ]
    },
    "us-gaap_MoneyMarketFundsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MoneyMarketFundsAtCarryingValue",
     "crdr": "debit",
     "presentation": [
      "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": []
    },
    "us-gaap_MoneyMarketFundsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MoneyMarketFundsMember",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Money market instruments",
        "label": "Money Market Funds [Member]",
        "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities."
       }
      }
     },
     "auth_ref": [
      "r871"
     ]
    },
    "cgnx_MoritexCorporationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "MoritexCorporationMember",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Moritex Corporation",
        "label": "Moritex Corporation [Member]",
        "documentation": "Moritex Corporation"
       }
      }
     },
     "auth_ref": []
    },
    "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_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": []
    },
    "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": [
      "r809"
     ]
    },
    "us-gaap_MunicipalBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MunicipalBondsMember",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails",
      "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": []
    },
    "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": [
      "r783"
     ]
    },
    "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": [
      "r183"
     ]
    },
    "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_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": [
      "r183"
     ]
    },
    "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_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"
     ]
    },
    "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": []
    },
    "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": 16.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": [
      "r102",
      "r112",
      "r136",
      "r150",
      "r171",
      "r174",
      "r178",
      "r187",
      "r194",
      "r198",
      "r199",
      "r200",
      "r201",
      "r204",
      "r205",
      "r212",
      "r221",
      "r226",
      "r230",
      "r232",
      "r273",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r452",
      "r464",
      "r554",
      "r622",
      "r639",
      "r640",
      "r703",
      "r737",
      "r867"
     ]
    },
    "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_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": [
      "r143",
      "r144",
      "r146",
      "r149",
      "r192",
      "r193",
      "r196",
      "r197",
      "r206",
      "r207",
      "r275",
      "r276",
      "r422",
      "r423",
      "r424",
      "r445",
      "r449",
      "r453",
      "r454",
      "r455",
      "r465",
      "r466",
      "r467",
      "r480",
      "r481",
      "r494",
      "r532",
      "r533",
      "r534",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574"
     ]
    },
    "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": []
    },
    "cgnx_NonCurrentAssetsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r782"
     ]
    },
    "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": [
      "r752",
      "r763",
      "r773",
      "r790",
      "r798"
     ]
    },
    "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": [
      "r780"
     ]
    },
    "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": [
      "r779"
     ]
    },
    "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": [
      "r790"
     ]
    },
    "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": [
      "r809"
     ]
    },
    "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": [
      "r809"
     ]
    },
    "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": [
      "r22"
     ]
    },
    "cgnx_NumberOfGroupsWithinEmployeePopulation": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r98",
      "r165"
     ]
    },
    "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": [
      "r221",
      "r226",
      "r230",
      "r232",
      "r703"
     ]
    },
    "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": [
      "r488",
      "r725"
     ]
    },
    "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": [
      "r484"
     ]
    },
    "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": [
      "r484"
     ]
    },
    "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": [
      "r484"
     ]
    },
    "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": [
      "r485",
      "r489"
     ]
    },
    "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": [
      "r483"
     ]
    },
    "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": [
      "r491",
      "r725"
     ]
    },
    "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": [
      "r490",
      "r725"
     ]
    },
    "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_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": [
      "r157"
     ]
    },
    "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": [
      "r10",
      "r19",
      "r129"
     ]
    },
    "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": [
      "r10",
      "r19",
      "r129"
     ]
    },
    "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_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_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": [
      "r10",
      "r19",
      "r129",
      "r172",
      "r175"
     ]
    },
    "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": [
      "r8",
      "r100",
      "r170",
      "r272"
     ]
    },
    "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": [
      "r167",
      "r169",
      "r272"
     ]
    },
    "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",
      "r168"
     ]
    },
    "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": [
      "r70",
      "r80"
     ]
    },
    "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_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": [
      "r34"
     ]
    },
    "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": [
      "r107"
     ]
    },
    "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": [
      "r782"
     ]
    },
    "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": [
      "r750",
      "r761",
      "r771",
      "r796"
     ]
    },
    "cgnx_OutstandingForwardContractsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r753",
      "r764",
      "r774",
      "r799"
     ]
    },
    "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": [
      "r753",
      "r764",
      "r774",
      "r799"
     ]
    },
    "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": [
      "r778"
     ]
    },
    "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": [
      "r42"
     ]
    },
    "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": [
      "r42"
     ]
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Payment, Tax Withholding, Share-Based Payment Arrangement",
        "label": "Payment, Tax Withholding, Share-Based Payment Arrangement",
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r182"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireBusinessesGross",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "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": [
      "r41",
      "r433"
     ]
    },
    "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired",
     "crdr": "credit",
     "calculation": {
      "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Net payments related to business acquisitions (Note 17)",
        "label": "Payments to Acquire Businesses, Net of Cash Acquired",
        "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase."
       }
      }
     },
     "auth_ref": [
      "r41"
     ]
    },
    "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_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"
     ]
    },
    "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": [
      "r781"
     ]
    },
    "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": [
      "r781"
     ]
    },
    "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": [
      "r780"
     ]
    },
    "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": [
      "r790"
     ]
    },
    "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": [
      "r783"
     ]
    },
    "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": [
      "r779"
     ]
    },
    "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_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": [
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897"
     ]
    },
    "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": [
      "r872",
      "r873",
      "r874",
      "r875",
      "r876",
      "r877",
      "r878",
      "r879",
      "r880",
      "r881",
      "r882",
      "r883",
      "r884",
      "r885",
      "r886",
      "r887",
      "r888",
      "r889",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895",
      "r896",
      "r897"
     ]
    },
    "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": [
      "r88",
      "r339"
     ]
    },
    "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": [
      "r88",
      "r602"
     ]
    },
    "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": [
      "r88",
      "r339"
     ]
    },
    "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": [
      "r88",
      "r602",
      "r620",
      "r922",
      "r923"
     ]
    },
    "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 2024 and 2023, 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": [
      "r88",
      "r602"
     ]
    },
    "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": [
      "r828"
     ]
    },
    "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": [
      "r40"
     ]
    },
    "us-gaap_ProceedsFromStockOptionsExercised": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromStockOptionsExercised",
     "crdr": "debit",
     "presentation": [
      "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from Stock Options Exercised",
        "label": "Proceeds from Stock Options Exercised",
        "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r25"
     ]
    },
    "cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r233",
      "r530",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r691",
      "r710",
      "r727",
      "r818",
      "r864",
      "r865",
      "r870",
      "r919"
     ]
    },
    "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_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": [
      "r82",
      "r319",
      "r323",
      "r326"
     ]
    },
    "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": [
      "r324"
     ]
    },
    "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": [
      "r325"
     ]
    },
    "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": [
      "r315",
      "r316",
      "r317",
      "r318",
      "r320",
      "r321"
     ]
    },
    "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": [
      "r233",
      "r530",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r691",
      "r710",
      "r727",
      "r818",
      "r864",
      "r865",
      "r870",
      "r919"
     ]
    },
    "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": [
      "r14"
     ]
    },
    "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": [
      "r14",
      "r542",
      "r552",
      "r726"
     ]
    },
    "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_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": [
      "r181",
      "r282"
     ]
    },
    "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": [
      "r87",
      "r133"
     ]
    },
    "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": [
      "r778"
     ]
    },
    "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": [
      "r778"
     ]
    },
    "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": [
      "r311",
      "r312",
      "r313",
      "r314",
      "r367",
      "r374",
      "r400",
      "r401",
      "r402",
      "r504",
      "r528",
      "r566",
      "r592",
      "r593",
      "r647",
      "r649",
      "r651",
      "r652",
      "r669",
      "r688",
      "r689",
      "r704",
      "r709",
      "r722",
      "r728",
      "r731",
      "r862",
      "r869",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915"
     ]
    },
    "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": [
      "r311",
      "r312",
      "r313",
      "r314",
      "r367",
      "r374",
      "r400",
      "r401",
      "r402",
      "r504",
      "r528",
      "r566",
      "r592",
      "r593",
      "r647",
      "r649",
      "r651",
      "r652",
      "r669",
      "r688",
      "r689",
      "r704",
      "r709",
      "r722",
      "r728",
      "r731",
      "r862",
      "r869",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915"
     ]
    },
    "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": []
    },
    "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": [
      "r558"
     ]
    },
    "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": [
      "r745",
      "r756",
      "r766",
      "r791"
     ]
    },
    "cgnx_RepurchaseProgramMarch2020Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "cgnx_RepurchaseProgramMarch2022Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r84",
      "r410",
      "r916"
     ]
    },
    "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": []
    },
    "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": [
      "r746",
      "r757",
      "r767",
      "r792"
     ]
    },
    "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": [
      "r747",
      "r758",
      "r768",
      "r793"
     ]
    },
    "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": [
      "r754",
      "r765",
      "r775",
      "r800"
     ]
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails",
      "http://www.cognex.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and Cash Equivalents [Domain]",
        "label": "Cash and Cash Equivalents [Domain]",
        "documentation": "Type of cash and cash equivalent. Cash is currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r153"
     ]
    },
    "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": [
      "r45"
     ]
    },
    "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_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": [
      "r91",
      "r121",
      "r550",
      "r570",
      "r574",
      "r577",
      "r603",
      "r726"
     ]
    },
    "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": [
      "r148",
      "r189",
      "r190",
      "r191",
      "r195",
      "r203",
      "r205",
      "r274",
      "r277",
      "r406",
      "r407",
      "r408",
      "r420",
      "r421",
      "r440",
      "r442",
      "r443",
      "r446",
      "r450",
      "r567",
      "r569",
      "r579",
      "r922"
     ]
    },
    "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_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": []
    },
    "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",
      "http://www.cognex.com/role/WarrantyObligationsDetail"
     ],
     "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": [
      "r222",
      "r223",
      "r225",
      "r228",
      "r229",
      "r233",
      "r234",
      "r236",
      "r363",
      "r364",
      "r530"
     ]
    },
    "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": [
      "r147",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r366"
     ]
    },
    "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": [
      "r27"
     ]
    },
    "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": [
      "r809"
     ]
    },
    "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": [
      "r809"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252"
     ]
    },
    "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_ScheduleOfBusinessAcquisitionsByAcquisitionTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable",
     "presentation": [
      "http://www.cognex.com/role/BusinessCombinationsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "label": "Schedule of Business Acquisitions, by Acquisition [Table]",
        "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities."
       }
      }
     },
     "auth_ref": [
      "r63",
      "r64",
      "r431"
     ]
    },
    "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": []
    },
    "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": [
      "r71",
      "r76",
      "r438"
     ]
    },
    "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": [
      "r72"
     ]
    },
    "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": [
      "r59"
     ]
    },
    "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": [
      "r59"
     ]
    },
    "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": [
      "r46"
     ]
    },
    "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": [
      "r46"
     ]
    },
    "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": [
      "r457",
      "r458"
     ]
    },
    "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": [
      "r48",
      "r49",
      "r531"
     ]
    },
    "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": [
      "r48",
      "r49"
     ]
    },
    "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": [
      "r706",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861"
     ]
    },
    "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": [
      "r29",
      "r95",
      "r96",
      "r97"
     ]
    },
    "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": [
      "r58"
     ]
    },
    "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": [
      "r58"
     ]
    },
    "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": [
      "r322"
     ]
    },
    "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": [
      "r375",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403"
     ]
    },
    "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": [
      "r23",
      "r24",
      "r57"
     ]
    },
    "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"
     ]
    },
    "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": [
      "r137"
     ]
    },
    "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": [
      "r44"
     ]
    },
    "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": [
      "r49"
     ]
    },
    "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": [
      "r740"
     ]
    },
    "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": [
      "r742"
     ]
    },
    "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": [
      "r234",
      "r235",
      "r583",
      "r587",
      "r589",
      "r648",
      "r650",
      "r654",
      "r670",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r692",
      "r711",
      "r731",
      "r870",
      "r919"
     ]
    },
    "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": [
      "r105"
     ]
    },
    "cgnx_SellingGeneralAndAdministrativeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r723"
     ]
    },
    "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": [
      "r394"
     ]
    },
    "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": [
      "r394"
     ]
    },
    "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": [
      "r392"
     ]
    },
    "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": [
      "r392"
     ]
    },
    "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": [
      "r389",
      "r390"
     ]
    },
    "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_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": [
      "r389",
      "r390"
     ]
    },
    "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_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": [
      "r393"
     ]
    },
    "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": [
      "r393"
     ]
    },
    "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": [
      "r401"
     ]
    },
    "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": [
      "r400"
     ]
    },
    "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": [
      "r402"
     ]
    },
    "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": [
      "r375",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403"
     ]
    },
    "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_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": [
      "r724"
     ]
    },
    "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": [
      "r56"
     ]
    },
    "cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": []
    },
    "cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r383"
     ]
    },
    "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": [
      "r383"
     ]
    },
    "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": [
      "r878"
     ]
    },
    "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": [
      "r878"
     ]
    },
    "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": [
      "r879"
     ]
    },
    "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": [
      "r395"
     ]
    },
    "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": [
      "r56"
     ]
    },
    "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": [
      "r381",
      "r382"
     ]
    },
    "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_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": [
      "r381",
      "r382"
     ]
    },
    "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_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": [
      "r398"
     ]
    },
    "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": [
      "r397"
     ]
    },
    "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": [
      "r397"
     ]
    },
    "cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r56"
     ]
    },
    "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": [
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403"
     ]
    },
    "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": [
      "r386"
     ]
    },
    "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": [
      "r385"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r399"
     ]
    },
    "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": [
      "r56"
     ]
    },
    "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_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": [
      "r397"
     ]
    },
    "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"
     ]
    },
    "cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r672",
      "r673",
      "r674",
      "r693"
     ]
    },
    "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",
      "r185"
     ]
    },
    "cgnx_SouthboroughMassachusettsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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_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_StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/WarrantyObligationsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Standard Product Warranty Accrual, Foreign Currency Translation Gain (Loss)",
        "label": "Standard Product Warranty Accrual, Foreign Currency Translation Gain (Loss)",
        "documentation": "Amount of foreign currency translation gain (loss) which decreases (increases) the standard product warranty accrual. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r866"
     ]
    },
    "cgnx_StandardProductsandServicesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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_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": [
      "r21",
      "r36",
      "r148",
      "r176",
      "r177",
      "r178",
      "r189",
      "r190",
      "r191",
      "r195",
      "r203",
      "r205",
      "r220",
      "r274",
      "r277",
      "r352",
      "r406",
      "r407",
      "r408",
      "r420",
      "r421",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r446",
      "r450",
      "r473",
      "r474",
      "r475",
      "r476",
      "r477",
      "r478",
      "r493",
      "r567",
      "r568",
      "r569",
      "r579",
      "r641"
     ]
    },
    "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": [
      "r234",
      "r235",
      "r583",
      "r587",
      "r589",
      "r648",
      "r650",
      "r654",
      "r670",
      "r677",
      "r679",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687",
      "r692",
      "r711",
      "r731",
      "r870",
      "r919"
     ]
    },
    "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": [
      "r189",
      "r190",
      "r191",
      "r220",
      "r530",
      "r575",
      "r580",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r602",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r621",
      "r623",
      "r624",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r636",
      "r637",
      "r641",
      "r732"
     ]
    },
    "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": []
    },
    "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": []
    },
    "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": []
    },
    "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": []
    },
    "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": [
      "r189",
      "r190",
      "r191",
      "r220",
      "r530",
      "r575",
      "r580",
      "r594",
      "r595",
      "r596",
      "r597",
      "r598",
      "r599",
      "r602",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r615",
      "r616",
      "r617",
      "r618",
      "r619",
      "r621",
      "r623",
      "r624",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r633",
      "r634",
      "r635",
      "r636",
      "r637",
      "r641",
      "r732"
     ]
    },
    "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": [
      "r749",
      "r760",
      "r770",
      "r795"
     ]
    },
    "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": []
    },
    "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": [
      "r21",
      "r88",
      "r89",
      "r121",
      "r386"
     ]
    },
    "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": [
      "r21",
      "r36",
      "r121"
     ]
    },
    "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": [
      "r12"
     ]
    },
    "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_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": []
    },
    "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": [
      "r21",
      "r88",
      "r89",
      "r121",
      "r576",
      "r641",
      "r675"
     ]
    },
    "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": [
      "r21",
      "r88",
      "r89",
      "r121",
      "r579",
      "r641",
      "r675",
      "r738"
     ]
    },
    "cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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_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": [
      "r89",
      "r92",
      "r93",
      "r114",
      "r604",
      "r620",
      "r642",
      "r643",
      "r726",
      "r739",
      "r833",
      "r847",
      "r904",
      "r922"
     ]
    },
    "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_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",
      "r186",
      "r338",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r351",
      "r352",
      "r448",
      "r644",
      "r645",
      "r676"
     ]
    },
    "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": [
      "r479",
      "r496"
     ]
    },
    "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": [
      "r479",
      "r496"
     ]
    },
    "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": [
      "r479",
      "r496"
     ]
    },
    "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": [
      "r479",
      "r496"
     ]
    },
    "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": [
      "r479",
      "r496"
     ]
    },
    "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_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": [
      "r495",
      "r497"
     ]
    },
    "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": [
      "r789"
     ]
    },
    "cgnx_TaxYearsOpenToExaminationByInternalRevenueService": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r781"
     ]
    },
    "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": [
      "r788"
     ]
    },
    "us-gaap_TrademarksMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TrademarksMember",
     "presentation": [
      "http://www.cognex.com/role/IntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trademarks",
        "label": "Trademarks [Member]",
        "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "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": [
      "r808"
     ]
    },
    "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": [
      "r810"
     ]
    },
    "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_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": [
      "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",
      "r269",
      "r270",
      "r337",
      "r350",
      "r447",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r506",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r527",
      "r555",
      "r819",
      "r820",
      "r821",
      "r822",
      "r823",
      "r824",
      "r825",
      "r843",
      "r844",
      "r845",
      "r846"
     ]
    },
    "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": [
      "r811"
     ]
    },
    "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": [
      "r812"
     ]
    },
    "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": [
      "r810"
     ]
    },
    "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": [
      "r810"
     ]
    },
    "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": [
      "r813"
     ]
    },
    "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": [
      "r811"
     ]
    },
    "cgnx_TreasuryStockAdditionalSharesAcquired": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "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": []
    },
    "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": [
      "r21",
      "r89",
      "r121"
     ]
    },
    "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": [
      "r21",
      "r52",
      "r121"
     ]
    },
    "us-gaap_USTreasuryBillSecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "USTreasuryBillSecuritiesMember",
     "presentation": [
      "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails",
      "http://www.cognex.com/role/FairValueMeasurementsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury bills",
        "label": "US Treasury Bill Securities [Member]",
        "documentation": "This category includes information about negotiable debt securities issued by the United States Department of the Treasury which generally have maturities of one year or less, are interest bearing, and are backed by the full faith and credit of the United States government."
       }
      }
     },
     "auth_ref": [
      "r917"
     ]
    },
    "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 notes",
        "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": [
      "r700",
      "r717",
      "r719",
      "r917"
     ]
    },
    "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": []
    },
    "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": [
      "r807"
     ]
    },
    "cgnx_UnrecognizedTaxBenefitsGrossNoncurrentLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "UnrecognizedTaxBenefitsGrossNoncurrentLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/IncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized Tax Benefits, Gross, Noncurrent Liability",
        "label": "Unrecognized Tax Benefits, Gross, Noncurrent Liability",
        "documentation": "Unrecognized Tax Benefits, Gross, Noncurrent Liability"
       }
      }
     },
     "auth_ref": []
    },
    "cgnx_UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.cognex.com/20240331",
     "localname": "UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes",
     "crdr": "credit",
     "presentation": [
      "http://www.cognex.com/role/IncomeTaxesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized Tax Benefits, Gross, Offset to Tax Attributes",
        "label": "Unrecognized Tax Benefits, Gross, Offset to Tax Attributes",
        "documentation": "Unrecognized Tax Benefits, Gross, Offset to Tax Attributes"
       }
      }
     },
     "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": [
      "r418"
     ]
    },
    "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": [
      "r837"
     ]
    },
    "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": [
      "r210",
      "r215"
     ]
    },
    "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_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": [
      "r209",
      "r215"
     ]
    }
   }
  }
 },
 "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": "30",
   "Paragraph": "7",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-7"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "8",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-8"
  },
  "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": "14",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14"
  },
  "r8": {
   "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"
  },
  "r9": {
   "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"
  },
  "r10": {
   "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"
  },
  "r11": {
   "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"
  },
  "r12": {
   "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"
  },
  "r13": {
   "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"
  },
  "r14": {
   "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"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "405",
   "Topic": "942",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481047/942-405-50-1"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "30",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1"
  },
  "r17": {
   "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"
  },
  "r18": {
   "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"
  },
  "r19": {
   "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"
  },
  "r20": {
   "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"
  },
  "r21": {
   "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"
  },
  "r22": {
   "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"
  },
  "r23": {
   "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"
  },
  "r24": {
   "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"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A"
  },
  "r26": {
   "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"
  },
  "r27": {
   "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"
  },
  "r28": {
   "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"
  },
  "r29": {
   "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"
  },
  "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.19(a))",
   "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.19-26)",
   "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.20)",
   "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.21)",
   "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": "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"
  },
  "r35": {
   "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"
  },
  "r36": {
   "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"
  },
  "r37": {
   "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"
  },
  "r38": {
   "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"
  },
  "r39": {
   "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"
  },
  "r40": {
   "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"
  },
  "r41": {
   "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"
  },
  "r42": {
   "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"
  },
  "r43": {
   "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"
  },
  "r44": {
   "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"
  },
  "r45": {
   "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"
  },
  "r46": {
   "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"
  },
  "r47": {
   "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"
  },
  "r48": {
   "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"
  },
  "r49": {
   "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"
  },
  "r50": {
   "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"
  },
  "r51": {
   "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"
  },
  "r52": {
   "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"
  },
  "r53": {
   "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"
  },
  "r54": {
   "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"
  },
  "r55": {
   "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"
  },
  "r56": {
   "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"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12"
  },
  "r61": {
   "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"
  },
  "r62": {
   "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"
  },
  "r63": {
   "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"
  },
  "r64": {
   "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"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14"
  },
  "r66": {
   "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"
  },
  "r67": {
   "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"
  },
  "r68": {
   "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"
  },
  "r69": {
   "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"
  },
  "r70": {
   "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"
  },
  "r71": {
   "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"
  },
  "r72": {
   "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"
  },
  "r73": {
   "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"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "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"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "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"
  },
  "r83": {
   "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"
  },
  "r84": {
   "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"
  },
  "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(20))",
   "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(24))",
   "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(25))",
   "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(28))",
   "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(29))",
   "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)(a)(1))",
   "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(30)(a)(3))",
   "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(30))",
   "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(31))",
   "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(32))",
   "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)(a))",
   "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": "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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"
  },
  "r100": {
   "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"
  },
  "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(10))",
   "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(20))",
   "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.1,2)",
   "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.2(a),(d))",
   "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.4)",
   "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.7)",
   "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": "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"
  },
  "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",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//805/tableOfContent"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "815",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//815/tableOfContent"
  },
  "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(11))",
   "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(15)(1))",
   "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(17))",
   "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": "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"
  },
  "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(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r136": {
   "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"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h))",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//250/tableOfContent"
  },
  "r147": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//606/tableOfContent"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r154": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(12))",
   "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(15))",
   "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(16))",
   "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(17))",
   "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(18))",
   "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(30)(a)(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(4))",
   "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(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r163": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "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"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "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(24))",
   "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(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r181": {
   "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"
  },
  "r182": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "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(e)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//260/tableOfContent"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "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"
  },
  "r229": {
   "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"
  },
  "r230": {
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "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"
  },
  "r236": {
   "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"
  },
  "r237": {
   "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"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//330/tableOfContent"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r370": {
   "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"
  },
  "r371": {
   "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"
  },
  "r372": {
   "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"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)(04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r390": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)(ii)",
   "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)(2)(iii)",
   "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)(2)(iii)(01)",
   "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)(2)(iii)(02)",
   "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)(2)(iii)(03)",
   "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": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r396": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(e)(1)",
   "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": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)(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": "(f)(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": "(f)(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": "(f)(2)(iv)",
   "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": "(f)(2)(v)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "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": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1"
  },
  "r410": {
   "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"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//740/tableOfContent"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "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"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r426": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r427": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.Fact.4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "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"
  },
  "r437": {
   "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"
  },
  "r438": {
   "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"
  },
  "r439": {
   "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"
  },
  "r440": {
   "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"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "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"
  },
  "r444": {
   "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"
  },
  "r445": {
   "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"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "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"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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"
  },
  "r455": {
   "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"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "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"
  },
  "r460": {
   "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"
  },
  "r461": {
   "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"
  },
  "r462": {
   "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"
  },
  "r463": {
   "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"
  },
  "r464": {
   "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"
  },
  "r465": {
   "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"
  },
  "r466": {
   "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"
  },
  "r467": {
   "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"
  },
  "r468": {
   "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"
  },
  "r469": {
   "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"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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"
  },
  "r472": {
   "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"
  },
  "r473": {
   "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"
  },
  "r474": {
   "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"
  },
  "r475": {
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "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"
  },
  "r478": {
   "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"
  },
  "r479": {
   "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"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "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"
  },
  "r487": {
   "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"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r490": {
   "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"
  },
  "r491": {
   "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"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "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"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//855/tableOfContent"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "855",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "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"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "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"
  },
  "r516": {
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "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"
  },
  "r525": {
   "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"
  },
  "r526": {
   "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"
  },
  "r527": {
   "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"
  },
  "r528": {
   "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"
  },
  "r529": {
   "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"
  },
  "r530": {
   "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"
  },
  "r531": {
   "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"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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"
  },
  "r540": {
   "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"
  },
  "r541": {
   "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"
  },
  "r542": {
   "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"
  },
  "r543": {
   "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"
  },
  "r544": {
   "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"
  },
  "r545": {
   "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"
  },
  "r546": {
   "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"
  },
  "r547": {
   "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"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "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)(8))",
   "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": "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "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"
  },
  "r556": {
   "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"
  },
  "r557": {
   "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"
  },
  "r558": {
   "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"
  },
  "r559": {
   "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"
  },
  "r560": {
   "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"
  },
  "r561": {
   "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"
  },
  "r562": {
   "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"
  },
  "r563": {
   "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"
  },
  "r564": {
   "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"
  },
  "r565": {
   "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"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "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"
  },
  "r569": {
   "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"
  },
  "r570": {
   "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"
  },
  "r571": {
   "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"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "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"
  },
  "r575": {
   "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"
  },
  "r576": {
   "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"
  },
  "r577": {
   "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"
  },
  "r578": {
   "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"
  },
  "r579": {
   "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"
  },
  "r580": {
   "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"
  },
  "r581": {
   "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"
  },
  "r582": {
   "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"
  },
  "r583": {
   "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"
  },
  "r584": {
   "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"
  },
  "r585": {
   "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"
  },
  "r586": {
   "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"
  },
  "r587": {
   "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"
  },
  "r588": {
   "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"
  },
  "r589": {
   "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"
  },
  "r590": {
   "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"
  },
  "r591": {
   "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"
  },
  "r592": {
   "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"
  },
  "r593": {
   "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"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r600": {
   "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"
  },
  "r601": {
   "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"
  },
  "r602": {
   "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"
  },
  "r603": {
   "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"
  },
  "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(19))",
   "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(2)(a))",
   "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(2)(b))",
   "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(3)(a))",
   "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(3)(b))",
   "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(3)(c))",
   "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(6)(b))",
   "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(6)(c))",
   "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(6)(d))",
   "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(6)(e))",
   "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(8))",
   "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(9)(b))",
   "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(9)(c))",
   "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(9)(d))",
   "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(9)(e))",
   "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": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r620": {
   "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"
  },
  "r621": {
   "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"
  },
  "r622": {
   "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"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r624": {
   "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"
  },
  "r625": {
   "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"
  },
  "r626": {
   "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"
  },
  "r627": {
   "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"
  },
  "r628": {
   "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"
  },
  "r629": {
   "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"
  },
  "r630": {
   "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"
  },
  "r631": {
   "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"
  },
  "r632": {
   "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"
  },
  "r633": {
   "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"
  },
  "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(7)(c)(3))",
   "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(7)(c)(5))",
   "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(7)(c)(6))",
   "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)(c)(7))",
   "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))",
   "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(9))",
   "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": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r641": {
   "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"
  },
  "r642": {
   "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"
  },
  "r643": {
   "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"
  },
  "r644": {
   "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"
  },
  "r645": {
   "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"
  },
  "r646": {
   "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"
  },
  "r647": {
   "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"
  },
  "r648": {
   "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"
  },
  "r649": {
   "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"
  },
  "r650": {
   "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"
  },
  "r651": {
   "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"
  },
  "r652": {
   "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"
  },
  "r653": {
   "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"
  },
  "r654": {
   "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"
  },
  "r655": {
   "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"
  },
  "r656": {
   "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"
  },
  "r657": {
   "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"
  },
  "r658": {
   "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"
  },
  "r659": {
   "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"
  },
  "r660": {
   "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"
  },
  "r661": {
   "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"
  },
  "r662": {
   "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"
  },
  "r663": {
   "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"
  },
  "r664": {
   "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"
  },
  "r665": {
   "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"
  },
  "r666": {
   "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"
  },
  "r667": {
   "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"
  },
  "r668": {
   "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"
  },
  "r669": {
   "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"
  },
  "r670": {
   "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"
  },
  "r671": {
   "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"
  },
  "r672": {
   "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"
  },
  "r673": {
   "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"
  },
  "r674": {
   "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"
  },
  "r675": {
   "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"
  },
  "r676": {
   "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"
  },
  "r677": {
   "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"
  },
  "r678": {
   "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"
  },
  "r679": {
   "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"
  },
  "r680": {
   "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"
  },
  "r681": {
   "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"
  },
  "r682": {
   "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"
  },
  "r683": {
   "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"
  },
  "r684": {
   "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"
  },
  "r685": {
   "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"
  },
  "r686": {
   "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"
  },
  "r687": {
   "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"
  },
  "r688": {
   "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"
  },
  "r689": {
   "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"
  },
  "r690": {
   "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"
  },
  "r691": {
   "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"
  },
  "r692": {
   "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"
  },
  "r693": {
   "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"
  },
  "r694": {
   "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"
  },
  "r695": {
   "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"
  },
  "r696": {
   "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"
  },
  "r697": {
   "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"
  },
  "r698": {
   "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"
  },
  "r699": {
   "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"
  },
  "r700": {
   "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"
  },
  "r701": {
   "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"
  },
  "r702": {
   "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"
  },
  "r703": {
   "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"
  },
  "r704": {
   "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"
  },
  "r705": {
   "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"
  },
  "r706": {
   "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"
  },
  "r707": {
   "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"
  },
  "r708": {
   "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"
  },
  "r709": {
   "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"
  },
  "r710": {
   "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"
  },
  "r711": {
   "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"
  },
  "r712": {
   "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"
  },
  "r713": {
   "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"
  },
  "r714": {
   "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"
  },
  "r715": {
   "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"
  },
  "r716": {
   "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"
  },
  "r717": {
   "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"
  },
  "r718": {
   "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"
  },
  "r719": {
   "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"
  },
  "r720": {
   "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"
  },
  "r721": {
   "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"
  },
  "r722": {
   "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"
  },
  "r723": {
   "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"
  },
  "r724": {
   "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"
  },
  "r725": {
   "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"
  },
  "r726": {
   "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"
  },
  "r727": {
   "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"
  },
  "r728": {
   "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"
  },
  "r729": {
   "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"
  },
  "r730": {
   "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"
  },
  "r731": {
   "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"
  },
  "r732": {
   "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"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "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"
  },
  "r736": {
   "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"
  },
  "r737": {
   "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"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii",
   "Section": "6"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r763": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r764": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r765": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r766": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r767": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r776": {
   "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"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r780": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r781": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r782": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r783": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r784": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r785": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r786": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r787": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r788": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r789": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r790": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r791": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r792": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r793": {
   "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"
  },
  "r794": {
   "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"
  },
  "r795": {
   "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"
  },
  "r796": {
   "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"
  },
  "r797": {
   "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"
  },
  "r798": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r799": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r800": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r801": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r802": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r803": {
   "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"
  },
  "r804": {
   "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"
  },
  "r805": {
   "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"
  },
  "r806": {
   "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"
  },
  "r807": {
   "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"
  },
  "r808": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r809": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r810": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r811": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r812": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r813": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r814": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r815": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r816": {
   "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"
  },
  "r817": {
   "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"
  },
  "r818": {
   "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"
  },
  "r819": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(a)",
   "Publisher": "SEC"
  },
  "r820": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(b)",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r821": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(b)",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r822": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(b)",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r823": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(c)",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r824": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(c)",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r825": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(c)",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r826": {
   "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"
  },
  "r827": {
   "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"
  },
  "r828": {
   "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"
  },
  "r829": {
   "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"
  },
  "r830": {
   "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"
  },
  "r831": {
   "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"
  },
  "r832": {
   "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"
  },
  "r833": {
   "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"
  },
  "r834": {
   "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"
  },
  "r835": {
   "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"
  },
  "r836": {
   "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"
  },
  "r837": {
   "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"
  },
  "r838": {
   "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"
  },
  "r839": {
   "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"
  },
  "r840": {
   "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"
  },
  "r841": {
   "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"
  },
  "r842": {
   "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"
  },
  "r843": {
   "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"
  },
  "r844": {
   "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"
  },
  "r845": {
   "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"
  },
  "r846": {
   "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"
  },
  "r847": {
   "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"
  },
  "r848": {
   "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"
  },
  "r849": {
   "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"
  },
  "r850": {
   "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"
  },
  "r851": {
   "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"
  },
  "r852": {
   "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"
  },
  "r853": {
   "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"
  },
  "r854": {
   "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"
  },
  "r855": {
   "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"
  },
  "r856": {
   "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"
  },
  "r857": {
   "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"
  },
  "r858": {
   "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"
  },
  "r859": {
   "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"
  },
  "r860": {
   "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"
  },
  "r861": {
   "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"
  },
  "r862": {
   "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"
  },
  "r863": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r864": {
   "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"
  },
  "r865": {
   "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"
  },
  "r866": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r867": {
   "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"
  },
  "r868": {
   "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"
  },
  "r869": {
   "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"
  },
  "r870": {
   "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"
  },
  "r871": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r872": {
   "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"
  },
  "r873": {
   "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"
  },
  "r874": {
   "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"
  },
  "r875": {
   "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"
  },
  "r876": {
   "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"
  },
  "r877": {
   "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"
  },
  "r878": {
   "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"
  },
  "r879": {
   "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"
  },
  "r880": {
   "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"
  },
  "r881": {
   "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"
  },
  "r882": {
   "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"
  },
  "r883": {
   "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"
  },
  "r884": {
   "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"
  },
  "r885": {
   "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"
  },
  "r886": {
   "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"
  },
  "r887": {
   "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"
  },
  "r888": {
   "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"
  },
  "r889": {
   "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"
  },
  "r890": {
   "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"
  },
  "r891": {
   "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"
  },
  "r892": {
   "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"
  },
  "r893": {
   "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"
  },
  "r894": {
   "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"
  },
  "r895": {
   "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"
  },
  "r896": {
   "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"
  },
  "r897": {
   "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"
  },
  "r898": {
   "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"
  },
  "r899": {
   "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"
  },
  "r900": {
   "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"
  },
  "r901": {
   "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"
  },
  "r902": {
   "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"
  },
  "r903": {
   "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"
  },
  "r904": {
   "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"
  },
  "r905": {
   "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"
  },
  "r906": {
   "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"
  },
  "r907": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6"
  },
  "r908": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "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"
  },
  "r909": {
   "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"
  },
  "r910": {
   "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"
  },
  "r911": {
   "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"
  },
  "r912": {
   "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"
  },
  "r913": {
   "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"
  },
  "r914": {
   "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"
  },
  "r915": {
   "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"
  },
  "r916": {
   "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"
  },
  "r917": {
   "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"
  },
  "r918": {
   "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"
  },
  "r919": {
   "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"
  },
  "r920": {
   "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"
  },
  "r921": {
   "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"
  },
  "r922": {
   "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"
  },
  "r923": {
   "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"
  },
  "r924": {
   "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"
  },
  "r925": {
   "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"
  },
  "r926": {
   "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"
  },
  "r927": {
   "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"
  },
  "r928": {
   "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"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>106
<FILENAME>0000851205-24-000051-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000851205-24-000051-xbrl.zip
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
M$,(A$69A*>'NS1QB$Q.A8X;XM:RK&D*87O?']"61C2Z Z4XL@1;Z10]795%
M"Q]>L60?(W33#1/.^)SQ=]+ /KR.QB$R<;X:<[YV-,X_&M//(%(DUX>SM\1L
M/_"]D?#OZ7_XLME?"U!=Q_'KW.CBK42]5M_)3)R5T0I?;)!.0#08B-F=;.]H
MY 3OC6Y-Z%'#@)!<534%0XB+%"D<W;%H[@2,K+M^(B^TO-0-L9XLV7D=H-K]
M^G#W&WA23X_+>^\^=9XWN5:+YB(# 15546M*;+FF*Y+('5_^0E7DZ+YTG3'G
MPZ\$"M#_JJS5"M&&J;4_#H7 <VQK)4B0(L@B\"WO-]IJ3CRWDS2[NGLS0/P@
M+:$,\J<T)!B!$$1MZ,':L%W!#@,!!!;:(A]V$#>;>.BX)--0:ZJD934]M&:M
MH>B9;(]UGRLU5<LGV(6+4C>_?(L5PQ1)KLB]C$9*)/>PDG*:$*&E]G'-Y V8
M3*OV2H!7C'WO%9]#W$1.-BKM[T80&.9P$I P#(JW6X[/[$N1B[UV4E8J>3;>
M[N,$4'22=]% :(*!H%65IJPVFRL6PJJXV^ FS!2"A%9/"54"Y2&T7#VP1'WA
M/V"P!I9-[5K0$=2 M.=YCE[JOQBN_2?]^\-%\<H9(/R^]E3KU82X3-6G&%YD
M%N'!JQVJ]4_G?LA2(09WQ[)\S-5'/[[!\^1$G+0J[:Y+A'_8U)>Y]>U7<GJW
MHU HW,"O7?_9^SG5J'JE_0#$8_Z^O',QLT,7OX,*IJ[_",H;!-#NNEV6MBCW
M?1?TZ,$;G?_/'D>F1OPV&72)W&Q(RV^I*E)=9Q3K5[M# #'=\8FQL&>ETJY+
M*XKS0P; 8H<-YW'HN4NNNZQ6VHVZ5%5AV[OS$'..J]:(RANR.JY:0XKNV\-Q
MU4KIN.X6AKN*65 $WS2>W2G\:8\%C).*@N%:0D@<,D9Z$EQ*4/-7&D"_\:7@
M]8Y]^,8>&XY WHA)BT;AXP&.,<RB]&*H5=& N9;5VI3P;!>5*6KCW=3@"1YT
ME/SD7/ S"C00GUAIX5-!5J[ZTYAIQPRO=V7TW79\Y-R'5FNJC:P!"+59 RV2
M3XV,7M-RRJ-H4DVI;PZ+L!R!V#'$;X<.#8<1L!@$TP'3@76G>>?<!15_O?=1
MWW.N@@,]-5:V]1!'+RFZ2))6 3'R<VC#)S-9D\61+\&^=S>N8LG[+BM]2MQ3
MXTJ+DBX *WJ<213&AB^\&LZ$"'^I29*"V2<AP.,1^0;$R@?"F'<BUIG"#],K
M7Q]^NW3@)/25Y#2C#-2R>X:LN>29-4 H@8I_Z/1N.W^/:!!+&WXGH?#MV\WV
M0-SF"$2L]!4M,;UWC4'D>^-1C*M[U\)@#1'Z[X(Y) #'$5:#_1P2&L5#0VHN
MNW,E?X@B7$,C$ :V W:8X3AP!6:TT3S[8V*C<08V69_$%\"##TUO6_ MZ!^\
M=.P3DU!M)"L""*!P& A7\#S,@ <3$-O!T,-D4Y+_#H=&N+R+G\;B4G&=T<WQ
M1CY$KL"5,K?;/M ?7-3_#^P%;Z+7PYVXE/AA6/D03'/Q8R,(!5T2+.,]J$7/
MV;T&<-D G5'&D?U/+$7?P_^4Y1T2I[M_(8%2R>MAJI3CRE0USX?).6XS5YC5
MZZRN;)<$_<FPN34"L_,7>HX+:^V S#6A(65#:&CE; -S*9S=S)<\TIUL["1K
M>/IFXON@;*+Z-#1:0R.<!%.CJUEI_XOLD^%FNP9R.=*]CBKBBN2=R>(\^" S
M-YS'ML^!_1^\2^)-[?*(='_>/+H3S* OBTX=^',C.PS!#20.^'6^YR):G7>!
M (K?A7L,J!@FS>S<&J$1E1<O>;FS9\RG))XF<*4FU=&'?2(O$R<JB.A5GX4K
MQ%OSDZ(JM?B"<&C3*LDQ5DD6[>U&ZYWZKR3X4"M1/K2E[.6/Z@WNCG)WE+NC
MW!TMIZH_!WLT>X7V5/NB\HV]TZD[VN+N*#=Y+V3;Y\#^W!T]<R+E[N@A[BAX
M@(;@@$=$!,,TP1WU#?0IT4/S,1V9^JD FJ^:^D4P C\6WN(GP5Q Q AV_BYB
M]A4>1T!?ON#GP&X_PV'R=4WH$4+79I&![=*SQ 'ZJ/_SWRU%@6VN62']6OZ4
M7+;U@O7K2R[$#&QES2HK>+20NMBRTJ\J21YY(7E\=4-A[KGDP\YU@ PXN)I2
MJTM[)%R5/+VU?%T_)4_?F]F'Y1IAT/4<O;5=7+\#/*Q=53+['@>&]_P;$%HO
MGO^>4HA$+Z+BS(POFJM)TBOM;^G"D?LH9;==BW4^\KV,77;LS!@C F7,'9?#
M#4M>P5D*W8<TD_0P(5 &7'+)=L&2K1=Y,Q$8IRY-]&?LLIP7!V2UK"B DC;E
M"Y;5]<!^(Q8LTPFFYPL4:;=&8,6G!<[@,G:YYB[=N;\0@R K"R70^DJ!=9,$
M0K:QDIR)E=8!/ EOP.UD/<E=XE498I=*;;_091[W%<W0,K:KOQ]LB"SB0>K4
M@*@]2"O-H04Y8#ZZ'JVGF0115!+V%W4R36EUZ/GT7<X[OORG#:^&UPHN^8DA
M3Y^\V@$U1UW#-9&1P4C%CD]X,4YML0S?"@1L V%;Z\X7JU?&A[1@X[2"I@!0
MKW1>H* 6]GEC'K*+OGW9 -X05FVL/<G"<B ^&!+'22A7N )ZI.'PJ*?=YL#S
MAX7#/O/_EJGO!*^SXG56O,Z*UUF=J,YJ9%N60\ZAT.+X.Z%5486X4.DGS/?:
MX>DB$:C9T[RG#0,)E#SZDI\'@YRX (O+A;(48)U6*IRZ/K)\[+DYCC$_GNCT
M#EV'5B2ES#(1T1OSB? 3_XDUPQ=:0PS>^\2U([U &],$E25=H53 QS/MD>$$
M?ZO</WQ).1]+6][0;B/1Z-_N)*21 P#D8B#.G8RJEA=6XP<"U($TX%G25*6H
ME;;<E,5&0Q&E>B-1*\E:VU'S'+K-Q48[<7N=:;N=::,=,?%%YUQ9;[:^G<[X
MR.GZGH5&%'PD(@./8F DXM+4S[$7Q0"O?8(G[%[)RAS0V4+H"J39+48_\)Q)
MN'K+MM&A64>8-BO)/4-_)G]?2+7O$^/WJC$ )KLVG)_&>X  *&S.Z6E[Q=X_
MW-[]MB*%\EE!WB/XRC3D3I,W#ZC:^4EJK=%4\VGW6&O(1<V;*+IL8CLU4]9[
M[#P]1_1TSW89R([[^7+_T'FXN>]\$\#TZ3Y]7QSPD_^\O1291-V(@C:])G9@
M'.,]$4S %(P''T2I0V'HH]WYWSM,P)8J;?67C\:R>%]? ;&JD8]6BY O8^<[
MGO'LJ.(^)*.XJ5YM#8%P-!2/AB_3E#(=-1"U ;RRT<*R1W%V.@#WTYA8=DBL
M#T=!%1>P>0K8XT:/.+^MQY6*K8==.GB EA?/L9PW$+IC$CUWUH<3$1O"\TF5
M-E"9\B,M(RG/IND^4D)>)=H!GNC#773&ONU$NU#H)E0N#=E"%9>&)<%58Z,T
MQ#2G3X;$#;"#%4X\'!&*V=)L3KCZY@7!AY(M&I<['<G,50\#.^"JIQ2H N;1
MN.HI!:ZP*&9!]7PV'/""B= ;$@+JQT -5!ZYC=LIMYRC.TCDW"TQ"4XO6]@(
MEW6,H:O.95TY<-7:;&8;P5#XXG@_SRKH@)LNMT3DEE^I.*S!I6$I<*7*&Z4A
M+8T;>HY%_ ![><G-3\+='Q,[?.=^,7,[X-*Q#*A"CFMRZ5@.7#6QTCXD 1X<
M7A"3:6EBG@IF#WLM7FO#J6*I0&"AV$;AQ38GQ,-WPS5>J/3\:R#<VH$Y"0(\
MWH&F3,<UG/? IG;H3-R"%+:B3A%XS1,))LYRM0"7PPQB6MF2"^"2^ +I0IV7
MQ"J7Q"?$P]^Q/XX=TG,W5+3"!T[R-TIFQPLF>(JMT_<F83*@^\D.?N?BED%T
M*CH7MYPNENBB,2]N-2YN3X@',&-#'Z!,1>VC[YG$0NG*92F#N+I463H]N588
M&Z<?7\N?--+><SAIZ LG!^^+Y%V.BJVHZ#[_>O>T>.!Q#WPLLQ+G[8L4^[)R
MO -Y'!5;4?&-O!A.9";1"<K<3F(12ZK$[21.&JND45^0I1TN3$^+"XS9"5\,
M,_1\+D=91!"7HYQWTTBC=;R\-4?%5E3\<*/F?,3'JDG#B1K\Q<61/6).?#NT
M213@^Q$0_#(V8+G491&?7.IR5D\A#9RY<ZP<-4?%5E3<DH%!*WY^C+&/*G%M
MSY^3MERR,H@S+EDY.Z>1AG:\=#1'Q594?(>'@AT[(&"^SM7[<(G*(*ZX1.5L
MG$8:S7F)6N<2];2HZ-*)=/=N-$P GL)E*8-8XK*4,W#:@=J%4T(-+DM/BXJ[
MMZ'=M_D92R:1H\IG)D+S/6#-V7LS!:F5=@_@9(3<WV04/:JRB<$W#TQ/F5&S
M9>YYO/I"QP)M6^*!J-&W88;.L%'R&$B$#<^+FTBT#RISG@>TVT0BK,06[J^%
MS;-/3K&R^^>[[X(\O[+><P<^NWMX[JWRP(Y(5ROY\5M!/+ C>&ZZ7Q_N?A-N
MND^/W:=T;+&RT(=>]]O]+>#N=@Z%0O>+T'V\BY:>@M CKSU=TES=NT(X]";P
M#"L0!?)FDG$XFS<H&"-OXH;8F[D01CF3D5Y*0\\ZTJLIU>36YO%9.\_T4VHM
M/=NCUG]>5_,9-$87I6Q[5(KIEJ"%FB,GN8K=L66Y##/6=]E)^A#P//>R; FE
MGS-ZGC60"X0[VCEN^[BR0M"^=6;R_KXA*\"F7>Z$:8.[W,8J+XX'A4L%VB]K
M93HH$Z!)YRG:.D]8[IJ7-PER*;:'%(NI*YY:S1)I+6\TG>NNYF>&L2+;3).0
MS?/@BQZ(OF.PY(F\$G="EB&796.2P,+VTHGC+P=M[--R'(N!':T=V#X)K.5I
M[?+\M/:JF@QKGP35%\,87\>X_^)[(]HV 9[X3SL<WDP"8&'BW[V9S@2!T0D"
M O^SGHVWW2:XJ\D$=PQB*[(D-O7FRO3V!#/'H_5TD9B1AX5,E+%>IV][W;Q-
M4#YN3$= F;EQ3:PY S>J)^=&&;A1DD49C=,E;F2)-Y@W_K;Z,NRRX(T7A'AD
MQD_7^]/-*MDVFRIUSE!E(OBZ@Z^>9P4=U^H1_]4V2=#S'"LK+RJ5=J,EMAI2
M^11C.K$7IAAWB1.4DUP+URGYD:M::=>;HMHZ6',42CPEU!RE\12_^EX0"%&
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
M\4]BS0_)GC>_\<=?\A[X=C-O^D>>Y(_I2G[U' 1,,L"WZ_:(.?'MT"8![#J
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
MZ/5![=#FG<E-XP4UI=)NZ>4K%>26<DG$;C9JQ".2A\]H9\OP9;N0A!>0%%U
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
MC'SF1+7,F*@^P6G/I9.G5;S^6I:IDW%,,HLKE3#I :NR+>):@7#UETW4!T1
MJ64C%6XZ^7B;O"AYTHT1#)$:I[0BS6A%J;2EFM245DA%&!-_FJC!IQPR$J%D
M(0 >EN$XX3CA."DC3G+-24Q5":J0S'8(5D\JHJ3SI"*KQ,(9F#V<Y)E_.(Q_
M-7;X]R)R#?20"1U!Q[,*/"K"<<)QPG'")D[RM+%!ZL_FCF;6T?5*6ZF+#?G@
MOCN<8#@37Q9.<K2S#^/A!F,\O,783GKJPT+)>O+B5[%S%4?HF5UUP1DU=)(G
MKD]@A7\22W@Q;%>X<D#L?A! AANOANW@D(\JR.!J )(6/.I7$J=G1<$E-!<7
M&F_X8V,>+J,*6#=-_L=TK;]Z#D+N*ZP8U437[1%SXMNA30( 2P!?S9>'[C%*
M7L<#'&*KOGY '4_=\8@FQPG'"<<)QPG'2>Z1GBW#JO,V$< 4Z@[VL1-:E79=
MU)35YB.<]$I*>D<V3O>F/)TMRN..\9E=Q1%Z9E==1.+_B^?#GZX $M<GKODN
MA#X\S(D.&AK3\G)>%< 3)1PG'"<<)QPG'"=%E$.O./!K^M.M\Z?0=8J5^4VL
MRY]1E4?O[KC6\TRQSXZ-S;RI98=)E:1*6ZT?TK2+DQ<SY+7BI)^<NF1&J.N2
MYD%VQK[M1#I"H;,@5>%JXAH3RPZ)E<,AN[C9?[37:Q6P87F3OD.F#?]+-C@R
M??!IUHZ*S6,,CE0E)1X<*:W6S">8/:(Y<L"LB!S(YT2AX!/SQ[$C"NGLL>\
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
M@TD_"'&T')VA/!WW&1)_E(P'I6BG,XT2R;<KPI6%"3@V=L$/QCA!%U>";R>
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
M6NE=KF$_S?RNYFTA)8$QJXWGP)41\08ARLG('P]0+$*R(I,^\!?P-&V]3D<
M1GTN@* "3?"B>7NU03I.M,\V:!PV]91.BE6"IK1-] \2B?Y$Q=5]([%;$(>7
MJ1MCIT):WN+TP 6:1<6W9'J+G:@!+U5WLKQ&E=2_HX4UF<*"W/1 P/^\<88P
MPD_.^-V9AZC;TXH<M'C\<$MI8SO.LE/NT%9FA8WLCT2I[4$ )=7=\Y>GA[\)
M=\\_OC__N.T^/C\)-1WITW/WX47H/L-8GUZ>OS[>WW8?[H7/CT^W3W>/MU^%
MERY\\>WAJ?LB?/CY=/OS_A%^_YC'"&LR$BL/59- 9R4*[VDV@6'VUS2<O*[3
M?L0V\HOC>JBOGKU'[PW,%PIZV$7UUH6[?Q_[_3^72@HT.P'5-462!C/2*G(<
M[/,[#MT1:DA4EF@[X_!D-H%!PD-":L?O_ D,9_Y?H0!^4XAZ,G8;7H$F(36B
M2\6*-X2@M%&#KBM9U,3X>S0*"+F9X":R@ ;:!PT):A*>F*=S\?FWT\ =L^\5
MIG"%#RZ^S)_!Y ?AQT^%/+T+N4\;E8%B:4M,N90)RPRC;5E*J;"L^'O5TJH)
M\+2V+)5[5/'WEJ)6-RASVZ.:"'3<,<9I0B?O'?>PNDM=$0H/J"1V:+1:6]IG
M+ZLS[:DV%A)%7%WGWWK-O:#>)5H<(38V1V.Y.F&DZ["IG[\67W+<CEW:+1_A
M[&1[W^5+/!W98=9U//\HL[4A'[*UD0X2L@<9N@111[8"8</.1'?J.%[C4\^F
M2&Y%';::(KF'9SFKU4GNKN4_=$FKK/S'^:2L@2[+?C6ESN^RL/V1O7R6RTU$
MKXG1+E?Y1Y?T8M&OO4GG110NRVR5Y5VC&56K&FB9&A-,/Y%H?0?_ S-/&5!5
M??&(]73=SPY)K)EO?W0#GZC!Y9$<^O'A5\K.>?K/O(! O *^J'>D?C'ZH-I0
MOOGZX.A.TQ9]L+N?5%UMV1K+;DV\K%6$Y7^OH#-J#)SX48B"8!!+A"/"KZXG
MM);LB-_[$])*D!)WOD=7FH(I7R+X#\65('CB>4H"BEX)V\+WP$7HA+^"KEC'
MDHEI1&=F4#'V NY80V6(@@<>(3[/^24*[R0@2R <##X<P700NT:"D(J$^9M
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
MRIPPQNR'^R#V92T/MWQR$+]MMRU=+8OA!PUA:-4 [T%)EX3P%P+OE;:B:%4
M[\^P\;H+GIZ-!XRISW8,/LW .PGPJE8'TUR%!^JM),CSA<-RH;C[_,.:VPGN
M' A7@;8G$P?W"@+TE8<N.E>[YEEPC"_'^%9UIKG1"TA"RP6O/@\_4TY%A57V
M?,/ $U )]Q<X]O=L6@<TC+Z7AN' R^.*V/V,/,$3NW33Y!O=,RDM8'B J(A2
M;1H87JCE!ADRJK;25X^%JTB&T#!UW_W2HJ-3VR2I5>6E</-3)#HF-S\U%AW<
M12\M/$:K8XMR#K"-FYUJ9<?B9J>^LH-E$$N+CMGJ6**I<+-S;-&QN=FIL>BX
M;^6MCH6B(Q^>R<"MSB:.H#@F>O+(;4\]!8@6R]Q;BNQ61]-$0[<NQ )M.0/A
MZ0(\H:@^"46[BGA9J38EW,Y 1%H#*VC7.7EA/54ABPQ8 P:<"WJ+T.\8A#T-
M2(B(YC<LQ;ZH5\AP$GGH"+A\-L8;70_1?"G,WQ)U!T\IA4#;(@<%$E 6CV;*
MK8YIBK*A5P2<VY+M4]6P%1BV)1J27##L(BPXG5 &,$"AC'GPS01L.7 9T'+D
MO"&R?Y[@-RF"?^2P'^<D F),@"7ZP J]6<1^[H,SB+P1 G.[0Q =8"PJ2B$=
M3 I;?QD0]H1F"2P?*.&.*5 ?I.,%_NM,?9H@ K1A*=DX;P?E+PI<(!NR&$-7
M4*AJ'^;A@P()\?[;T'78TL1RR-(90J&01^EU_X!UF?H>/#33!WT%Z?GX]'FE
M^GJ>M;E+'K5ZV@0DZR/GOH..!>61Q[1JJQ.]^UEN70PN_ 0L43R5\%_#[/BW
M"-P3@2L]JI5O@1%+"YH&(6,!1CO\U\P)R,W0!]X'C3EQ5R3"6<@"32$98$X,
M+.#_S3RJ42EX&/G? 2; !*&2T]:/.VV]U5',LM,>^/ 7:H)DYC"'R!W'U6YG
M0302\-Z( 5CP7+DMW/;[P## 6^,Y32M*J+'@B=7$GY$3+G1-CQ"/XKX#1$'Y
M7@P/]ZA9IRKG=V?LX#!>1H1$H0AW!O0)[E(KH:0>I)E &-TP&74BE,G8\67
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
MQ=_A(U<!*LFSA.<>+ FKL)<E?1JNL;8,RQ?"PS>0]XQX%R7VI@2LK.)X<R%
MU, @%"+X;@EVZ?MA1$^/9^.A.X8GO I31G#AG5')):'@1/0VN(G@Q2'H :'G
MA'#_; K4&+EAY ?(X_1Y(<)CX@<*_;'C3L)VFM3"Q)D+H*!\H4?B8<&3PEDO
M)/^:$2_"VS.O>Q\1CX H">$4]-$0^ 8^>? N/Q#Z(]!D,$S7$_INT)]-P@B3
M". +F#JHH]2D_C6#U8"5[\%KX>E_>OX[HG1@@N_^;#P0/#\21LX;3(\0^,'Y
M$_YU/1B0T^\CK$"8A?BXU(P'3N2TA3]&+@X22.N].J\$AP)+#XX2J-K,R^'S
M:^!,@*[> #_ 4$,2BG!3?SQ#E2+@J-_(>"Y,?%#8\";\#BXF;\X861 ^(H62
M!P*1_!G0 9;:]Y""X6PZ';LD8*^(1FXPN)DZ 5R*;(PZ&A;!FPWA#Y"D -X=
M+5GE/_^?I<CF;V'" ?#\Q>()+CQR."1]9)[>?#&UH>..$345 %?!TY"YD'V!
M7$ -D8X">/C-[1.P3V.86S"/>04F/0L">!JNG@]_L05SUA_=%FX]P1G G2&)
M5QQO0=:&Z</PX6N<CQ\P!@M(.!M' @5A$<$CB.P"7D&=C1.!L2VF!V]Z<T-D
M35C([)QAQ@&)%X>-$RFD2+_=]ON@3P8).BRD7\N_";X7D].CUH(*6I+8\C(B
M8&S;&?52'L7W/%Q3C5]=I^<B/Q0@]=1=D7K',PS%:BHEPTB[/-9[)P%I(, .
MO).VQ#RY4@@[J6V:Y9!TA;@XLRTI]B&XN*9N)U2<3E:_^*DB+%.-@J"CH\W7
MM"95XAC>E(Q]U%9'$Q4M&_DT<P>CI@+\?6&:J?5.^:1N&*+M'<R"Q!N:PBO\
M 2^PD'4@RHO#'PM"/U(ZEQ8/! Z),M\N/RX??&91%E8600.7XS5=1[VN4KF$
M>PG$=V=.Z[?D\;J.738KR OD-B"?R?T /F) '8=]&&0F <-5J/LJV?LE@G#)
M"0;Y;![3^@Y#<J\_[\)O(>M!\<5QO:_Y]794Q.><OVK*A>KX([1[W6.W^S*/
MCZHG2]-/D+948:\H>#(Q>-)RBM'5_MBH<HXYZ<E1/*V8 )K""N=-_9#NB7YB
M_8;>R'+GZB^KFX3Q?*7E+4X/IC:+BF_)9 @>)Q<P?V=1UE9W!=/_ECA),Q<G
M::-%6\*I\TIN>@%Q_KRA>)5/SOC=F8>X/.F]1]=+1F0I;>QJ5Y9.'=KSJW!S
M\TCDW?%([^[YR]/#WX2[YQ_?GW_<=A^?GX2:CA0/'U^$[C.,]>GE^>OC_6WW
MX5[X_/AT^W3W>/M5>.G"%]\>GKHOPH>?3[<_[Q_A]X]YW%.CPU19*GN:>N=/
M)FY$(YE;;W!'%<0K>'H0Z&\\6;5R3E:M[,EJZO'TS&?E!?L=L5KU/F+=4%(@
M=:0FC)R!X,\B/)BD!WS3&=S@A$2@9@)/3".'GK[^1Y7&.G[)<E58[B6\YQO\
M.YE-6*XT^SW:=9='6K(%XK@DT=)4$6B;,>9XD(O'FS-Z?(;'M7XP%X:!/Q'>
MG,#U9Z$ 7P[\(&P+=V#K8&C+L[QU"N&97@_"/O2%Q^SP,45@$<^/_TGZ]/"8
M7</"%F%*/&>,&UEMH;OZX'Z*65EA!Q@MS#0 WL#'X+$>/>?$ ^AP>9+X"UY"
M<^KP=#8:P8-W.7JJ Z\*(;P:#\_!=Q.FB.GS$XHGA/RO<(5/E\NVOAY.,>/#
M3T"?,?XW==PZ!5LYBT9^ ",>K! _Q29AA,']*U5D\6%V&$,-%J>JR3@7Z]-/
M^B5BB7IO(-+SVNG8Z<-O[VXT6KN/+7+!43C=9EZ]'LM[3'K(<_&1-&.EE&PS
M5$7JJ!)GE- ++_&P%C#E2GKTB*H1OPH(O-.C7Z6F2^$(2Q!"\J %R^>/.W>B
M"XK388D411'+5^J%]%V(?*#O@\>'H*$9Z6*F9UOK0-\A,-4@$06PX9,PRS^+
M8L?)F-PP?\P);"*M**/Y%%U>D$"VO"$(-@2\2R*D"441)+.0C2BNVQ*O4<S9
M=_XK"*P PW;#$5SWZOL#AG98)0%R#$[<!=Y>3G YIX @?&&)G*%L0GXA<H.N
MIH]N,%9Z7@A,6_@\"^ AP<0/R*HQ<"AN@)UH@,4-X4_?6Y&(A F3.2UD;UB.
ME:BN+5Z %6 /9;L5_(S(: _LG3J=3V3,!0711TK0^_ IB$TA"3ND!H&:FW$7
M1?M 5(/#9"3!Z2.F!%:MQ[[%"<$;P+NF+)0(5PQMP#4'K@Y]G.I\N1ST$FK,
MD@'@D]L-4<Q_C:TA TM1$HS)*]69/L2;J(E# ;PHH!Q*A@ONU "( Q?$4"D/
MS3:BKV8!XY(>XI0H<R+[$*;,*5,!]2+B,7W:(R-G/*3P(>"%5["_893FU!2N
M"5@.UQ!4"BP[NPCL! 51+4PVK$1$P43OJ+K&+GF+N0.9?IR@4V!(+@51Q<Q)
M)J GP%HLH%?.$CZ4X'T(A1SAD!'G!-(,_(F_)V&H"(__U\P%6P.>@!_$X!^J
MFWS07>PD9(T;#L%6FE(=L96R7#8<N(>+WFC(_PA+'\R2P.!_R0!F\GJ+,#0W
MVA(<:%(V.-"D;'"P?)F0>MM>40%[?,Y+E3K'"BFG88&Q&\:'&_UXQUT X?@S
MK0!CCVC.M"2*_I0J@0%!9X[5(@.[@9X'4X-3'^0[0NE8R@D#0J(XK.&LECH;
M=_J9W\X44(]M.X?P(L^?P).BV,RN#AB/XIFT+40Z]8K,[%;.<-;\*+HI$#*X
M)=@)?&M? *.-SYI%H#O^35^Q_DCXXMT)!@L+%S*W W3(+*"\RW30P*<:!FTV
M3,29@FK]16T'T'*CT-CFNM1\<WYA\+0,IMBKYL_#M>.3)<>'\DIL!1S4_S28
M!>\(R27>4I0@UD45G806Z\)!%YOR!L/Q_II2F:2 VS%X/;,8L+B=] LMO QY
MZ.+%M]VD5QVL-H%Y]# *HI!59TX_L.6C9H/9K(4OP^S!8#G]&$()G#E@+-M#
MKAN&)%IXM:N,.73<8-6CB*OLT1?%M@07MT<H(!?99)"$>.O<@R_'Q6<R0^<$
M;L6(*3G!72HCZGC1FQ+ +P67H,W$W_>!;?9?O5^?GI<AU6?&KG<)MQ: -;42
M8,T:Z36ZT4'7CX(TJ=>1"B>SLGK9($[-:,M*1<4-E;8B:9557,Q_2>E!P0]J
M[0952TI);5,SJJA-F9MK:->C0N..!Y*;#[$O9>[YYXV;0<CUK4^ZX](FKL\N
MZ=LK9ZC94](R1ZBU9/,GGVU]TA.\OZ(OLSM5-L]Z6[[QI5/VY\L])>H#!/W@
M))*U>J\'E;AM$'&*&L^=E^V:2[DM;)6KG.62.-KS(,SH<SZY>,C8W\E(+2,W
M8"?A?B5PBG>'TKLXGW9AL;W*=>QP?R6\6X_!;;'_23@#82<I'LLU7G6AV.<7
M&)LS]0,BW&-(6UP5IYEPYY)XQ? U6_'"VHR!6&HR6N8BL8T,^% 6MZBIK8YJ
MBW9.C^7: Q?KTYKR8#ZM2:A3NDK-10&%3RMX6JNCV**1T]*'"QXO);BSL;!/
MR;,Z-19F#C"NL1S4/-5]:()\_51W!94 3RH&V(Q=$F75J(D87&B:V,,L\"\L
MU[>DDT*P+O+:*:PDG9+5S59'MD0]1^/7WDNI* 69%VH]W+,^,=-B6WN(:37.
MM-?+M"5]BEQ-NR7OO%JF98DGTN&^-6>AVKBEIV4A70(6TD15JJI+,*_>D8_U
M(+\PWTCX3L+]_-/Z;DB4-/637UZ6Y;>D\%7+\C*VJ-!SU6;M;7U]-D&NBVMS
M%?5)N58!!U41%;.!U2(XTY['N\A5M>HIF5;%XA/YJI;S4"-X*%?QG92'-&PY
MI$N\]^I1&>!NA)F21/A!O(GK]=SKWD3M>_,LUV^IJ%LMU^NMCIX?VM?>W//-
MA!KYJ"=E6J/5,43+RIYQ<9Z]%IXMZ5[D*EK]E#QK%BI:SD*-8*%<M7=2%K):
M'5.4E(,]5+Z%NHD!_G?FO3KP&$_XC*V BG-=FAF7E33VH]DPR_5;^MY5R_5V
MJZ.(2E.=5+Z?4",G]91\:TCHI,H<0WO%/%O2P\C5M>8I>5:FNK::LW[.137R
M4T_*10IJ/LW@$-2C,L#O6&\I' G?<>C7O8WZVIMF6?Z4&3,&IJJ)JMI !Y5O
M)]3(03TISVJTIYZ2[27#>?9:>+:D:Y&K9T^9WF+H5,]J==D"XQQ4A7-Z4@XR
MJ-;3K9IP$"]!<9P2%.<?8%VONM!M^_]SX%6(+/D[\:Y[R_Z?T^Q9IWS*)"?L
MX&1(?,/^NK>M*HB'3LNU%OJ6ML5Y]GIYMJ0WFZMI3YE69=C%FI;S4"-X*%?O
MG9*'L+L&1D0<^'Q4!GAY=\-0 -IZ_>O>K.^/LJ><\BE3G$QZRJDUT3GEVU8U
M<DY/RK,*\JS1Q*P\SK-G@CSGZ=GJ,JJ&[B\RN/DW"?P\=E6132Q%5GZKR3XK
M9Y\J_-)3L8]6-_:YT$W3.\=S!@AUYO6.X;5.#L>?,J_)U%L=6325!CJF?/>@
M1H[I27G60)Y53,ZSU\NS91W3/#U[RD0J$RM'BEH.SW(.:@0'Y6J]DW(0EG$4
M9?G@:F:GV3,]/^B@KE=1POTW;529[E2]TB$YMW-U_+Q4H\PU(5IM#=JAG8X*
M^VW&;*\I;1,;9":-MC\%9$Q9=MD7\R^KK4GCIF/2\A:G%_KC651\2Z855#4R
M;6\3:=J\5-;7VH*G_AT%R1"FSBNYZ07$^?/&&<((/SGC=V<>XH*E:0^$CQ]N
M*6T+WE]VREM6Y4B4VK')^-WSEZ>'OPEWSS^^/_^X[3X^/PDU'>G3<_?A1>@^
MPUB?7IZ_/M[?=A_NA<^/3[=/=X^W7X67+GSQ[>&I^R)\^/ET^_/^$7[_F,<(
M%4E6<1]S96%5=NS9_M(?D<%L3)Z'N=W;'[V7R(EH[_#GX>>D _CW6!@_.VY
M6\)UR7K'8=/>L>/PQLD?W0[3]7WTF'5$4@;DU0G05A7TC=[<?_C=";&E&6M7
MW)AVQ+;95@VK;#=B&722H5;3SC8>0#4]=O7*&O_*<KGYG610>DFB'W]05MLV
MRCWIBE?/W/RH!K7L+;-)L9@*AC&K>JVPKVR]>GSF;US16$M(-;@\M'/LA='G
MJ^OTW+$;S0MI=.D,KZZO9Q,:VN8OYN_.&/R_X_;_M2^'7.@="[MV3+Z\ILB<
MAX['0]>C-)NP2"\C0B(:IG_U^S2,Y *_[-C@!/V1H,JBL/P_15(TWD5^-TFY
M)WTRZ9& DA (IU;'6_6:/I<M+ENUDBU^Z,23DB_]JMP%E:TF9*/0YWQR(WA!
M?R=97^P_"$\^[MF$,# G(@/<L?]?,GC%+?W4T<>G7;3H7OC:'>ZO1#WSP6T=
MW(EPKV>P;0]]W_,G;E\8 6N3[%G57MS=F-E_#\C4<0<LS"2_IL0+2<@^.=Y
M\*,16/W^+ A TD'^0U(-09K=W3S?R6QR=_,JT*;EBNJ&.6@J2VIU%%XG]ZID
M*7\!FBQ+56 8RY5IS94E&4%6<DUPB54B6R_"[M[V^\$,7.K$Y'*CRHWJ048U
M.4!V2:XVP+1A):L-N&F]8(GBIO4@T[I%HK#5J%2KTN:;X>OTRPU V=VAL,_#
M(3@=$8R7>1]=?&T6V6II><C64^)5NXA,I1!3BE.E6-%I0$+<M:(@55B+,!1P
MY=X0>@.QO^",Q\ ?"0_$(:^ L?!XR0_"^\CMCX1W$BP>"+8<6,\1/!()/2=T
M0_R([[CS/;JW0G?0XE-]@9[6A,)@1H3(IY?1!4;PK$^I*[R[T4@@#KRECXDI
M))@Z 0RQ*4A9NVWI:EFDK (_2%7!6RU%JP:+*+=53:_;H)2VHE2&VE252@95
MZ?)5-:A*EZ^R0>'RF>7QK2G08[V.#4\/^FS"_ \&=9[L\/ER#K Y .#T (#C
M@TOJ\HQZK!'G\=/S^(FJ49YAWE]8$$3SWT.,0 +2]U\]>,+@D!._#<?4E1Q-
MUV>?Y="=R]*S;OJVYLX%$Q=YL^FL6^I5YNW(Z,T\/2R[_&>J>G=A0GOHYFC#
MA/;PG=.=BTF5$UJCDF/*ALC0]3@.J<U2[CUP[Z$^WL-B3R9/&9D-/25MB/J[
M,,GE+L1)78B-DFM5<AI["CFZ7"3UNC^ YYA5XYH6]S>SON$)K1_UN._P8#<B
M@3-^[L'L:%Y@U_]!HEG@W3GAB!WEEZC(;=G%%;EK;R;K R9J.!N?T!0<AXUM
MJ;+"\C5D*FY-KD,,3VA-%L[74A1_X#M1"OMCQYWL)X8RMR:<C4]H38[$QDK=
MK,GEGE8^D2@V"KCC&,,S%QC,,^TUQM!(%59JX,\0:)E,OV%;&M5N1E9!EJNQ
ML(697+9Z">>:%?!"O7<M+T8'5+NMV7P=<.I@-U<':$<X)FVN2%ZR2Y-.,^%^
M#?=KFN[7;$ZCL_6+.')MKBJ]-DW O9NS;[X4: +C"$>X9Y++DZ;C;NE,\\5Q
MO:]^6-2AA@1TF\OKYV3PVN:Y,WB+.\[ (I,^=9A2V;KN<MI)^FT_G7X[3*8-
MHX]IT=1>-""G;8G):JEF-%K;4LNE0Q8]2E?;9LETUDV9E95U#C&MZG)0JQN4
MO35;-\>2UZ;N9?)S(IP:X_B++:H>@"98.U&I5PI30<)I7/H9%*&P4/'"0N\?
MG']K-XH:W5% R,T$KAN%PH,WV"F,KE),E$L7DUUXIEEEU)=)E#NF3C9R[@4U
MR::!.Q:4G1-\:V.=^ #Y57P1ZGT57X0:7,47H097\46HP55\$6IP%6^J<5!3
MC3/*1Y-QY8[KA<*'L1^&)/R8SEEVO46G W]* KJ3<N'M'S[[ 7Q,YMV?"Z]
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
MNM2V#JY;UA!Y+'/_3G.ILN_/\09799Z5;._J6IQ.)+^PL\6K2*8J>P9]7(^
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
M?E#[2B$%R8*;3V V>L'/2[K3=2J;^&]J> XCBX;=P*(A#2F%?,D"4++>1;X
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
MKUSYMN5/D9?0!L]A1JU7'SUB6I#'!7YV@IB$^ TK&I6B-Q#965P78N&TI$U
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
MP.'7ON L[F_GS#6%.,=S"]SZ+N51WW"?6TX9<Y,3EFS/AJ! _\N&*)X.F;(
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
M;ACX$]A3J:?3SNK+>RBOZKB,,U6&8-HD&B>4]IY..T!G/:BS9L5C(#B,IKY
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
M8)L%4BY*>9X$&+&KP2N")<,6BS!RAT"[F*HY<583.Y:%IS@T$B&;)XG!"<A
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
M:#$&%#TZ*QS:"3SV!D#2#X1#1^BMC:%0D-%\CT,!Q!")]4[&Z^GCOJ/^*"\
M*)^924NZ!UR(( 3[XU>Z:5"1R*QCEPFG=B"FL4'#H4;JX]L"S2LVVI$R3W9.
MN@C"J>QU8^Z<B$@?>6E*=A--?P/R/: 4RXIR%,G@"Z@G-_)O2W!8\E<1N&)Y
M0[5^(W"GKP=Q .+6L'IFKJD7WN_FWO^KO TLEJD!MR8BHEOGV(T3M!V*O:_:
M7-;4>S/?*:YH)Z2J ;^$",TR$+)J0-BF:!P\T/310BZ\EMDK5*XFXYIL\OA.
M:JW+@Y!K*&1D]UGGT2(!!]1.SLG?K*UJ+I:7-N)1\N4R\J?-\:(!&%&**KCD
M*%*=\99*AV7$<]&YI;YWS.P&GO$<.?B,R]MX<\$](*+@ \PM&QR>M#D?MLM+
M)BQ.-I_%D[(A]?W6SP,9UHV8T!'.WHU4MD[HD.>4BGB^_?"HWH?^15K1LO3Q
M-K:'PR4Z!<=+]<H%!K8C&H@)X,]MF)T:Z2?$0"1G5:(%WHZ"YQE,W)B8M<@
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
MI>&:"]L;J-NYCZ[_E=J7[8B'*B1Y/I[_JB7/<WGHH]T7WLZYIT(2Z//-I99
MS^6>SZ&($";VV$70^\L/6@0]EXG>8^J)^UU8J#)R:'6!KI9!%X2__]D>">,*
M$WIL[E3SWHYM<.X\8;SE'"MJOA(9>6XCL-(LX1$[?C+WB93[\MBFF.%EJS0H
M>=L>&7C ?]@*BJRRLNP'+<56%]D#JSD&-N% KCH*N?3#\_CA.,32AR3TW6B\
M,YZHB(AX7@K,<8B(*]_!$*2(<HWSN(L,50MAFZ[)%/2.'0?AC(IKN%5.FIF[
MR$$+966E2[A=EB.ZB&'ZHEFXUESL]9E9N%D#UOUFX7XG8FZ8"WM[]=NG\[M-
MJURLQ@N7M'S.1>FY+C&KH-NJ.68H1FZ$Y6PQ]<=T$F]F#.R$6PFF#2)Q&.R;
M#9O!'4ZH\Q)W.9$ ^'1S(1^@IEV)#R_1][(*OE69]-]*M,8S\JH/(Z&Y76O4
M=X/%WH07FMOE0*_\5*U>;^_H2]UF;R=?:C=JK49C%U#S)57#X!F*LPW,E)(O
M P&T&VO@NYZ]F%W6ZL_GM:\"B5U6GY^NI%.5;;FX_NW3Y;^-B^N;S]<WQ5+!
MG-T_9XDU68SN B9^OX_MM@G%\Y'Q*\'3E1$UO\X.0%[^&/UHW& CY]CX>\WX
MP_4\$2_QJ#3S/I=YUWGM6V"LE(UW--_LCV]*SAIXQTG-,*F.YV+LBN%B4J=F
M%\TNO-RW3Z3^+KU$FK,4K;8V%?4Q*"]_'XRI^-%.0MLXKQF_VX/W@6][CA;B
MVE;<@!::<;3V7[7<?X&:-S*+,1C*\@/!QJ,L"D<@)3\. _ TM.6H>6?1<ERH
M65EB.:X$'%UU75BB.^/]7@\W5E\/_]@/G!G\SSB>>+_\+U!+ P04    " "\
M,J)86/<O(XL2  "!T   $0   &-G;G@M,C R-# S,S$N>'-D[5WK;^,V$O_>
MOX+G+]<#UAL[R3:;H-F#\UH$V&R")-OM?2IHB;9YE467I!*[?_T-J:>M!T4_
M&EWE L7&$F>&G-^0',Z0U,__GD\]]$*XH,P_[_3?]SJ(^ YSJ3\^[WQ[ONE^
M[/S[TP\__/R/;O?7B\<OZ(HYP93X$EUR@B5QT2N5$R0G!'UG_'?Z@M&#A^6(
M\6FW^TF37;+9@M/Q1*+#WN%Q7"Q^R\_<$79_^M _[9(3Y[1[?.20[NFI>]SM
MN^3CZ8?^R<@AO7?CL]./3O_0.1EUB3,\Z1Z?'AUWAWW<[YZXI[W>4>^TYP*A
M8CH79\*9D"E&T#1?G,W%>6<BY>SLX.#U]?7]Z]%[QL<'A[U>_^#7NR]/NF@G
M*NM1__>ETO,A]^+R1P?J]1 +$A=WQOY\J;C#QCZ9PS_3 ]78WM%1/RZK.-$*
MWM07$OM.PMN5O"L7,R+ZQ43P_D"]5X)ZW5Z_>]C/D9HI#[N]HZZJ)):2TV$@
MR0U =T5&./#D>2?P_PBP1T>4N& 7'E'(+Q7(O):8CXG\BJ=$S+!#C'KY] -"
M"BPZG3$ND9\C'&$QU!467"JRHPX*@?W"'"RUO:J2 HKJMN7*'Q!/"O6KJWZ]
MGPNW<U!?:B"Z8XQG5I*S-*'TZ(E-#3)6VC\]/3V8*[,KKD&A)>GR7?5GMW\(
MX%J(+3/)^K+A5S>FVT8=TBYG5X>8;L,Z%/:R,ELP4>K?8M-J)%W6NAH1I54U
M-"-!G/=C]G+@L,"7?%&G2Q21Q#]L.L,RLX!SF)WL*I"E27ZM70674!OI<7'U
MQ]HRB>/:R(R+JS\*9&+?9U+3JR?1L]F,^B,6/H!'JO><Q5WHD8SB.2PW/Q:,
M4_J?,\P=SCS#H'8PXVQ&N*1$9.=6S6#"R>B\HV;8;CQE_#;CY#W4)"Z2$[ \
M#JC7(($(F+1T>[^D#8I9J*YPWA& @T="%36Y_2X9V;8?2*A/_Q:M]_#0MO5
M0KS_^X8[V+-M.) X@;>.U2OR9WB/J'O>N62P-'C 8ZB>>O[M\;;,K=-2T^(Q
MSYAK:H:?>OJ_/NJF:XDNTI1(D?Y\L$JPPBH0Q+WW/^F_5WMW1!P5J2!<T4]M
MNN7N5$@6/8SU6*E=7S"/NFH=]02-T.ZU8*-[, Y=-5%7[48^1CP. 82$5@.2
M\DQ?",1&*&6[QVITR:;0L GQ!7TAM[!RGM;N*_49&M$[JH_>$G\4"MCC6*3V
M!PRNHIP02:'F6P=UF;L1X>/-$$8_+LG[5TL1O\">6I@^30B1:PRNR^1&S#Y4
M81;Q0B&S/1Y2;-C?*G@9D?JI/E+[GI0?W;"8W'CL=4-W)65CQ.O$8C0$KDBS
M;3M2;/0T =.=,,\E7%S_$5"YV "Q0G9&Y#[60DX!E^7^3Q3RWT.8U_FVW!0S
M;R.XIQN!V^*1]2F83C%?  1T[-,1--^7 T>'2ZD_?@ =.I34'%YK\C*!V>^I
M%3H5CL=$P(E"-F2LX4M9HY0WBIFW"+FOY/6!,Q\TX(1S3CV0\F1&//JK>  /
MM,RD17J_P93_@KV W!&L]&&A^V)2H_X/5_6O^"#-"&4YM0@$Y5NI_]7X_8(]
MU7KLN[?^"Q'2 A S&R,X1ZO@*'[O0N<OP_8= L8HP[E%8*E6PRS/:T\D60(C
M ,>K &2H6Z3D+S 0U-5O5-:HV@^KJ@T)6Z35SXRYK]2KZ=TFI8V:_6E5LS%I
MBW1["S7WQW3HD8$0M:-B.2JCKD_R T3, H4\6J3T[YAS\)T7]T./CFU2/46$
M1M5_7%5]S 5EV+1(^Y=L.J5Z_@=O -:H:NU"_/HKK IZ(Q:G.4<E8:9]DR5V
M+<+DBG!PTJ1.CPC) POWL9C4A,1A;GV;\D$91BW"X)& RQ:01Z(TK)G6 Z"
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
M%8GQ) W#5^3NAK?KA6?FGAD\'T@8489!51=9@]/ZD.^V1UPIOTY54ODP*D\
MIOM"/#:#EA%GXC./C1?A"V,L1P_XJQ>"0*%GCETRQ?QW0U3A;>K2B#DZ3,G4
M6.Z*LO7N]1Q6!U2HED"S84X4U*F.7^Q49E-7CU5=%]9S3AC5^D+Q$!;*<K'6
M$%#(IZD#0$$2ZUKYZ3,.<WRU =4A;6JS3;<^/).YO/!@#BMMO06'70XQ,A93
M)YA/N-1?7Y7D?G1%9NKL?WHS01(F*VUR;?JFHEZZ8NNMN=+K-6H6N=2YT,R*
M!6K8ATGOL-<[R9Y\4!>^JD@2>*3*.3/E<#;DVH3ETN#CQUZO]_1'@%7HG<D'
M3J8P2!E:;J)J0LLVC9-GYO!!?(38QH'8L>BF+I7J;(D%/R",&NM&B^57<D'D
M:M!PQ'CF<*!50'+[PM]^P::.N*JK+&XXFUYBB4$9;#:I6)>5$S35';V>.^!
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
MY\!B"F@,Y>2Y>2VGEY$,R7,/=^;<67(\+*O:EL3O&,O++V$\J1*C$*<+$_R
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
MF @E.F61&1:8--V9F]>A],^(3E6XWAS=6?X=6"&W%SSP1=N"@4Y'J<C1XD&
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
M@DI*02B)OE2T3Y./%%AJ;>R?;E71/O1II:3>"T.0JT#N=0%,,H.*+(#S6H)
MYJPGUSN'UK6-IUP8L@^'VBFJ]_Y/+\:CV7!T/CZ_$:5\4T<2UF@H3J?O/X81
M%[_1;WZ<#A#KQ$H106L;:&-5CEZ'@!!C\%%@I..ZWQYWVZ[@V*\C]@F:'5#7
MO??]W'8UUV[\YFVU3$[<R2# :TL6@J5E!B4%K5"+F)C50K8^@3M=T!.O^V!"
M[PU([UO<Q:)>3^K(&CINF*/U"#)ZF1)TD"7)P860P&,I(G(E+6OMVK9=P1.1
M.]%U[ZU)MUW-S=>28RJ,*P9!UH$7EDD(3#I@1K& 4G@16[>+Z71!3[SN@PF]
M6]"KES2P07E6V^33X2()LPP00\@@I X^R)RYZI>]JW$^7E(VT-O:;JO]<NWF
MZT+G@"+!"""P-:,\>ZC-48 E8R6B$ESW:P%L!/N)B>VT>IN8NO\,LI]*P52G
M]/T69G7EWU[26J8'ZPJ\!YSN\\1:R>H@J6$L)I=EHHTRU[&Z'@/Y3QY!)R]1
M2&5-\X*R(TP-2T48ZVK5=V;T?BIN(=3F &2>H#$8T;*3GHO8'6=VG)*XA3Z.
M/35,IL0Y$R0M7JL2I2=IU7*)2%:PEL7YK%HWYG^0J6%;Z7S#U+!M9'_LB3:;
MK.4I-6P-!9L0I,N,FUVT>^R,+9KE:+4 &4T!E7($CU[5-AQ1JBP$QM8C;8Z?
MJ3NFAAT-4;=1:N^I8<;D$E()4(S4-;U8UWIL^B.6.H<EV\!;I_B?<FK85KK>
M*C5L&T7UFQK&BK0JV0C:VER3CQQXEQU(J3AS(B3!6S?I.=G4L'WXTTA%/:>&
MF<PB1\<AI$S0 CIPQBG(TF@=918F/36<[H,^K934>VJ81%:L<G4P+Z]Y&YXV
MQ9SKG+* V='N*%EKH^F44\/VX5 [175PL?7;^8@$\SF<U?/U,FG6"Q5$<"!T
M,J!0*/ E<W L2)Z]+M*T/KQ6X7C$G-E;+1W<2]U=Z+Z,6M-7_S&<?1R.7H_P
MOS!,+JN<!]8:H9D1X.9$MXBUQ3I6MA>1M5 ^M0Y@[8?XV&^C]HF?]JC+UCU.
M-X7^K,QPLD2^;.;QY[A^,;U:AXJY*&,=!.=JV__:STN3_Q!RL0$+2XK?>^O4
M&M0ITNZ@BFO=*GFK=5Q 7RZ$2(0WEH+!T0,P =>UO0S611EKP2'CBGN6%>KV
M'+P7UQ,-VZNOH1>PPU(NP2\6\_/X?')C+=P4%E$Q4$K6$3J<; MO$R23N13&
M>-2;]8EN#.R)BQTHL*$SL?U:+K$OES+\<O.]"C(;6^H8%:8B*&[)+\(8H013
M>SS0=XMIS\5[<3U1L;WZ&OHJ.RSE OM VR*MEP;(DQ*UU$77 709K/!8@@]"
MZ0X.XLOG/S%K=W6L37;KH>V>0<$QJP \ZMJ+)A+3B]-@HS0L%I6U:ATL.96V
M>]UYL#OJYS:/3/.DR5\Q3''Z>YA,0LWVVR/?<<TG[9VJN G"1EF&M2X+<?[
MESA-D^'G)=@E0Z37CODD(4J%H(0W$$52D'/B6EF&UK?N-'T/I'WWE=4?O\A=
M,LY$EJ0%95PB&XYQH*_I]?"!SDWO11:MZ[GO@--7UF!+#MS<)5I)^]#9@=/)
M;/!N%F;S3_L%QQ\FX?/'80IG\ZR.G*N]'SW969HD5%(![UD Z:,LJ"-JO5$=
M*SWE&F?HJRN^W G@4!F!S;0[;BWEAC&G.:@%>ZY#6EXR; )JFW2^^RBP#DB_
M^7@-%37N2LJ]44 'XK2WQ.^BB>F\IG,EE8$A;9LQ:":8?7BJ7Y/@UK?FMQ%N
MRT#S^'PTFWP;O/MEX%C2N4X:\4J2.QV=J-W<$ P7VM*ZI!9W;>Y33'_],/[R
MX_(3%QI>?G&EX*OG]><S-!3\>"^IM;ZA>C<^GWV,X\GX_,/'W\)T&M+'\RG.
MKD;*(0:-10,66]T>S\&SVE ^NE2"=AQOYF:L"33<\Z 'K<K6@NP@@^O-9$S&
MRNS;F[,PFCT;Y5J+\+G*X/FWRV%2A=G$N=)@,F=DO&8%/A!$*Z7,FBD>FM]Z
M;P#K5 RVKC310;K66H@5X$7&R 80.ZK-V #>84HNFJMV4^KLJ9<^]YMK4+7V
ML61;H-"V"LIY,4^&!L9,,,PH)7CK'OT'H\X]-1#'P)QMU-$\3\$YQMB[_SD/
M]:YP/'LSP4_#Z57BH6)6Y1"!95Y[TM6XJ(H9.-<\1B]DNADT6'?=<>=S^H]!
M-]?+N!NA-D^,$O9.:$Q;;@.MT>L"RBH']18%G$062HR8@]M,WW<^Y]3TW4ZH
M'9P(KVGA838<?9B;5'7@WR 8I TL,M"JSC^VQD*]Y #DG$QC&5A@K7L2WT;1
M/PFZ#"+O*>4."H^^1_0F?)OG'0^8-8))XP#)TR)_J 1B8R'2>\3(D4NB<J>Z
MOT!RROK?2=H=O/M79)3<Q'J5"4X;.G0(#GBA-0B"4R>A%,-X\VNCDWS3=Y-I
M!][B]Y3[=1CB\&PX^S90W+@HR;3(HM84B$CG350)C+7&*!D#;]YA9 V4TU)\
M"WEW4)WS.\[>TEY3XR//)A@&5DM!9DL!]-;5490)' H.P18;M""OQ;;>X&]
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
M6T>).ES.$^4/1(UC,EWF?_P[3F?#T8<W.!F.,Q]DB5E%GD!*.JF45^3N29$
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
M]&@6U^U5KN["8M4=&! W,@?O>+18\>LR,E.V++0\L:2UP/Q(M8Z\[>$A^#Y
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
M;U?RVWY?EXUHC8T %4S^OX"%*BI 0<HAH22# 4X8S3E%:6#4]\D0WL1BV2,
M!AA<@!T.-OW;3#DX+K,3\,5.>I^#);QB>L2/_N.<K'D$>"X6&>L\2X);[:=>
M4JH-!7$<:O5FNLPLBLZ2IE[EV;[FW+V@+40XY)"*LYA'>1I 1G$,4<@RB!D)
M("D*3N,P3%ANV[3@*+")U=ZN3,>A1\%Q#IE=1'W1;:?6!I5)@V:5TSCM3"CT
MUW[@.*BYNPZ<)/I LX'3[SA61]<5W[#UWXFZ]*P?=!,#LNPCA8LHP#AB10$)
M5UXRHM*H:1Y#*@0*LA@+00++^NA1@$9?[',JI-]MED6Y7&K?1E6 WSHT0$67
MY<V)'O N##23=0],<9W6MN)J1'3KSUF+%1>ZX$)A WIT0(?/!>B[7>B^M3UZ
M'LNJC=C@J[!Z'-B\I=5&A.\55YN]Y:M#4=\"Z>_E^O;UIEE+E51O<PL6 <ZY
M*+B  <L3=>RK6HNH@&&0D2!)$6=F%QY'^!-; K^L))BEE(VZ3=TZMV/1."^-
M#82I.&1M,QSJ8M1C WZ3Z( >GT'*T90=C8Q8,5EOHW'HS]SER(@UI_L=F2TS
M<UCP'2EK?<.Y;)K-75_<T#IGWY3?2BY/.-V#((X"AB,>P#2G5!HVG$)*U33T
M@&1I3/,B1>DLX3]3C"=6<-M@#N]@@H=2+ WK'N;;MHEC>%-LQNRQ.D5$-T=@
M0,;%+E[74Z)[3[R :)PMUY\[ZF:,[^\CNF;+?F]1-&O /J^XW:^E:-Y+Z((O
M$D&+5,019"0G$''Y3YXQH48/9RG*$4U"OO@F:EH9SVHP FRC2X;@C56*1.-;
MV>@D#G5M^VT+'Y0: < WM<H(7]\*<"_JLK+4^H;\/><F? [/IKT1;VU?Q=H=
MFJ#%<^JK\3&^3'I%W@/Z J[*QQAA=F4^^K9E;%!WPF</B]>7;Q9%D 9!FF.8
ML81#E,J;,46(04KRF#(N*#;+;QTN.K$-^)JL""_)"KRIEDMRO,S\.-$G8G:.
MI-A)L*:"7'1$>/!.'4)[)*^\?[P5L/ZWG7 ]6FZ>6-(! K8!HT-_<RQ#VPT\
MZV9"7-)&7Q$702QO52)(8<PRU<B:A##'6$!.HQ2C &4BH%8%9T=!32TB+32P
MW"%@V-[6@$MF)Z0?VNUDZM&@P9X'7WNX'D-"IXGS50YV'-"\A5\G"=XK\3K]
MQIE1W<=]Z%[K@:?O5_V 0_F M-?%NE&F>VOJ+Y?5;VI*TX)$/$@P#R )\TS:
MT"F#.&?R)Q83%HJ,(V$U=/1\E*;6!^UTXG*EVVFJS.B5M 5KL21]@G2/$2 ]
M2HZ19/==L8PWS\)K._UCWFYSMR';@:GJV19EL,49;)&^ )=W:IS1!&'MLQGI
M._CMCM#SA,C/9N#10/KY*[OZ(CH0NL#FBM2?:IVAR+4?Y$K4VE.R8)32E&$,
M*0T+B**,J0!\#E$<IQ%&81X$5@7Z9F GUI5;)$"C:^3N2:W58]N+C+?FNO)
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
M*@^9:T..%YO,AL$9U^K#T;8 D8)'>08QR>61(#)Y..2H@#@.PBR*1<;"R'I
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
M0L0S8A/;J1T&0'0H@%JES+8_&_JGO6_%N!YZ3@9;QJ'V3]P+L,53];X'+:9
MH7H!^KWHL04*77#@.'^F?>$5TV5E6L&^R/UYA.$+WB?S3C@3,;,]E-3JZMQ!
M01R';:L<W_#F:;<S$9>V+7NF6M^QA*.ZNZM67U3R\1O5HDRL>',E:IU!*$$L
MY7_X@D1$H)PBF&0)AH@+"G.",QC'<981$40ILAHA; )TXK-J"_=P_VS+A&LC
M+IK=]WSSQNZ8::$##?X";!&X4)VFV\1FE9+48N&Q^,."9E]5("8@YRT'L6#"
M7EV(S;MNBN*-J*6F4@V#/U9MJ6F;_K((0I*3&!,H[5H$$9,6+Z8XE2P/$I1G
M84[M8KK' $VM$+9@U:RAKK+Y1(:/':/,Y-\'^78R[T*YPT3;<;*\3;0] F;F
MB;;CQ.Y/M#WQO)O(ZJE"ZJI<BUNQ:N3RTGBH[L0O*VDY+,O_$?ROU9*7JYN?
M2+E2YL:GU2#IJBX;^:<W\M=^>O9'L?Y47)/OBR0A-.)9 B,14XAH'L&<)1RB
MF. \2T01<:M*[ZD0G5AE2#!@LT41W$CDP ]+B=Z?@#Q#MZ5>L*AJV)"E .4N
M%+F=G+TFW^WTRV2[:J:?7L)>V>FW3Z_?*Z.%K@>YFQ>[\BR]/5^(NJ?M:  =
M$> GO:F*CC]= "KDLP)<\O_>M-MX 4@AOSC@>F03K57EU!SVI&HG0W-653TU
MLY^J^LGAG3D+X]5#UXU<?;W?U>(?&]5?5A<UA0E*LT*J^31D!42IU/K2SF.P
MD)^F(HU8DEN-AC. .;$"'X %6[A.-6 F_#/3KYZY8J<JG1CB/O?B-(F^YU^,
M0'R>.1BG67!T'H;!JXYVX[VHB1H@IVM>^G8A#Q\E:;K?]'H1DBA-."T@XTD.
M49X02 LJ_XF#A/(L9IG=E,B3$*>VY*H5[""!JL<%++4+=FG0W<:1C886ET_F
M6)I.6UYTY6A;Z'H@;P??H^EC2JHO&^8DO'F-$5/R]ZP*XQ?/39]M7B])TY1%
M*?BKA]?5:ET3MMZ0Y<]DK8R4AS=D+1Y/8U]0G,L;(D:0<!4-3?0(QXC (N81
M#U,:IH55B>HYR$RL1]X6A>B':K4H@#=][YS]"P<84.*:F.NP'V9:9RXNVRFD
M83+O#BW5FF. V&/F=V6S8)+QM3ZXY#TQV &59TH9=F?:\63B,]9T4XYM==7?
M2RZO<E*T[W3 ^+/X)E8;\4X2__:[U"0KLGR]:=;RIE=_V"9)!5)=H"A2(;6
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
MC 5S"U4%#@H-%ZC[HF7,V@/_#2/9\_+4,KZMD8,:.[!#K\_J44@Q;;D.,+T
MC[:@11,H/#T&POTQS5=XW -&\P;-_;%P+Y3N<6F7&3"ZIYHT3G4TP7CLR_"M
MB4VQ Y-/#%MQ'B!P7,V<1YN=MCA EK<0R7$Z'&>T/%IJQK$LATAX/(GEX!/V
M<G EJDM]G5H^7)%27]PLQB =?GMBN;AZ^PGT4($"^\318CE9[ @'3@O,^<3;
M"<YY=%O)T#AI3K)T9,G99&J<I*%LG7CRW SZ7;K8AW(EWJ_%7;,H6);QA!%(
M<Y4I7R32_BY" 4,2<AQ%*8]$YM:]Z "TB<5S /MB4"8+OBH$@,; N0'1(=Z9
M&=#>.&(GLV<QXXQ$]!$BO2><'X+U3(GE(V0?3R ?>\DA:^"752U8=;-2Z4'7
MY/LKL1)%N6YT:4B;AGY=R<_[(1@J[!MAQ**\@$6>"XA8&D <H@B2."[R!&&I
M!1+C+ )K\!.K@R$^:D8-Z#%2C54D3MLZC76E_[Q#S"*T;L_S<:TQ/2?MU,@+
M9:)%OL*DS'3+7YB J79)#<X\&4URL%]UOJ0'9XH?)4&XKV)?=OQVM2[7#^_*
MI6A30!<YC0L<T "F,2<0"=UH$A/(P@*1,,]#J<A-ZXV?+CYU@I<&!Q2\+FW:
MO,)XCP_C"O1<ZNS4HP5A5L7$QRAPJB+>6VRV\N%C9 SKAH\^XW;=^2":1HA/
M]Z(FJG[S@YHG^:$DM%Q**%WHMWFS$9>%_!XK5]X[:8@M&.8Q%0F%/(X3B!!-
MH+2,0ICF%+,H"<(X-:KE/PN+J;UZMZ(61 &TNP2Y<=3L<C0YG^S$N45')<)T
M" &-T078XG2ASF0JM!?D FANZM@!4(CYNT^=Q1=/]RPW'&:]?YW%IJ?WLO,6
M<YQ.>QC:ZTVMAY'F 8X#E&*(&4G4%# .<\X2&(8TI$&2AC$VZE)G!F[J7,*M
M4"WU$.9E!]YZ O4)IIEI'G^LL%,Q8ZJE ^YQ6*H1D;YFG8X#FW=4J1'A>Y-&
MS=YR]</2]6!$:3^\]%U5JQ&[PP2.-C%'Y>4L,,GSF.4<8LQ5F8?(8!Z@$ :)
M8(P(FH3$JF[6!8G)O;9T/1B"<W%@6K3\[%'F$FLSEY82.5M_KL,>F+IYI^6L
MK?=7,O7+@*G[0YU'TL%\^H7=N>+-7>R PLQ>9'<F[3N7SUC+,95UD#/QJ7B:
M4;'(:90G7*0PX()"5!0"$B02*"*<QU& LX197:W&P4VLK(; 5?90N<LY(AJ^
M92+J..O,-(\_AMCIF*>\>)I_Y5&-F)'H*V=T'-B\":)&A.]E@YJ]Y=A;5')9
M2(.(?U$=*W3T:I ^OTA0EI,4)Y#2.(4HB M(D@S#+(Q9RM,@)KE5\Z%Q<%,G
M?/3 V_8<%^"/?PY"<$^Z=K[@7_X91V'XKX/.#W\!* BZKAVJ<;_RDNM"1?4U
MNP#R4Y62*"^.RX=_!:MJ^V33;"0470&[H\ZRT>GXQI@I$W_LME,F.TY_:3FM
M03^J1/+8&=6(2%^=4L>!S=LYU8CPO4ZJ9F^YACB^W(KE4N6ZD-7# B<Q084T
M%"+5P S12#EB40PE!D3^?QH'A=$\T,/+SQ/FT!!!!](VT/&(&Z:A#E<:G8(=
M9N0YA#L.47%&P./1<C.'/ Z1LA_T./C4M&$/Y;>\EDP5"QZ$.&)$0"R*$"*4
M%% 57D 2X9B&.(UX-DG(8XO!Q,(HOQ'9-(&.'0_]!CF<.#-M@$.'-C1.\\<V
M]M@Q<UQC!_]%QC3VV.,:S]A?R%$%5:L;51JK&D,T:[WZ(B%AP>)0P#BC#**H
M8)#R,(!Q$F',<)RRS*K#P@$8$ZN1C]4*LM8!K'O2=% O5*]E=<G20T*:M;H
M_S'"R46<I=J,_V.4!!=9'IRX!(RX-MO!/'_<7\%2JQW8%IHB'!'"(&<\A@BS
M4&7]!A!G+*!,"!9A9E=Z=^;&.)72'=F:\]ECJ-;/(]E2<4M@4$$#[PTHM=?)
MQVGQI74/0)A7KQXG<4]SCCSJIAM?;9IRI?KGL']LRJ;4W0G4CU+K=GV%PS!E
M:8PQ+#),I3F&,DA(AF%.@SC%*5$W'QM->1+BQ'JSAP\&"%R '@7'5LVGV6@F
MNEZ98R?(Y_+%6K2-:?4DZ*?AS2KVQN0_50+F+UJFZNL3BSTLOOST9E$@)/*8
M(\@$+R BF$&",P)CG-(D)TE1&+;Q&RPZL6!_D;8DN:]J =ZHUO>&R62/J!X7
M4E=:[.1P2\9%1X>/W.H#F(\X,/K'6ZGJ?]M)U*/EYDF5/D# -@'ZT-_<3L./
MXK>N.87<A*NZ6LD?6=O1_*I:ENRA_?=:?%^_DFC]NBA$*!(64Y@PPN7A6(10
MVJP!3 *2AHPGG% CKZ K E/?,<1OX#$6=L>B-3_-3LDIN60GK(I!.U2>\.H"
MM'B K]U_%4) 8^3Q&'5EAJ=3U1K\K(>L*W.>GKG.ZWCO8O-1K!><9X*B0-7&
M)@E$0<1@+B_',,Z4RL%YSB*KL8GCX";6,>^?9BI<@)7MB*@3_$J*. [S,(,\
M8$1EJRJ/<IC I$A1E@1Y%-%HL5;3AV?GUQ:HA<I9@]>DKA^4PK$8MVO(*S,-
M[(\#=OIVM*^._.9\]#G$RHS(Z?O@?)Q[+)49X1;=:SXZ#YI2W0<^BV9-UEK;
MOA%2P]R5;3/S-_)#T[8<8VM,K. &H,$CV$ !-^_*,<J&<;'UR0$[@74DWJHU
MAPEE3@TZ1A>>K4V'"7G#9AU&S[O9);^L:+E<"K[KW-?TQ0T!CS&-&(,H47W_
M<<)AGB41#"(D,ASA++>;[78<U,3BV@,&M?@F5K:GZPB'S$Y6/W3;">F6Y '0
M"8H^3I/FZ2P= 33K.7J:X*=GJ,$;#N?G9BG"@":AZHW%JWLUSWU);HR/SL.O
M3WUJ2JA @87AH[YH'086Q^81Z@U.S/,)MSPLQVD&7Q5X3SWA3A#G=EX>67.^
MHW*<J$>GY(E'O4R%_EBI@Y<LVT9DBS1/<9AE"621NH<F-(584 (C7*2!( E+
MJ9%!:P1M8OD<#F#H6O<"UK4BMRY^&F.:V;'IC15V$KL_L+F'[*WYG!6%TXQ.
M?@+K.4<D'R;[Q"CD(R^YB;B:G:S^]_8?&PEC*70CZV9=EZJAK_K#Y8H__F#P
MY"*,B"A84, 41=)6SG$(\SR.8!RB) M"$B :+NXE^A7_LB;UVDP1G(63C70\
MQ<Q84!1,G2?$U ]B!QV0-:#BIESIN1U5 5H0=AKDO#UA19'A,(A@)"B5>Q(C
M2.(DA[%(BH"(D$OUW.W)VQ5_D3O2X^5G/X2J]GB.G3#3];/QUNXL4(#DK4GQ
M<P!/=?7N40'M(XKM3SX<ON'OR/#"*$]'RGFXS'KD>&';TR/)SZ+^AR(PMKG;
M+(D:+#,HSEO@#$O6!1R&,0H@8ARK<I<<RO.+H%0$.<K$8B5NU(O77B)-1S Q
MDM>\E=<]?(QE=P#\44]^?\,/CO#Y['#+.6R;) 1CS4JO0PS&N3'#S((C"+R4
M^,T)!ME,)#BQDD.?V->;9EW=B;H?:=5HG;C4ZS:WY7WSL]"-]DB>)804,21<
M&=$9XA"S)(8YIQ$6/ @1I<;=80V!3GR=[K$ ]1"T1:M24]Z-*YRI.&)I2?7,
MV&( +K7--, !?&VQ,$S4M>*111/7"7CEUKK5#\_LNK5:$C_:H]5TK?DZLUI2
M]Z@?J^V[,]16_E8M:"IP@+" 0A!IU&41D1?=5$!49"@/DHRSS"J5WQ+^Q"I4
M?J?2">LJ)?_,C+4)N6*G1MUJ*G^KGJFB<L>*YZBGE-!?;C7ECC5GU5(.EG&P
MSBXQEC?"+__8D%J\JZKU52WNRD;TAR;C<1+3#,$P"U07:$)@CL,<BCP4"2=9
MDIG5"1G FEB18'P1J%XI&CHL)'APW\&W,#9.L,O #O/'!#N]T='? H8*,NA!
MNUA=)QAA86SY8XB;C37"&$\6E1F%HX;4B27FLY_,:'ED-AF^8I\"\67]ZU7-
M/M773?VV69=W>M]_%NO;BN^*#PSS(4S6FEA#Z7XW\KM7,B%9 *Z_? 8[5$"+
MBWF&A!%SQO75%'RQ4UHF+ %?O59@V!+ME%-A!&"V! L;<H?9%E;O^>A8_;IJ
MU@L<\$P/$ I3G$$44B1-DB* . ZR-,<X2C(C/]%Q$%,G63SN3'VA.SJ<TY-:
ML\7L&G,>L7;"NW=#>3U&YYG=IH>D3-)A6@-XQJ[20P+'.TD_>G**[M'*_U&N
M-M6F41-JR%*U)5&=7:^JMG YC'Z63]PVGVK5VD!:@R)-@DS5'8<H5:Y=G$.<
MDP!&+..1O$[$29KZZRMMB][$XJZGX7UK^PN&$;C3L-5I=B.1LQZ/X7EGS+3&
M\_';3N,8]:'>H0MV^.I&U*#'6&_4S]N-:M&>JTVU*SMG:6!MC=P+:FWMREB[
MIM?.4!P3UZH[J5&TG?Q%-W=]KWN[+J(HP&&4"8BS5%I)+,PA5?82R>75$@E!
M<V'5;^\(G*D#:!IJWP[W<??:'\I5]\F?++.9CK LP!0'810J1WJF6H<G$'-I
M6-(D*43&@[0(8X<LOO,9YYR?]VJ;@O>*+'73+^],PXEJWHBD#1ZJHST**20X
M#6 JC_6LR"0-E%BGV?EBF74"W=LV]7DR;ID=MQ[HMSLW.S'K>B&W,"] "]5C
MXMHX6;Y2THY F3?9;)S4O32R$X^['0U?V*W@FZ7X5'RL=&LQ,<A%T\!^694J
MY6-=?BO7#]?J$-NYAN0Y@6C&$E@4B$J;G<60AGFJ#A"189&G\@IN<X"<A<W4
MGK<.-Y4?N\5NF,W9^J$T@J#'T$XCG+<99GIC-A9;.O%<N N^:O2FZ:[BA5&>
M]-5YN,RJU;RP[:GN\[/H>7T2I?ZE73VU--^;DFMW2K6ZKLFJ:9O1APM,4Y)$
MHH!%%A80Q9A#DDKSD$2XP%'*!$ZL+&H;X!/KOVV7P $N^J*\PP8,T''KHFC$
M9#-%-Q7K[/2:+ZXY]UBT(=]SNT4CT,_2>=&&*<>:,%JMX6B<*3OO%6D$5QWY
MQ:K1  ;UP:\>=H]T*1^7JAY3%1"L']ZOI(K4P>[FT_I6U->W9/7I7B>B_4WK
MT/>K*WT%DFJ+13G'(8P0D7:<2#C$21'!/$<X(7D<\SBQLN-F0GQBE=<"<[_A
MS;9_#&$<9CF%6:R]$B* -,H+R(3@(N=%* AWJ-EX4=MX=J7'[V8W#0WYE[0Y
M;C:_0@]J_,"0AD<=$.@#&#[7$0(T)1>@I04,B &:&K"6Y(".G@O0;;W<^:OQ
MRD;[6\+,N^#K0C$7VO/>/6;>C+UKRMSP7<?E5>I@:-Y)!JIHQ,]DK>(4#Y<K
MB?=RJ>9 2)!J2M]@/ ..2(2*!$:<$X@PC=1H'@Y1D+.(!CPN"JO&DPXX3'S8
M=QB4HM%ENFK(;]/.TW0<X^#"9C/5/S'S[+1XCPQ0\@C:\&F/D.;D#J5V).<$
MLR+.8(BWD7KV&,P\9\^91?O#]]R7<M-8/]4J.%I71;E>%#2*!*-4[D&80!2Q
M#.8X22'-(IJ3#.&0YS8M70=K6VD8^_ZM&A*X(_5-:5E>/*3?3$4X4F4G^BU!
M+11_PGP =4]".EQY5N$[0-)3H3KTB&NTOZT\^WNYONVKT;:%(=NFC32/L,@9
MC'(JSW,F[XZ4\PS*XYSA2,013JQN_"9 )S[ W_3C6KOVC6V3D[XXDHM[E5QA
M>88;\=(T8.N70[;1VQ8Z^$V"!SW\1P5AWKL^VE#L+;!K '+F**\Y$_9#OA;O
MGAO_/7PST<&5_A)"EIOV1M,TF[OVLZ<!X3#/<XPI5 %@B'@60APD'(8H"].,
M!GF:6$W%\(O>Q KH[Z*\N977-'CY3=3D1C?&Z!$!OS2M Z)/@E_= )WTJ?NX
MZXM&&^'LB $_R4NC<;?+B7;3-J(\]QZYAYA'7$J/MJ$=^MUYI0:[.4_@V2<_
MO4>BO2#W3*%IGXP]'JOV"L51O5=2%4FUM%+YJ%W999$%:9)*6T]>G>0%BD2)
MZ@4@[3^<T0R',4?(JC;F (RI4W%ZB(!6*VYITAUBB:&B.X]02VVUI5$GK/OK
MWV% C2]=<0#"O )_G,0]J1UYU$[TU"SU+O/[X>UW=JM\OQ_)G5AD49BA!.>0
M,H*E;<0+F(N40"X8$B06.*=&!2[' $PM=!U(T,,$"JB9[!WER;C@^:#44NKL
MB#06NE.4C!2(RE=;89,_[&3LZ(*S"-@I<GKI.OG<%)5GATLJ!DW+U,<+&N*@
M2',!1:8ZXH0YA;A #(9ISH(H)S$JPFW(W-R;Z $UEVBXO3-2OP(VCXN;3-M<
M^-P(L[-W+KY.5U)VO(YLV#=1_6FN(C(KKLU2.6:&T0LJ%[-BH5V-F-W2CM<#
ML91_O?E)K$1-EI<K?LGORE79K&O=0OWM=Q7$%@N2<4+3D$!6A!%$*(HACAB'
M-,[S*! L#P.[-'\CL)/;,QJ)"W#3HM%V9R:/, &B1<7VBF'&5L-;AW=FV9I$
M'9\Z##2;'N, .B0\7DZLB/9U7S$#.N\5QHH1>[<:N[?=E,A )>FT%97[4HM;
MN;($\7[%JCNA5-5'L?Y47)/OBX('/,]X*&\_<2RU29I)RXME4$2<YBG+LB3)
M;;2))?R)U<KP,*]T*AH;X@.6$A4]YU2Y(=?DNYUFL>6UF8J9D(-VNF;(O#:/
M[Q$JH,4%_*"P^9.>^:FX>#W"16O-X\@+3RK(%OJLNLB1-4^5DNLREHT+^]GP
MK__Z;D$IQ20K(H@Q2B$*XASF!#.8YFD8BY"D)#!2.<-%IS9/?BOE)>'=_\_=
MFS>WL2/YHE\%$7-CKCM"F*@%M=WY2[;ETYZP+86M,_WZG3\86*7J1Y%J5E''
MFD__@%K(XE8$0*#DOKV<(TI5R,P?F D@D<L*+ZAFQ;VAP.-Z;RN&X<;AS[+^
M'[Z2OV-7K2 N:N4=87W$>=(_WNI>_VFK=SO#35,@[X@ FTIXQ_YFMRC?/#W/
MEZ^<#VX;.E\W2N(\2;!<=+-$ZD(28YBG<@V.PB1"N5R!$3&ZHCU)R;."]'1W
M+NS,5M/3(.FMFTY$-U.JHU)[N!TX*YJC!>\TG4F7MK/B[B]BYU^XM(W@(!I<
M;MS_RMF#W,EW&:XEKSZ6%95[R?5J<%^?YCQ/,*8PCN)<+G."P(*J.EIQFK(L
MS8HD8G9=!LV9\1[LM6F_-^#-MON@!=:Z;LMI$#3U5QX#KSG8=XR!+6=@RYKC
M*IHN07+>_M""E3?JCF@/VNGFB1>,:=FH:MG<OG[H=D!]Y%O3<$;%235A4ENR
MLS2D(HY%!BD.I*D300"+*.10%%CN:%(6)"@P,76&]'WO;>278/E44O HD>>7
M=EDUQ5;/M'E$S,R:=8R GI--'Y2KOC/K-M!N8,P<=J6R0\)52RI#ZM/VH[*#
MYJ 9E>4P9K:H6M6SK_AG^;1^ZHX!)(M33%@.8]45%,4D@GDA!"18%"P508H+
MK0W5P<B>[4='2\],'(H];@ N$L9,M3LR#L\W)YD?TT;YTD 3Y:>M%AZ.-XE^
MG12CUYS3#UB7D-QWTFV<S!1EH3QV8)CE6091H3I&XC"'04J#+&$D25-LDI$U
M0LM(;VR#(G8=]F7G<U:.>_,*?R=!TUMD'4%AIG6:/G>YO-;UJB3KNHF%KI?@
M#KM.(#DKO;N"@"<I35T4\)S(1PH#GGWE0B<B7[V4E!]/;]]4Y&JBFZM&A89_
M5Y7&ORWKO_/Z.Z?+AX6*:)AE&<H3FD>09UQ5!!6A-!F$P#1/!,6(!@0;;=^]
M<>IYH59!'CVIQNYL:F#P,U?J$T^8H4/T+:?!\);B6";(MF+#U: :89<@HOB3
MOZW!JS2%6Q:O5,_;M4OSYQU-USY<YWR^C0_8%]PG?<C>"%KT>ONV5KO%6_';
M:KE^KE3F8;GH&;U;/J_;3I8SG&<QRN11J-GI(9IGL,AB#*.0\2+"*"L"I-WS
M38^F9U/<$F_R8\L%J!\YX/U=R_.&!X/F9YI GKFI]0./F8ELZ8-; 3J,6A;
MYB[JSB,^!DWBW.-DURRNPTONDA]VOE-'OD__X:A[G)GHHUWD-(>:KIN<F6P[
M7>4,7[5IC;D7M;N-YVT2B38UA:Z%-$GW?RY5-\[J/1?+%;^7T]!TYZPV+JQ9
M'A=1%B$*$]6L%\4\@UC%W":!/&$33$4L]/N;N^7-L_F-8-RTH35JM.D6? U3
M_':0FIGL#9] ,MH491KD)[09A8-Z5PVWJO]O.P.@91@T''>_VKK0WVY^3/J%
MOMD\V2T9NPDCJO88J ;Y)$Q-V-.@0%DS8?*)Y8+)8PA> ;*N 6FG31JY5?O;
M*R V?:5<K31^D!WO:^J6Y(1]4+U@M=LWU0\)\Y37C]WW_EZ^.@N3-"(%"6">
MQ%PU?$&J08X\)R0AC@5*:8&U$D;V!_8=5-*1 HJ6?F;KCNCCB\@E IFM 'JR
M&"6P'F/<*G%U9Z#)$E:/L3],5#WZ=SO':>N%O<<_U9E\0<MYV98&QS_;SE\/
M7/Z25[,T)B+"!9+'9E7++I3GZ8*P%,H=H$!Y@HI$;[MG2->S&DDN5JK'I"IW
M4^.?O2OSJOD@W^.K%].,*EU ]=R4'F R4\X;(525Q.WMBB0-ON.:@UV.KIH_
M;)EZ=>]D-,3"D<M0E^JD#D!#*/;=>::OF_<RO\=$'EE77\JJWJO4I-G _.0
MGBU"1Q<HPNH[+4GK-RD_+?6XMCL3V$RWA[)ZJ1.E)9=5Q_'3HT[69ORL8,/>
MXN<?M@S"EGI<U27]H$SMZK6+B@E%2M(\I3 ((PH180CBD$10KN%IDF<TQGKU
M6T:I>-_AMC2;=>5Z73\N5\9=RHZCH[?R7BRSZ2;XF+@>TB5&Y7(5FWR4QK1!
MQV-B'D03CSYLX6N]5[O*]>JUR;FX9JPIB(#G;3?$:_K/=;E2S48+S.(T%C 6
M@533-,$0JZP_DJ<AP3'*&1+:+E0MDIYU=DNV;VZ[XL_RV<?FSMJXG8D!E!H.
M4>< &2ZV'?F^+>D J[Y#:<^$<W0,W)'.4;+S,KI R\Q;:"3XJ!-0;Z3I?'M&
MDNVX[,S>-/?$W<C#1OTJ!Y;#5=V_OI0+'LX84^E@N(!I$J4094T2* Y@2*,T
M05C^#T6Z;KF35#Q;PY8NZ"A>]3\ 11O<+@S<=J=Q.N_#<R*]H<_ 5G C']]9
MP:P<?J='G<S[=U:PH2OP_,-V!XL=U6\\[KV^JS">KUQN4-DL"P,<DS2!"<T(
M1$E.8([EQSBBF* P2)A9:I,.4<]*V^;>+,6Q#0RN 95\F)U!M(#4.Y*XAN>R
M#4S#P'89[J(-6R[<'5=,9'9T>M$B.>EAQ@2$_;.-T;LV827/S_.2-KN['\^<
MED(>H[H& #^6\W53*+H[>,<12DD0%C!K:IMD80)QEN4P%R'.&4MPQK%^R(@V
M7=^'GBTCL.HXV3;SJ'I>3((1]"'5./?X <K,=@PQZIG8M/8 &S;.NSLN LLD
M*L,+:)81%Z[ ,PR?,(9@/#1"?[@)PQZ,9=P-:3!_W;)PG=SEL5*-^#*(FU#U
MB3\NGW"YF#&:,8%3"I,\S>1.+(UA04,&:9@S&J0\B?3"&'0)^K:I _([Y6H5
M!^"/E@=-*Z&-H=XFS"4RAD;T,E#,Z\MI2NJJH-PY<M-6D-,4_J!DG.Y[EF5P
MUZ3B_US+->3F106 J+ND&8W2. Q9  -5H1+E@LMC&,.04I[Q+ L+RHTZGAXC
MXEGAMR1!0[.[CC14\:/HZ*GUI3*;J;*QN.9E:4?D<56$]AB):4O.C@AY4&!V
M[%G+[L2=9^##\NFI;+J'?N=*Q\O%PU?YSZ?U4QL"T_Z]YFP6LB3DI""P*%)Y
M N(4PQQE <SS+*>,)S$)C1PFQAQX5N/;=5W5>,%47:;>;])":MJ1V!A:/37W
M"IB9#>A9 5M>KL"&&]"QTT51@0U##EL1VV+AJA&Q,?UIVQ#;PG/0A-AZ(#NS
M]+TKQO^;I*%*(=PN!NV-]^*2J+1',184DEQ5N X8@SF-$UB@1"1YB$-,M5PR
M%K0]FZ*>$Z!8Z6I"@.5"JZOWQ;#J&2-/8)F9(0V<O/80M #!D?TQH3RIY;&
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
M QMFP%/'C?*GB"XUN+>J@&TY N_6SZ!>&A; MYL!/=OA'5<SJ]*Q [;0?AU
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
M]=T3;H60;[DS.B9H.+(T6B0G-2\F(.S;%*-W+_; W>'5[:JQ5ZPA=<=7C1=
M]7TDH6I0D&*5$9\G$2RX0#!C/,ZC/(B+@)G9$0VJWLW(T"<'GG'7*J3QQ+'E
M?*Y:OSQ+A6F\<O9.N9.@&OOF7 !UB8M.TE?)$BT'72\#R4/KNO/BK#LGL7N?
MW4F*;^6Z.P?!B ?O[*N6 3CU(U^I:X(5?Y2' VF&VEW-7D_'>[F\5"HZ>+F0
MNY_FT[SM4<;^L:Z:XH!R*;H5<C-TIV*&Y!_J>E62=:TJ==\O)??RD5E&B#QD
M)1ABSA-YWI+[&$)R!&E!!*)YP01*9K6*!M<S/)-R;W1:V\B@K9XJNI@^JE5\
M>$ [:%5;;[D'>,.^:4S1I+.N9QM_V;DTL[*-&&!'COXP^.Z+W.G^Y>JP1^Y
MIN8(.9 *;,6Z4KL]M4&6HDG[W0H'AM*I+TPKG\-PJ[>8%E=17)/R/FUPV%M,
MRT',V9LPX301Z'-S7[X3R3]#<D(B&N8PR-)(';0+N5XE!<R" "4TQQ2%Q&25
MTB<]Q1*C$EB>APDLZSZ!I>P9&N0!.4D#.@:RWJ+@!SHSBWXF[6?#RR#MQWNN
MSP@ ?G-\CA'^%7)[1@#1S.D9&\'.Y/S^XW[5%.E_?5_.Y]L^-=T-E4CR+"08
M0Q%QU9E<&IR<H@!F(LHRFJ2!R+')Y<,X.<]W#3UI0"1M0ZMQ!B<]2^%.>C/K
M\/L/L)%=41XVEG)W]6<FI2,3<(;8I&JO)_B^JFN^9:?>/^@C9^LYOQ7*="SD
MQ+UV]</NFWW+)M,^2+*<A0&#<=I$OO%(-0B5^XD\9R(+19PG1MDLNH0]JWS/
MACJ2](P8[QBT0=2S CZ@,;,'QU!Y'=3S:_@ 3BL3V KOR$QHDYW48)B"L6\Z
MC-^W-"+*A_=^/XQW<)WS_G7[2)?5T\3VWCZK!X<A?=^7\[D\>:D_S@J&0X'4
MCB)6/GZ&8KFWX 2F.49"53_"J5'Q,#]L^C90;6#NNW+Q[_\6IL%_UH_+M:HP
M;AJ4ZVF.-"W:FR-O:/^:#(GW!QD2PRM*=8 :/M>QW69.7(&.\YWP8?"'XAYT
M[+LTFE[Q=65B_3 YK4'V"O2!^?9+[:+N1M</#_7-JG&<73_5%LV-=@?P;$6'
M2B@)K_B#BG22Y)<++NWIGI*/!SH9H#)N'9T!8NC<=XB%;5NDX[)>VA5I;]2W
M:(IT7+ 3/9%./&RW"=N$^6VCOII&!*K3V5H2ZW*KI5F8L2"-D@(%,&61@ AC
M!HLH0S )21C0(HD1,2H.I4_:LYIO0QU5J*BDJ5D_T@)#O8V/'V3,]%T__O..
MRQ%<WKN9B^]HKV% >-+]@SD@^WL"BQ%LNX7+$^.:-XT3JTH.*-7QL[K47[#.
MIQGF@I,4%Y#D60Y1EE&(*4LA9@)3'F>(DM2L6?@9BIZM1T?+M$/X.9CT+(53
MX<T,1$<:[-"^ AUU#PY@;5F=M0<_1V_B[N":XA\V!]=]T44AHR\E)G)MJ%]G
M>9+1N ABF$8T@RA'(<1Y'D-6!"2+B#1(2*N=XADZOL\ NZ6,P+RG>TDIHRU(
M>FKN0'3#W?Y^,:,O9\6^L)K1@5!>RAEMJ;QA/:,#4<<+&AT^;E/1J*K+)Q59
M)X_S@I?U>L75#D!^^KTKF]"=_N5O?O!%N5Q]Q0O<^@MF:<$CGF0QY&F<0)1@
M! GG" I"649QS@G3:A5X,2>^#P(]:P O%JJYK]BPV!P+FGHEZ[[8R;)EL_EE
MU3 *GC:<FM2ON61JQNW'I( ;GB\V6&_9:L\7\C/H.>L=HLTO6^; U\E!-BG^
M,Q'8ED5]-J#;?[/_PU65'@=(C5??N83 A%5U'."P6RW'Q8"6?7SZI:HA1OFJ
MQN6BB6VLFB([U3<)2'N5.$,9)XA0"E$J=X:((Y7=%V-("QSF:4XRAHWJ]1K0
M]KR,?.>JS7:K4_;YQ298ZNTB/2%D9O<W3#3P;-B0G\O%7NKPEAV';8;,,7#5
M@\B \K0-BLPA.>A>9#&$9=# \H4W$=8?.:D/XN5X'A=%B#D,PE1N5$6@"FT5
M">0%1CA(1$ARH_([H]1\7^'WM %9+IAI;-$H3'KFPIGP9@9B*[>BZS>F4$M$
M5Q?9H[2FO8_6$?O@6EGKI<OV#2HZ/LJB) P1@DD2R\U!F"%8%$$.DP(1>=ZD
M.4Y"DQ2$P=A&&FN>8]!VXYEOZ=DM^/HI I:BV2W83F/[CW#N>)F=/#K_B$BG
MELG+X^NM8SPVZ??75;5^:L\!??N#_UZJW"2UC*OSPHS0)**H8!#G)%47-1$L
M,AK!)$KR%&6DB NC(/T)>/;M'^K[1+QLJ$X43F<P;9J+^Z\U&89;A,L#[908
M7>K_0)!!*Y"M+(U7ZA>(NC-'_JU#\ PX_M>(QS.? F?!>1:DS2/UCG2C^^_J
MCO/5;ZOE^MFX":7F<)ZM]LDFB?]= <4,:+C1#]S3!6G<$'O"Q\R0ZD'CH9ND
MH>16(7ZZ-"8+^#,4>AC^9_JJ93#@D3KKA[9JWDRM_.E6[)=4;VH&?RD7_'/-
MG^11C@<$8X'E44Z>YQ .(XA)QB *!.)QB"B.F5'$H%O^?.\6]3LH;'E6N5-;
MKOL^"6TMYC\4YZ!AW;"IO.N)U=MCON%TV>\G-_O$85FYK@,8:TJ4#*H0]^4M
M]:;&/!#2#X"NHB4=<S=M2*4?: _B+CV1N<!KT"X@U<T_UZJ;^8(=;#>K[18&
M498A&J4P28L4(E$4D$0$0Y'Q/"<\33@R2]\U9,"WBUU5%SMVCNSTW>)P;X*N
MP4G=$V869K+CY'^#EI?&(AZQGY7C3>.E:+@\"IN0G_Y<:P'.T4.JS3@6@6D_
M^%S^Z>$WON K/)=TKME3N2A51V$5K][=6#&$2!84%$J#DT#Y<PR+$#&H&OLF
M$4UB$FKM)/5)^C8]+0]7X*'EXJI1)+S#B$%XDQZ*XP;'#S:&)J8E#SKZ0#(
M=CDX?PMH_1W3C_)RCI)=.)?.E\A5N):1R*-Q67HC31> 92393J25V9MV>[9K
M*K\9ZZ8HYJF:<]WW-R@BP4.<PS@2&40T5INU*(<X21*2TY D7*N?J#%ESZ9R
MP <X5F+RRU@SG@LQU=NB>4'*S'!>WW[X?*(@IH>X"6.!'6V_].E.NN\RAF-_
MPV4^@'63F*8MRD?>_OOSXF[%GW')/G+!5RO.NH./-&4-'VTO])D\ <8\)"G$
M* \ARE(",6$AC..(<9R3)$S(;-%DA+-[HY8Q%MQHZ5#1ZM !3]KZU''2-XZI
MFI5UV5B?+I#-JD.#Y03HF2&/>%K9I$T3GG<]1ZK0)NBA[;AID&WM^O4XHC:]
M8BX Q%W+&!LFINX<<P%01QK(7#*:^;6E756124N)."\?8EPS9*I"(9,6!W%8
M$>2MRH"<K_WAM.#';O3F]0LNYVJ[J')!\)S_OI :VUQMJ%UU'[X]BW(:Y[P@
M,,E"#%$DY-$BHP$,)8 ISWG*"#6)R;1A8I+@3:'"@IKV*::=ERQ0U5O5?6-E
MIMU[,=E78,,0%,L55"Q=@2U3S>$,]&RY;,AD#XJS!DT6+$S<L,D>I,,&3A>,
M96>I-A%/7YLZMLU5[*<5_^=:%=;_N'S"I31,<<(1$@*20L451'$ 293)CU$8
MX2@*,2VT,I,-:'K>* P(@PUE\$=+V_#:7P=!/2/D&!<SFV,)B;%1,1#2D0W1
MH3BIR3" 8-]"F+QJL<6?SV]^2ONC_*H?Y.;RH2FX;-:V>6P,W]O_^1QL:(,M
M<8/]_A@ &KM_1[(;G@5.B.VX,[2.<'9G@K&!ISLA:(BW<U[0>=[BJE:UCE#_
M5U?"<H^LKH!_/"Y7]3U?/36-81</ZL>VFT1S0SRCJ(AYD6$H1)I#)%37,Y0D
M, EX'C+&<Q('.@<'2_I3G!D,[B$M !S7[ E@,5/XIEE,\X\!-Z!A!R@FF@M=
MQ5'[:<"37Q@-[G;]PFEWT:OXN6K[%_$M6U>@:H"M%93*BSI7P#:?RBUWKBZ
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
M$J:84+:DS85O,^J_RL3N,&TVP<[Y=UK584*<V\54$50K) KB.&SCK"=@89H
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
M0XIA&H6)VJP3 0G*,R@YB7$2I2Q.C&ZF7!D8V?BW);/%$I3D9P72O53_+%=
M.5-U0"XV/X!Z7JR5;9#O.F=5 B;6I?H)\(;SZLFZVL+.85B_#3,G,J:.[1S+
MEA.P964&6F9TUJD^"<W B=+EF?<>:%>]>')*UN0G=52NRCET7L[K.&;D^?\^
MMB/_5NIDHX0M%N*K*-4W:G4O/J\VZO<:9/9FO7HJN.!OGW_;Z.G*VQN"7;_A
M%=W4X)OJ%))F,1>0\22""(5<13<8P0#'/ QX$BK'9Y6@'X')D1UCA^4:0;9A
M&BQ%J9RE9EO_7O^KFJKYT'"N,5G>/&ZJ4>2_@-7VMHML!?BK9=)_C!=L> ?P
MPJ_-SM<>O+$MOT Q#&J.P1O-\R_ZSQ5<]DWWI?W6OK3=%66G(_OW5@"/ >&8
M^O5U;S &B]->(XRHY*-;A3%I.4#]+19-EW&GR;C-KI@B_O6L,;8+7BS B2YI
MPQAS4 ']/M"G[)9^[(S8'M-+IL*Y80'V+3P=)*"!>'O(@":?=S)!Y124T:_N
M'ZP-[^#)"<SM8 _M3DFQLKI#F8UL[0)Q[2VL1U+_AG9&,E?S.EQN2J,Z(\J!
M*9W[U*69V.WMS%QR$F2Y#&! X@0BEB)(\RC0'=PB(6D4(VG4^=5#8[J\J_M]
M\RG5V&9:G01V3K".<VW;(XWWE.KGE[E"[1'Q? +U^*,7=U17-ZR=@8YS2:(
MT2B&2(0$(I['D 3JIS )&0[#+,N$58JTA];()MGMJ)Z!__.7((C  VE:Q\!_
M_D<>A>%_=7J*_PKB()@%0="V7Q=+H*M)JY(%_0V:Z=RI'A6F7L7B^;] L=D\
M-G/P5CNI_@K"+)RE:53]0?^<8&RVI'-G]]%;-/,:GMZ-G??8[^QN2D@ZE$=I
M[3XGGO_6[B-*+]7:?4[DGM;NLX^X ]-KU#/3S>SL<R,&CUV,]CV</J\;VZ!D
M%^&T[Z\X.4[[28%.X;2?_J!#T\V[:GY)61<&-8<2P:-<JO\'<\J%"B'C'!(>
M)) P&H51)@+)C;+<YPB,O5G5%*TNWL[JHM_,?$AHZ?(;X9I"P<$3F9F4%OTR
M%TKKUB2S+[6G?I@>27J;8$X]-UWG2P_7>^TN?9^SWX,Z.YE.WSZ)];,^Q5[=
MEZ9IF_,KC!^[=D8T6P"4#\@]O '[$=G./W1H@I8HL%&!U48\+*'3;MRS[&1;
M\K!HW7W9X--NY\OJ0F2CWMO'U?K]ZI&6\G'18H+-E<X2(:(<LCQ,U2F3Q3"/
M< 1#'B B\R#G$ML<,/N(351O4R4=RQ\"D+9* ,C5&J@_\J($*J14'[$[V_5J
MT.QPYTLOE@%U"\^GOE&B>*K'P+^K%:%OS*J)\;HFZ<VM4%^X#5F<QS.S/O"9
MB.SIQ-=+:M(CGXG0AV<^HV<N3>_6N_B<9!13+%*824H@2GD*\RQ5<3J+:$1S
M1"-NU<IT2&"ZQ&X5F[MF=!MMQ#B6@8PEQ*0:%Y5RF <H@RCF.:>)C&B<V4#C
M7*0->P@<77U1STO1>+L-)M.#+BE<EJ8CW,[JQC;5;2^Q<Y[[JO?57Y#@WI?!
M>W:[6?Z%4MO[PIW/:Q]\SK5'AZS%6[4;\V[DV+G_??N\^\@->=:_JC(3>F![
M^=Q![[]66_GZ[@=9UC.#-\I)2E&4.B_T=U%\_Z&^Z5=J[R+?Q:]J\5+#D&^;
ME>8)BD4L: ;#0.H1[-K494H@3Y*<1HF(5)QCUP_T&L0:V<DVK.A>P;6N6B[6
M#>0I7RT69*U<C%C7*71+]-/7H3WCYJ?7P.QX_K1B'E;<'YSN.E,3Z#/H?JX1
M$U1RSD MZ=[0E4I6%7V393.1?3,#'7EGH)48-"*#2N9J) /8M;'Z;/-Z3:_1
M6TO9JQ!JXO:U5R'SF>WSE7'GN&D_THWXUZ/BXL.3GHRL5JGZRP1B(L.80)E)
M!!%. IBG)()AG%.:LEQB@:QVT=-T1M[6=E1!119HND[->.?T9+BQ7"Z]I:=W
M$=S>T?:+Y<OSG:$RK2OJ%_7(-PQ\W#FMQX3@FX^*O>J^N/$7'WZ*-2N4EYES
M(J(L"22,8II#)+"$E&8I9#A&42S")*.VN;U^BB,;<$L?Z#=2ERRT00;8\F"=
MV1M0HG%ZSY]J[*S[,JVX9/7,)/67VAN@-W5^STS\$TD^PP==9P^K0$ '$->R
M[HBX6E:AR%K\4-%(U>];_;9M4\I1G@<<AS +9 (1DA226&8P)HSA"#'&[)IO
M+>F/O=>WW.C$V!X;;;N20=.1%ST;Q@3C:<\R5O"A.(<)PD[B>QL;;$=]XEG!
M3JHY'A#LMHQ#/=#1&.(OZOD?2NM14RJ29.K8$!.N' ZA$,DXASG/ AA%@8P3
M3)! 1O,SC:B-[&B.YV^#B@%=3QI9E-0,*JW?CWA7A9W7Z-6"2X71H#HLRHU\
MJL6M]LCM2V)7BF0J96]=TN BTQ4IF<JS5[%D_)!CC,5^"/ZX$-?RP_W#8O4L
M1#/9\DSV9U&],_73M=0E'=^7NK#]1JR+%==S&9NYVQFBG!.:PBB)$$1$(HC5
MOV$8DRQ.@X2AU H18!0NQX[7JB0SW4\R[Y)GL[90H:[O?T<>BK(&#6V1/-R&
MI8_S0@U#OI=^3>[7!>.\(?NH<4P-^HHM1^%QV@AT3#4?Q:FC$G.(9C_H^\^*
M0KWJM>R<WF^4B<QI&N;*3^>0B3#4X6P(*648\A"',N51S ,CO#HS<B,[XAU]
M?<NK&*C32M^K2SI.#)NB##5G$--ZU8>=Q^NHHJ8-KN5>?@UH^EX58A'5>E6,
M6UA[_%U9R69DZJI6T(/Z_%\\!;C& O=&N,.K3!?B&DNT%^.:/^5ZKR >2,&;
M[?QJR:L+R;HHJ.D(F#,I*.4!AK$(<^7R6 KS&!/(9);0- IY'%K--S2@.?K=
M0L5!"])7XV>OJF(&YM ,9*-,TQL&KRJRO6.HM=.6"VOEU)4>-0,ST+#@\Y[!
M6%YO-PW#%">^:S!6P?%M@_FCCA,6BF51BL_%D\98*M67I5"!5@,.?K]:E\6_
M*Q_5</ /0=9WZCVITR[G :<HAHG ZK0K10!IB /(8ARS,*"II%8#:ASY&-F=
MJ"]79CG=P%&?9MYC BW9>92:(5AQ!'8LM9B=FA%658EUN)L!S1BH./,XE> R
MU?B:/^#(Q;23!BY3U=%,@0N7<^Y59L^E.L]L%M7R9(=6M+VTRQ*>8ZG.<")B
M4D_14D>Z5&/AY$F..<^0Q$:5$Q8TQZ_I%<7W91/,L&?0X09TV#%$T+11IL$I
MS[^*[+S1NP&M6-\6V^C'NG/:IYXN:::^3%\NG=:FDALT7P\N-74_MJEL)UJT
MC1]]I;T<VO_7A]DYQAG/HTA"BL( (I1BB!&C4+G=+$JC3!TM\7PIONOY87>O
MJ&]C)X*1]>':^HX$L?'GIWLT:FBCU]:8T7G#AK<CK^R%_3E:+"J4Y29;^2=J
MH3A^%W^6/HD.Y_]_-4,<OY+).QY.L."V?WUY7!:L>""+MZLE;_%J4I;IRQD,
M&<%43QG214@I@22,6,@93<- VN0A3A$9.:;?D@14T[1S^2>58N:;+Q75SHGN
MI*S(C3 )K$\>3X[H)(E)/4:?D(>FW?M9>^0?9>J%^N0. _JS!03=^8?'^\HU
M-,] A7_VC44W+*(3!$[/LI-!X R+UH7 ,?BTXR27%@GF!,+&#AIESF@@A9 $
MLBP-(0JC6!U#XAQF(HY9)#!)93JOKSJ_E61=FNT,9L1MOLV'+!A_L=^2186'
M0S;ZJO:](JY-&\3AK,(_M9R>8J;4-,]I%DL!$XHQ1#1,()&1@"G*>8RR,$RR
MN%'JAR5_696V##@JM"[J;+2)1M&FV0[M7S]V#O0D[M#5'AQ3!X7(X]07*[E]
MS7$Q(SKM9!8K11S-6K%[VA6:J![=I9&GEH]B'L=!$/%(PCBA*40QBR&FH8!1
MQK,TRX3 $;9WO@=4_GQ>]E!-* \BFB4(1DD80R1Y!BE16W^2IQDFE 6Q2&S=
MZ<5*>D&_>:@?,P=Y@<1VGG [D+"AY!.UZ*0(WD"+]E>?&+/HI&C'D$6G/S9Q
MEKO)6G3P&S\MRW6A8EE6X\VP+)(!R1(8<$HAXLIX29(32 @*6)['E$B[ O^Q
M.!TY7V$"*S_QJQDY&>U3X9.GGK?)Y0[[>IIJ(\"K >HQ5?)+YY0'^?QS9)!-
MU>TM7VQ,T#$[O'JJR']:?M/+*X(WZQ5_9.7?B>:M?%:1[_J1+&Y7BX6*AS5'
M<R%Q$$=(H^82"1%# 20")U P'F*1T(R9P=M?P,/8N>6&(WV?U/($&J9 RQ5H
MV *_:\9 PYEE#Y:+_@WSU.-JU3*-/89"[5/=[BKQE0EWX&#:1+F[BH[RZ!<L
M9>?,N"CF'Y9E43[?BN^%KOI8EE_)O9B3,(FQ8 B*1 -@8A9 S#&#:<8")#B.
MJ32JU#]'8&0W5),$.YI $S5S,&=UTN\]?$AJYQHLA30V^B%)>FX5U*.U,:L?
M=C9\=L%)#'1(G-;Z!C]G?X/UI5PO[L3Z?G,M[]9<Q2QWXF?Y5C'U3]/9%>=7
M&'LC)^JA0FTI%76=;3EQJV4^S:)'$\-W>7Z48+GOFL@/?M><@(H53Y=ZP[(Z
M7>KU+#O9I=ZP:-U+/8-/NP\T^R+*'RMN;8UG'A_9%/?&F]6D+2;_GI%XV.H\
M"&MY^W,LYP@&-B#613/<#M><?(K;&:%.S7$[]]')VKK^6,WS(" 9BQ.()4DA
M(@A#'&8<AC3-2$!2)%.KB<%.7(QLO>J+DH[>TJ5T:7:V'5U#=B9_23O7'ZL7
M;>;:J>7E6KD4#Z^]D6NG)@]M7)W%'/;^=@"ZQ>BX[C-C[_+;_@L]AZJ;ZYQ9
MSX[;$]5@IW>4TG)[/RN@U\%PIX1QV]2["TVWDY]@?V_[/O5WAX[&JR@+@N#;
MOQ[)6GQ<K<J;M;@O-J*MZ T($AG.!-2C3B#*N<[_A!ED*:%I*EC.L5&[M0&M
ML???K)X&7E&'4I'7HXXJ^A8]>0/JZK<QSTJP,[M&_IHPU)1!2]H%87% $19-
MB?X4XM:,V*,83\V'9A+V-AT.+#%=LZ&9+'M-AH:/V&>LWS?O^Z8M(M+#+.8Y
MPS%5AP:8$Y9 =71@D$2,0489PCS+LB@S.DR<I3"RHVIIMJA1BFHUWL8\:WU:
M+\-IZXNEM?-(UH):9:Y[A7%*79]><;+<=:] W>1U_P?M ^8JRF#E(UDLGF](
MP?^V^2K*&N_9.G-FLM;(]K4?<3:\ ,T,>-K\!>BAB#5#YG&VD8:&XV_?RK$S
M1V.]C)",LY'<*8@W(C!9<&\C;C?HMWK.WM#K_/H5K]'WJDW#T*R/GQS]E-Q
M!)KOC&<D'#;+RX2S,\)3ETMFLEK9VWF1G*SKQ'*3V=)Y4;J6T_,I>SNY$6+]
MZWKU^/!ILWE4W]V/2^M]L&>)D2U'4P85:=#0UNW_JW*YLC&D/A4,6Y0GZ>U,
MJT_P$;8T QF=;*UOW<F,SD"XKO69?/Q22/WM$,,F=;SDGPM"BT51%OJH23:/
M:\&OE[="0U@I%_N6;(H:WGGWS45"MQ9* L-,4(BB1$"<< )CEJ6QSGAEW&A+
M'(6[L7?4>ORWAN;LL 9:W@ I._-5@<9K EMN0<6N*W:^CS?7[W->_'W8>:J6
M35UMLM/Y# R](O52#EY) YH/O'JW4;7I'3??!V\OA)?O4:WG<?)]$GF9SJEF
M!)YFZ6#";3L<[V9=,#'G6<ID& <PR2B"2/]7G@D&>111$LA4B-P*LF4BOD?V
M^QTNFG;*M7C0UZ[*AW ]5?ODY/;)$,(LW['A/O#ZWISE#N&Q/:LCS(GQZJU
MH)+H];1K6;Z"5]*\9<KUGZJ5R_)5^&[LLB7O" %SA%_013FHT2@T&,5!7"H#
MC$0619!(2C02,($X#%*8AGF4<1I)D5F-/G=C8^0MI!NOGD7IT"GEXJDH#4?
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
M_?UJ"3;EBOT3/"[5*VE^?E"/J>A*'5DV%9>6\97?-V;F!5_L/=BYR(H:K)@
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
M> 5H7.9Z?FEL+@-._QQ(7>8J]X;;94'2;1]IJH4^*BVU\!FZ[[N%U-A=0.(
MT3#'*<P"IB<JL@12B3$4090E:9HBBHT:,6T)CWXI4F.U-]D\K6,[5VVL0#._
M.X9:[)QHJY$JP=;R /Y03.P0@\:IY;65W9-C,R8[J9>R5<:AR[%^?HP1;+>=
MH3[S$.<B#DD$\YAAB&28P!S1'*),LC"FD8R0M*L%-B4]L@_Y=:WG:1T,1_,Y
M!VU/C69^9!SEV'D2(Z":V^Y0LJF&C)V2?Y*)87N$7]'XKU,*L9OE=7(%3[,S
M;M:K![$NGW4W<7FUY'K0SX/^R#S@C.% QI#P7$!$D(!YD":0)#E#/,E#E@=V
M,QK-B1L9SB4#%V^:'N"-/HX\-&S,JK-E.:L*9$7+RX43,LXKV,S;>%::M^D8
M-UNEW>R4]F%0:9?/QAB4?ZS)&.<)O^Q<C$&%#$[%&%[!I0OYFU@(IBRSZ6F\
MNB_-6XZ/GQTYT-"'1[)\!BWA;:NL39W06;G[3=V'R'8&[2JM94OP>9$<^W]/
M+#AAL^]Y<?8[>WL^YXCLMDU1Z%;A3\NF%.9=U<-1@0?,(R%1G&<(2IH&$(5Y
M K%N$DI%'@:"<!0$D16TVR#)Z?+##XH#6"S;VC!+N+=AW9EMQ'XU8F>O'654
M'?U*&0UY/8>X:NJI./ (^&8LK2_$MV&"TT*^&2O@"//-_$F':NW;+7Z-VK6_
MK\G]%_7\#Z7.H &_0H3A'(L$YLH?0)1F&M8-$2@8(3F3411@85R"/41M]!1B
M2QXT]$'%@,; "BQJ=P>5UN\"O*O"-FW8HP47>+5!=5C4)_M4BUO1\87JL:LB
M-A6WMS1X<)'IZGU-Y=DKXC5^R&NXTWPWPY *$F"F\6LQ1!F7D(I0=T+'&<8B
M2&ADA^7=1VVZ(.>F"7+>>0QRC)R;=SU<%-IT5.#1=*UD'#>@F=+"K<0V#&,N
MLO#*>WS1Y7E[8(?-]Y0D>9[&F$*>2@H1%A3B--+U="0/918+A(P0B7JIC%Y
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
M@5RL_MC4<\]ERPD@6U;^:N<0'-1LYB;&59Z=\]"A=Z6[EAM] _Q&,Z1"\5_
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
M5>\C)TH?(,N."R8")$!IWHX+ %!+ P04    " "\,J)8;1IV,0"C  ")X <
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
M!5^&=;A@:R)X4HH5#2Y)@GK@#$+2 7BLNZ H6HL69Y /OWTWB'1_#ME M%U
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
MQF[):.+(N>.Z!#!1U+F)M/-&&SPD8U'7T=ULZV2Y0^"R UGC]BUOCZ+6FN@
M7+>)I^TV8_8D%V5KLX-HZGA>#D6H(-#GQ&+K [+] 3-8W_(!')R#I=O![?,O
MB_F'][C\=-W">#7A5G'KR L+&3THGSPXQ0I]IU"2FV_C=1/(1@!Y@(P>0JPF
MIT3'BK@# _)F67L1K[^]F05:-/-<CR8^7Z0339S'$&1T('1BH*2JD\ZP@)$L
ME5!;:;+6Y53;Z.DA?FJ"FV9"[P! 5Y,=?JF)^6]K!Y37Y6^TO59Q38(2&(VA
M*-!%\N&=H2@0@X2,2#*R"D5I?FN[C: >PJ<F$&HG]@XP5.?D_4YAX(03W]D3
MM0%3S4_T@O9IHT"BDT4@!MV\*NWRW3V$3$V0<9 P.P#!S]/Y=(V_3+]@?D62
MGW^8QMDYG&MNX 2YLC;%!#H)"2H5"[%X!*Q)"B)RA:EU8Z'M%/40'34!3$/!
M=P"CEQ>OO>H/?LV)-;7'EC:0E'6T(')UTH(%3?)BDO&L<NM#F<>IZ2%6:@*?
M1@+O #HWC@/J8(++8\BB3.9<@W6\ME<5",'R C:JVD1+./J_(1+/[A(R[M2F
MEJ[+T6+N "OG]$^BLC+FVDK>VGS^Q6V"/\U*;=VLC6M^G[EY\[BCEIIG6NPE
MR!X.5Z8A3F?GN8KSO&G"]W$Q(Z&O:BRW_G8E&I-=/7,B)QP=P=I02!=4CI"X
MDS$@\Y:WSJ[8E;9N6D$-D^<UB(HZL#PW^+I[UJE#5)PC<2+JG2O#"-$9 RYS
MPR5C](O6]]V/4S-N_LXPVG\<8L>HH@-075[EOPG?ZAWLY9$W,S895!)2J G7
MIC8299D" .6<82F;@*WG"SY,23=@.DK/C^1/'"'T/J"S/*.WWI/1A)>(//,$
MMCA>UQ<Y"'6E<>01A4H^R-8A^Z/$C+O9#0>@!J+O!T,W9L5=)8&@*F2%:P(D
M&67ZGEQ"62<DAA)E,#::YG62CQ(S[OW#L!@Z4O0=8*B.(*S2^/MT_?'%V6I-
M["PO9?;MDB<O*9Q0%&"Z7--K521)69^ RRQ3C%:9YHGRN] U[K7$0,AJKI .
M0';[VN4>-[KXP ,%*);"%HIB:=V$(! \SZQX"HRM;3V.83M%X]YJ# 2LADKH
M %(/[-["NV"E5H A>U"9*W &JW!L$D*A9:9YFL9A'M-@]QL#0>=(87=P\O0(
M^&^<I-+6+%-@&61BAO9M$I*+V@+CB64NG N^^8'U]XCJQOT>[C"@K6(Z,$SW
M+G9NB+'>[A2317*:I)/KQ6!)%*=J9VGKIF\]-\+FUDFKWR&I&P=].)2U5$H'
M&+M:)C\OEG^;)URNPW2^Z0)T?A)\\X9(%BY"+KDF1M7V+$H A2 !1)26AR"S
M:GX8M0=YW;CPPQ]WME96!SB\'P5/C-31YCJ45?%";J27$(3V8'S6W":9LV]>
M4WV/BF[\]^%0=:3H.P#/YD+[IAV^<:M-KF116&>ZU595(CN(469@F(N54BG3
M?#[?X]1TX]$/Z(2U444'H+K!Q$0QCB8*3A&MMZ"DJ8YCM""D3L$*JZ)HC:(;
MKQ\W4^G4%WE[";N#>/#%XM.GZ45#TMK-:5Y#$)RGRDK(V;! M*.ID;*R!FCG
M35"G3),CF')IGIVRA9QQ$YA.@J-6RNC _FR3D$<,-C+0N<[4%=6WBXH$EE#H
M[%W(V+H@^L@LEL$2H4Z"JD:JZ !4;R[?NV%IT_'DYD#<Y".3GJPN\9%K TX&
MKK;[3I;6#.>2B>:5]MLI&KL55AN]WR^#;:6$#B#UXGH,[CU6C(PLR\*@F*PI
MCD /+B4+3G(M5<"LQ!#[WR/DC)UO-PB86HF_ R0]RWESC!%F=73RJ_F+\'E*
M7MH-#B>B=IW0)8'C=202E[[.E:<?3:1?9^M=\]:MWZ=J[.;-@^"JL3(Z@-=;
MK,=EF'\*RSFMCM6SE,X^G<UJ?\V76*9INIXDQ["$VMJ\U*[FE@>(S 5BT F.
M3-O"6Y^H?Y^J<0\V!X)78V5T *\;'.S29G^"W,>2M081+;&G ]:RKE(+C@M3
M07LMFO>*V(_$<<\^A[)K ZJI Q3>E]J$_,7DK7:@322ZBV;@0S78KA[L8@I!
MM3Y'OT_%N$>? V'I2&%W<'CUO?!Y(GVRQ6;R&1,2/]H;"$QI"D8B$IN!G,@!
M*QH>I&FWF) ]Z1.'IGKI?U3&K?[F30=C;'GRD#W:3SKTXO'R+>><(5\I@D5G
M"8>T>3GO/1C.)9+O+D+SUL*G:-A^NW'JW0:KSS[5"4;_P/QBL;KJANE#]"83
M_\P4 RJ3A??!4:PBHR1E%,)/ZTUP?RK'/NUJC*C[J3.#JJT#[^L[',YFB]^K
MC:"?7Q!QTW7U-*]8S4%@*@R,1%83-BQ0%%W 2V$5(U\D1'9:A&XC=^RSM'&A
MVDR1'6#V)C,O%V=Q7<YF]QL+7R7K\JA23A90.5J0&BD>ERF"]RI)EH-NGT^Q
M%X%CG\4-C,OAE-4!$O?8'VZDE=0B Z-S!L]]H.7F D3/:@ F8^:TX-K[. <1
M.O8Q7C^;^X'*ZQ^A#VX+-[C52@<F7(28O 8ER:7Q3GA@160=8I;%MBX,.([B
ML4\ .]SE#U1G!^"]?>U,$>KKY4;">7-O^ :7[SZ26B8E,ZZ3L.!4J=5;]01+
M!@'%&U0J6V=LZX+?W2@;^PAQ8# .H)[N0+=A8?7L;/UQL:R[P20D&9!I":'4
M,U<?ZX%6<, <(R8-^2G--^_M%(V;:WEBD!VECD[!]6JU.B-.M%"2,YYK-S-%
MKJ\EGJQU(%VR,G'G,FN=>?(X->,F7HX"J@/4T"F@;B;4*,Q!.7)2F31U.$$6
MX!AZ$$EY8;+E4K1VX+Y#TKC9EZ- ZU"%=("O&]DSCV[P5@B5D"ROC\K6$FL#
M#HNG&#Y3&%^"2K9UE=T.9(U\Z38XT%IKYF"P?<%E7+2'V[VMGJE2K+((UA@#
M*NI ,7CT8*U7QC'GM!P09@>Y7?SI7GVTTD1?-NS65B^#I?@C<##>2(J&K8:0
M<X+,G:U]C!2JUKESCY"R&YB>[N5$"PWT"*2;&[M$ID(L'!RO W]*<A!BJN5@
M,CLTS,?2NG7=-GIV@]33O5=HIHMFN!HLU^1*EJM%J;. ?YXM?E\=FV;R\$,;
M9YCL0'G[Y)*K%UT/](K)%2,-9%$'+ F6(0:E@>O"-9I@1?.+ZFWT'&N&ZLA4
M>N:;Y>++E"3W_-O?5K48_JJ;S+.TGGXY/R"^6FD4=7#4&0(Y@:!4,!!2-L 8
MUS7:U2&U/ES8G\INDDF.0]!=2S6PNCK8%XG#ZSSDB1%:*)T0I ]D?+E3X%R*
M-1<FQQQUT:EU N8M L:%T=#:O@^N T7? 6Z>Y?]]=C$$[_WB+:8%N0F;B=#7
M++U?["M-';+/F 1H71.P/!,0*4Z!4NJ\12\\;?ZM\ST&X&/<=*43HWAT('2P
M&#:N[.O/5<-UR-_%R-F)U=9SSS/XF(B+) 0$3WM0=C(7:3QGI;WO\A EXYK5
M\1'R4"7%<>KJ '0OD=Y,L5EE8X(B>"6XJMT%Z]BNE&KAD(0DF4DJ>AMS^XSC
MZ_>//..U-X =K)H.8'61/+6A_76Y.R)NXH3RQC,.1=6)V<G1II%DA&0#EN*8
M,:'Y"*2M%(T\)K8WZ#54WXA@K.<?DY^^)ES5BJ37<46/76,=O#RG/_CVXF-8
M?JA-=E(HH3"$DFM.%$\6O,L:I$IUA)#UEMW98.\?K.SVJI$GR?:"L@'T,C;*
M?@[3Y>;F[5K(K^?/TG^=33=]5\\YVW0**R*;X J$P 4H%!EB=@Y8D-(%)@MJ
MM1/8=GWCR#-JN\+<(%KJ8;=-:8D;E=ZRVR^GJ_,T>UIE;Y;X:7KV:75S['P,
M,M3>F* +&6_EZM @0_ZJ9M%8,O :9>O)R8=1.O+8W%XP?$)U[P]J?P[J.7ZH
MY_Y-8/W7,)U7Z;Z>U]SFZH=<,Z.]<4XI!"=E(1<D)G#):,!HA+8IF21;>Y!;
MR!EY,&]O &VEN"Y02$)<UN[\+_'\WU?S>_W4:<=@*2=C,(/UZ.IQJX-@4@ E
MD7G-7!"F]:'C3H2-/ &X-V2V5V:G&+U?83=)2<F04R:&7&U.5(\0ZHC4.MRM
M=H61AK>NDMB%KI&G$O>/T"-5>2Q WS=S4^^SMG7<UP2]M;:H5!M*2F*5MHI@
M=  I&4<E4'$]/&"WDCARBND3 &\[#7<09]UG[V;0F&34KB0-1M?^-N3E@#<F
M@A4V\,R2*,WSO[82-'*"ZA, YZ':Z]FD4N3W.4SSI5MS<2U5S]EJZ[B+ UR&
M1NLZ\<=BK6&V18#3WD().A1,7CO3.I/Z,$I'SHM] AANKN^>P7UG^O4$662\
M2 Y:HB)1UOD<F6GP5HED310VM:[%_"Y1(^?=/@'('J/%+KV ^S.U)[($P3FY
MY-*:>LS!:<4%BBA3$I;9E(76)T'F';IV ^<?_PIJ,%WVC,_-X<;EHF.R3J;A
M&8HN==$5#B%Z#Q1 6I)CYK1+G J@-PG;#:%__ NKX;39)40O_9>W2"[Y&4Y,
MPAPS.@B9UX,WGB FH2$)+HM.5DG6.H?XNT3M!LT_SSU46RUV"<N-$WTEOXN!
M G5FJL[!J.(X<!F(,Y$D^)(XQ.!*(+9I9VA]=[H[=;L!]<]S'S607ON)E';/
MUIZ4X(O-CG8*8R,0JX)V"DMN3;#!<N(^I=8UK[M3-VX:WNDK-X906@<MVA_A
M[/P:^&%!YBPRHA<@BMM,VD0(,M%WFC&MI-)*F-/ <@N5W720/4E]6BMU=;"Q
MDYM\L1U=9'O=S$C@WG.;% ,G"XG.6 _!, :!Q>!]%CZYU@46V^CILGJM&1;N
M-LMII9@NKN%):@DQKWXFL=;,EU_#NC9J_+:9ZSF;8=I,/+^=#V.1]I#L+$AC
M268A%W B,\ 22+#&HVQN^ X@L\MBM,% .; :>S2(Q#/Y'>MOM91I38S6F1V?
MZT<F27&4.M=AQD: XI:1XYTUT'93A*O5)[9U4=#NU'7I,)[,6+916A^F\RYO
MS\]6TSFN5G@^UZK*^3)3>Z*X0Q,Q@$Y:@6(B@4=3@&593[W0V-3Z^G(?^L8M
M\Q@;E*T4UWUT_8!$)\$F+(YST,S+.KZ4@Y=.@8B..29T\*)U#LCNU(U;"G)B
M7 ZDM'ZCZXLN2P\*,GF5+1)S CEQ2'Q!J/5[*7M9BDW6\=8ASOY4=C,'XR31
M=2MUC5WY=NDL7^X#M;%;[4#_NIQWY=I\?1Z(YXM//%LNP_S#1M2OYFEV5OMU
MG9?1__05EVE*GZP'L3$&H;RFQ5XXB3SEVLF$:3#>"BV+5,'*VY!]I%!N( *[
M#-.;@6K1F88["IE^7BS?XN>S9?I(+).QN#E=VEDF:<\ &U(]L& >O"8?1]/3
M(@^.J]B\@_=WJ>HR=&\-U(&4U%5H5"O\JA#G>763'R=X*E$5**9.@PW<@<-Z
M=Y4T(F.(HGV#[ZT4=1F3#PVX!LKI/N!Y0(:37+R1RGLHLLI.,UMKIADQ&(1T
M,GA,K4^'=J>NRT!\*"0.I+0. IZ?2L%$?OE/7\F<DV/QEM#^>EZ9K?]?#[V^
MA!EN*J1(CM-$:V%SZC#/MW]QXY-U2F<.-1\EQ-H@U@9:F+9..D9R\VU6QJC6
M^44#L-'-@+:V(=/8"N_ VSR*V3>XG"[R_:R7"U_\IEC/13UAFNN45 9F-(+B
MQH!''J!$TI6PUDC6.EWYM!QV,Q:N[4KI&"8=;!S'68QL*#80I!>94--F;#4X
M3X%"5#I@TJJ8YBG\PV\&IQ@VUQ'$]U+BP8C]O%E()('EN@/<!J6$CH%$K,^'
M<]16@<:!<$QQJ;ABS8O[AL?M*>;7]83;?91X)&Y_FM\\IQA^B,'B_-SPXV)&
MFEU5IM??;K-RQ#"#!Q\^U%"#[W/2?KC!YESAUANOT$K"(9.6(@0N+85U%-&%
MJ,G%=1X%A8ZE--^P=B+L^,;(%R]YOZEUB1@B8P8ARD2>O# %? @6K(DZB\RE
MP]9WK+<IZ&9,02,LW.]L?+"\.XB<KJ@_E\B+Q:?/BWFUJ<^^3E>3I$V=*91!
MH:L#D)6%H!P21RX7$YFD7P\%GH<(Z@1+!VCZ,= <+?8.,'2'AY>+3V$ZGW >
M4!223&0U"Y_I H[9 *A2L)(<S"AS8^P\2$@GF#E>T7>/?8Z6>@?0N7'Z_RM^
MBKB<V*("W^2NF#J)(Y ]=I;XR4PX$8MT@K>&S3TBQH5, \4^/OSK "EW )-G
M.6]&H879FS#-K^87)6@7S 1K-2;OP&*JS6AJP"I#@I1<5-Y0"&!:Y^ML)6C<
M.^3V\&DG_0Z@]!;7) _,/X7E?#K_L+K@PNL<0Q01L#"*71FG!<&*!N>4SL%G
MEUQHC*&'*1GW/K@]>!K(NP/4/$OI[-/9K,:SFV+8*B$*97&^FG[!\T+="\9B
M$4J4K"AVL+QZA1RBI^]J%.%%MHDW+P#8F;AQ+\ &,$R#:*4#N%UYC;_0TGE%
MWZXFD65)EE218$H@.14!@3D.27DM? DNZ-8&ZCX5G91T-HR_#A-P!Q"Y?Q%U
M_WSC[6(V^WFQ_#TL\P2%1#3" -MDA\M4FT?Z!-GY%!Q3R;+6V79[DMA)H'8@
M(K[;1*&=>CI WV,3JBELU3JC ++H)+(8?6UA8@"=LL@,"TRVKL\\:D;X4&@:
M5/T[3@O?1Q?=7.;=%]/$%VT+V7I J3(H'@2XQ"1$:Q67!D7VK7MOW:=BW)WO
ME' Z4@/](.DJT;ZZA>037FCK*MO^^;?[N?A5>C<7T:OY>=K'I!C'L^ D3*PB
MB"R"KV=V(4MFN+9!\M:-8)HR,&Y8>5+\CJ;W#O;EC5C/67AYMJ1X^YR-S1BG
M&R,X5U>E)1/C2S2:9^ Q$X,VUN%-FK[S4H:L55*\_17/GD2.&[>>W/@.IK]>
M 'I=;'*+R_,%.*'H7QDE!63%!'%D%9#OPL%(--(QVHE<^XOY[U$U;D;DR2'8
M3D/]U&EL8VRSP"91)NU%%!"%]762C2([+P2PD%T0%H5OGN;^7:+&S5/L!7C[
MZZ<?W-UJ\/C(7<IF8<6[3LM;) &OIFM\A\LOTX3GLJ@](C_,-T\Y%TLNQ4K.
M#5"\IT@L+$#P28+QTGJ3N<NV]>27H7D:-\OQE*CO"AT=. C7A8%A]7%BK$V)
M*P;&Q7I-%#CXDAD4Q@3/,EAFFL]8OTG N /A3HG#P^7>CZ6]U31WXHHS4:
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
MX.6\'/[J JXD'Q("R<*3GY@TQ$BAKA29VU1$4J)U4\?':.D/0(?H>C& X#L
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
M5T.L0?7^AT/]C2O<30<QDQ-W,@CPVI)#;DDL04E!$M$B)F:UD*T=V$$9ZL7
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
M%[J/6H;3T!;TV@?N()S%8]+9'#DE]/1^NIR/IXMQV,C!E^ZB>-DR5>97<:[
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
M9-\LBC9[C#)!738.;"P]G7*)WTOB@(BH0Q;>J5R[!NLI>EJ[O@[3>2<H':"
M!L#T*?U(T\OT>G9Q,5XL4"_XY??S-''3N#ECB=>,L>@@4"+00K06#,\2J.#.
M*$V(<+4-H6>):A%6A^C_07ER364T@*Y5'>[=4ME2YH6"6_W;ZV_CJ=OP)2+7
M-$H*@3,+(F@)UJSFL)L0#,W:VNI=53O2ULAE6!MKO:AFR*>.M6$X^O\^CJSG
M5G*=07M=-@E:G(:@0\$C\2KFR'AX*O5ID<)_?)W]^,_-%]=8VOSF%D:WZ[50
M\%X1( <*L@'5_]?'49!&"V,B,)=9>0[FX&-PP)'3&*F/0C_E@>VG^O_JIOK>
M$D9Z4_V>@FS@HMGE,]QY'K:.2RT\4&5X\1O080Q>07(ZJQ!R<KRWIY9=!#5R
M8O3C7QVM@0;@]#;G%$ICCQNN/N%MN>;L$IG[\#VMK\S%2#*AI3 47.8>STB1
MP3@4G$[>)I$5H:1Z]7!GZAJQDX^'Q'8)03_Z:19YI3/"-(PGX[7NEN]2+'UH
MB@UWB=^[NO>71UE2BOYM .5(!!&I!=R[%L]N$G$+^U"_)V4%LANQLT^$U?XT
M.G2Z41=^RP/X/"W+'VY:;_R4IBF/E^NTOI&73BN-;JYRQ?!TQ><H$5[4@0N$
M2J)LMQ3S"L2T=UD?A\M!E'0F)^MCW6%"6BSP/[C/O^21QQPXR$"1_^0#>![Q
MCK&)DF(D.Q8&.&;WX:$1_V60,[<W73> ]5NV[[.\BOE,XR_X@<F=%+@1\7AN
MLIP A8[>'LL:#*,9''KZA.%5@Y=,7PY2-Q*'38#O#ZE]:JI=(.(/UFFOJQD&
M(X,VN,LJ DVTE%VB>6.R2J""=801H;BL_6[>B;!A$]]/#KHCM-(TU&[E-\8=
MY*32BDH-,6J'.T@D-%M( .V<3#0G$=+IP':/M$YPTR\);H=KIEW O?Y6AKB\
MG[[94%7BLXM%6BY*R=U-S\,_W#2D48R6*&;19A9H1PNJT*PP24 0PEI%O7.Q
MM\#DP51W@JEY,3#M2Y_M(G@U4^A5_)_+Q7)]$X3,E;4I MJYY1U(4;"6:/PE
M9>*S%IK7'G[;D;1.6+0O!HM'::8!P#W<,MN[ZGJW;?RN$*0GRBF(>N5W20>E
M\JG,KV8^N(3W1>WT[7UI[!9C)^>'P5Z5-724\I>Q\[BKEE?O9O/?D;7YTHV+
M1?)QMABO'PZ(24DFAYX6*0/3=:GNM(F SM[3)%CP>BN+X)$8Y+-+=4/0&3W3
M]"#AH?'R^W1^TYWZ-CJT^'D^6Y29>V%=NWG#\\@9ZH+S#KR7!GE+"JPQ&H@3
MEAH3DI2\$WKV7+@;EL[H&:5WZ;>,K \YXS'[958.W.5R/O:72_23E$TI<9DA
M\$R0N\#!N(R_C200XJT.IEL_@+V7[H:N<WL,Z5<#0^,+*?_OY.:+#]_3],OL
M[9_N8CQ=J>RGJ_=37&/J)IN\TTVC_A'GRHND+-" ESG>XQFL%D6:G*6@?6(J
M=L+7WDMWP]<9/4B<0 -#X^M&:'<86['[^Q35=>>'*^?E+0IV68(]R(I4,5E@
ME 001##PQ$300<=@O#8TD4X@.VS];D@[HP>%4^FBS5X36]..URW47KM)N)RL
MOCS+.__&$7TICERQ0@^+FCS7FJSAYJ5AT^)CFJ\6NVV?(A0"(0O(T2+"T!$$
M*YR$R'B*S+L00^T(TF.T'!O#V!+J;Y<E2_Y#7@OWP^5RL733B O_Y!;C,.*!
MF:@\>C;K'LQ1@T7?I@0(>;;)>^YKOS;L1># ?5]KX&4[;M&?@@X^^Y 2/ZL4
M0]O)WIOQY/)ZNM%='F]CA2-!A9>ZU%5KJ4$$-%R-2QH2PU/>%E];U@ZE'4CJ
MP(V?3H;)RDIK(+[[R-9[C-%1E#&;,F-8&H)^%/<!G,OHL4M-*3$^R%0[>7I/
M$@=N/WO"\[&*D@['8!GS>U+K\#<W7P_OK&T$/OAP7[;>TQST;=)1(ZVUA$',
M95:>I!RL<?AO5#A/K%3"U1Z"W9=)=SMX\Y$AA2AG]-%63VX_7=W^G8_NJOSL
MU1]N'M<5-%G3R,N@#14-[A#A2B-=XX$+JYGW5%M1NU55->(;-07WP=F#(M=!
M%-O 1?P*7?M8#G0\'3ZG<#E?.?IO_PR32SP2WJ'TBQ@NEYNZWVWA_W2U^P.K
MU@F1E<(9+DI1(4511 D^4@J*VTA-HBIP6QGC/;(S\*BG80"Z/1VU$;0TNW'N
MU-6R9'Q:=V#P"@\A(\&D$,!&2WERTK/J#OUS- T+X6; TPG4!VJR 63>C%,N
M#84_?"_2W'1HL,H9GR4%ZTN)(V,$G*#(%XO(HQ3!5._0\B@Q+6+Q4)T_-@S]
M* 4T@*1/"4VK<2C.7F'ENI>:,HGIY$$1;5$TWA4W+P-WS N99$S;8UTJ]/G9
M0<BPT9]>$72\X!M #Q[<>3:_*/E@:S=TPX833',2.21?0A*4XEDMM02M@F%X
M4GN=:L^:?H2486,VO2*HAO ;P-"SQNYCMN[M&ZG3-BOI#5@B(@B=(Q@6%61J
M0S*&E+!^;4_[:*H''A;:A+-Q8MTW@/8C+>1-=JW)Q''#+&3K4^D!L.K#I8$Q
M&@)Q.F95.U9>A? &9BF?$&UU/>L#5-]F?L9/EPN4YV*!W/I-"LHQR1=/?:Y"
MM+TSM95B[#O6>S6-JQ3[U8BV=<+T3414!ZZLX 9"+H.Z26;H>'BT'Z5/1(E$
M<_71GOM16"\>?[WNG47P:KKSN_5]1(TEB:,#1F5 DRIXO(\R)R )4SEDJK2N
MW3UY7QJ'/09[1-CC,?<>E-? ;;Z#J_4D!:Z$B6C19Z.0#9,3H-6-%T92@A'I
M>&1][<HM4EH):?>A_UE]932*J?5LSFNG40DM+3J.I14G[DC%&'C.(FBNLG'4
M9LMJ/RP^2U0;1]I1JN\ I\/U,'1F]J^E)VCZ\_5L_GVV;H=WW=+7130GF00:
M2GE,D $\Q8.>,T8B49$^2$I\)/?ZL17:0\816IS5%FF;!\ZMPY-PG[ < ][Y
MR:.[85V95AZ!N!RX#(EX5KL9]U/TM!(T&>8Z.TPM0Q\].^S-MZ74Y?M\O$BK
MV=.CF *CK(0LL\CH5JM0JH4U&*-8-#9%Z4RG0^CYM9H[C@Y4ZJP_"3=T)MWA
MZ#5NL7'<]'+],G?3Q9HR.N+964.BADQQJPG-/3A/$B0I*>XQX4WU.2?[T#?L
MF54=<;VKJ 'X;8)_BR^SC;%PS6Q:5X*.A,I"HA4),EL.@I<FK"8%B"KD@(>[
M,Z:V@_<<3<.^=/4&LZJJ:#,@^OG2+]+_7N*'WOXHK!X1#'WL4Q4"H9VHK!0$
MW5[K=C0N2Y:5$!2Q <\11QA>8Y1!%D3:Z&+TU?NL/D;+T8'-^]]=&XPLD!"D
MS'@P"N3/BH@WM"%(5:8ZI<#-DS,K*O#70("RBO8?A"*/%7<#U](V#_B?K<(<
M-%#G;9*@'94@F%;@0D"/5EKBM8CXA[6S<!\AI2G@'*#C9T!SB,#;Q,UU_DF4
M-@@B@*@R\E?Q!*Z\X%-"/&>:QER]%O=18MK"SD&J?AX^!\B]/0#=S.F-.5EN
M0+I4"L\B,A'P%Z*T82@WHD//QTX+$<9*2GX:.@=(O#W8W#H$/$0JDD8W@)>)
M4I%EE(R6X*+4EJ-OD%7M>K'':!DXHMCSC768R!N 3IE[65J?S\*_WXQ_C"-Z
M%3>9,&]2F. _XBC*'#.G :0M0Z1]0M>OS'&UGF5)L]8LUL[[ZT)74^?1@0B8
M]:R.X3WQ>T/^4HCKSZ\3&\<7X^G7,O-D,EM<SK<B4[L\\7NXNOO1-:1"O$72
M[A7V=- /)KZ6@WYPTNB:QF)=3>/'B9O>*5VJ?.#W06+=:HO?I^/EXM/GWS=F
M3%W^GUYKT&$O?:+GF3J+W2(_^#2:]%A%T5"!1&^]STZ)A&?$/ P&\.P>K5FY
M6)W9MW;IH??+XU^L0.*OT^_C\M$O>(_\A'_X[RID/OSJ(!;4L[JX1E0GB0QH
M1-^C+RV_S6)E?6U]<Q 7ZC!M[99&([KZB,LNYQ?3^&[BOE;1U/TO#O)">)">
M=DJB$2V5'?]ZNHCS>FK:^N0@QMG!I]]#632BJ'_,_KBEK^X)^,BG![&E#E+<
MT[(96($W=^KX(L5WLWFQ#?_I)D=OMZ>^.\AXM[U4UT$J+6R\Q>O);)&^S&[(
M+3'-BKOOF>\/,C=M_RW834K-ZK,G-0XS3JR2]AI1VOMI+!':2S=9/<@?HZBM
M3PWKE#TM\]ES AAZ*TTFMW0]'^#IL(EV?7 P#3TB\UDW 33PWG0;3GIZTQQ4
M.G_OV\,ZRYUVT9-"J:ZLDS>&VLG5OITIC@E,#@_WQWMVU87^<;W!^GMV/V'8
M^5E1-P"'%6VOON/R83U<\E-I,;SX_.K3YUY@\?QZ@R:SGQ(>G44_M &SZ_;
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
M^#/Y0N^QF.(\-&H(%68;>?XH1':5$W5V\+=\1A]N])=ST;+]QQ]02P,$%
M  @ O#*B6.315LBE'@  HV<  !H   !E>&AI8FET,3 Q+7!T86=R965M96YT
M+FAT;>U=6V_<1I9^SZ^H]0X&$M"2)<6W6(X!V9(S&L2686N2#0:+0359W5TQ
MF^RP2'5Z?_V>6]U(MASL>N%]2( 92=UD59U3Y_*=2Y5?_.WV[8\OOWGQMZN+
MRY<O_NWH2%TV1;\V=:>6IC:M[DRIYCOU<]-^LG=:7=>%.CJ"%VZO;W^\>FE^
M7]FY[4Y/3H\VG5ZVQN"K+Q[RM]^\>$CC?O/BU<WE+VJ^+)JJ:;]_L%W9SCR
MCR^O?U*ZLLOZ^P<%O&=:_Z'K=I7Y_L%:MTM;'U5FT3T_->OSK2V[U?/3D\>/
MSQ_P:J<7<')R>OSK9LDK3<;;Z+*T]?*H:S;/SV \G.[Z[0_*M<7W#^X=ZH'J
M;(=#N,J6YO2!HJ5\_P#7\D"MC%VN.OCKVR>/A827+][<O+M5SOX7O 3/RPH6
M3=T=X8?/3S?=.?'CN;!#_2_^N^*UJ].3X]/T\]?-LC:_PX]VT\!>VJ8.7]W4
M1OUD'7YTV=H[$[YX!\\5GV;J[84Z.7WZY.3H[.3Q=^';@\<GSP[5D\<G1]^>
MG)S$F;;;[7%!L\&/]<02WU]]^'CS[N)'=?'N4KV^>??F^O+JW>TU?,!?Z[Y2
MMTVY7&E\^Y\79=D:Y_Z3O_U@GL/_'$@*$W'AMP>_O#2ZI?>?*W6[LDY5I@-9
M4D53+VR[=FK7]*WJ-[ NV'SES$8++Q8M+-6L-U6SH\&VMEM-\>R@6P%__OKO
MS\[.3LY?-^N-KG?TU^GYX7$^J:Y<HS9MLVF<<4K7*DB2FIMN:TR-RX$O2H6#
MRF PR%5-$H9/.OKZ9@Z:0?,[9L%2MV4%/%'-0FU7!EYO:2S2'&7KKLGG(VJ2
M26;I'_!MA0QCJIZ<JXW>T6A.5[K=*5T4;0^Z#X/BI]VJ;?HE#U>"4< UP*S
M4.80_$E<CLP\GQA[T2"#JC#XO.]47_<.?GVO;:EN[=JHF\5"E;WYHS-/3QUF
M;IL[4%@:*?"C16W%\4%".EO#7$N88P-JK"MX9%,!&XOF#JS?TBB]0.[B:P-Z
MA[,"):4\6>FM^E0W6]@-%\3FYM6'BYE(#>R?+5:T!R 6JC2N:.T<V&#A%2^A
M('+;UH)4U:IN0"?-.<E%)*XU=CWO6V<B<V%CF[YS'3P(LCZ#1[1K:CVO###;
MV1K%Q_R^,35*9[?2';VZTJ#_MB[ZMH4U(%,32<'93I^>.UCH2E>+;$/N%X%9
MPKSA8&!/UZ;:P0(+8S<=OJTWJ#>M1<I+\4(\] :(['5->S:YL@%I*K*&=F;3
M5+9 )5/@P!0Z 1QV%FDO3-MIX+WYK;?=+NJ0FU"BSRWF[.3DJ5(?NZ;XI&XV
MM'[<-O"<," :VO<H7P<B%A=;T.IHSUPT*[^0R+* &#8.7AU;%F$G(D?CNW[^
MJRG"JG!GR%+@'\-)@#WW&Y,.+5IX'AAW 69M=L]KQ#$_=WAQ)GH'1+1FC0R^
M;Y7JBB0'QKFN[Y!BW*)W37UT:5U1-:YO#5&*'R'336<'SH#LM# 6W$77VH(X
M_AJ4N=9(>'S8,YJ&)+TA8LAIE#@[ !,0!5 J_H(L @Z26-B@0,0U4E\@C$0F
ML[5>,Q?*HG%?+&R%4NYF:!^V!BVB2]9 XFH-NX&A+(K-0D^FFL1%' "8J S1
M6XFI#PXKO)'XE$#_/43D'DJI%P\1U+Q\\1 !SC<OWK]\\;</8)O<2I?F)?PY
M %M+<S0' _3I:&[ .)GGNMKJG0/4]==Z[C;G?ACY<1^<._MR<.YL#.?._K_!
M.?[OZX&W!%[=HK\DW45+0YH:P<XTSDFU<*QN4R@H$3*<#RPL#AMFB\N!/T V
M0;/!HUFWHGG7MB#_IMM6UTM^#GVA(1?(YC)UTZVI6 -6=C-#KU?U]"!\#LX2
M?TM5%Y=(;X!B;$SK4-5H<#0^0#E!2'Q0%96V:];9#;K%KI/I<<GDYNZ0E1U;
M-L)$Z>!S"+<68!Y0T=#TZP(1!-A\P"!!175K6$UQ:-+3 8/P'?BNXK'OFJH'
M']K:"EE[3?Q31>^Z9HT8#QU>Y$N"BQ.;@YPDZ(7?$D7&6VDB"WEFZ GY')@=
M> *[Z"SN#?-FI@R84&47^?-S4UGX@JTA[C!\6>"H8 O-C(FO&W =@)B$R6 H
MK$._]&HG0H@K0Y+OXTX.@.$;@%6 !OQ6(?9"8 P;0W."L59WMN'MP6\J<']5
M8G3Y,7BJV0;73';R9S:>*,/DH3T><[,I\"_.4R.SJZK9NN<J"W:(G5=QHU \
MVE'8,L3V*/_*+!;L$M1;W0+[3A_/ )^</1IZRC#7)1 [C&Q"')7CQ99> \)I
M?4,P/%H3D/?1U!;$Z2> LA#PX?OH:(D=KU?6+-0;P))U 9X7@P!XJO70($8P
M#<&A0!9M@E%#$HY9A]2B;Z-7;]>)(F&8QA1$<25W"YSS7MA9=JV1[J8JQY0%
M!!$=^V#=[-[A0R)JIDH+]J!#:"'H8FO=9ZA*R1J9!CV<,(#1=>,Z,CZ(@O6N
M!0'#G[1%\(H$>RRZ+)R 1\#(+/H*;,@&@S(?M/EG5Z#"&)^1H=,[LKT2J\VU
MX_AA* UIS!#7 8K:E C[*S'AG6BY?Z+\0S2'J#!ZIIE$9Q.!YITN1'DQV.R:
M3B.N?OKH^-DCV%_ ]F@I%RPDL+*=AZIOM7.Z6,$8'>+(2[*'GH__J!-B+\#H
MH<:#E"/O^O2[ G%K[7@%WN0+C(=W.HH=9SEZ!'@%O$!;55JWZ3LC[ 4S! B'
M4"K.0YQ+O CI;GQ7DW1-QV*I22.UV#1HHMJ^6[$@P*=+#(AKBLD KBY-76#P
M]EL/SIB]A*WA_]<\BG=J\-X]]"<4''.*PSO'5PUL%AL&4$ P$SYA _-\$)\#
M%H1B^Y+EX< >TJ;!!J51+RA5TW8$&T#><(420!&1CJ='1PZ.TE;3:I=9RUM
M&6P8U'L28&\N9[ $6(,$.N+=*'F:;F:J":.A8.-A#!C$_&X*W.@4;%UDB1W+
M)H*$6!3);4QA%Y:P!+@17,_=(432M/T0>#G<K;J#[81%WC6?S,@](L,/[N+T
M^#>^'!XWZF,/2F%$#/Q6Z*X#U4 OZ6(N\I7R#GA(P(RS*QYJC=@PC&7 Z?>(
M,G&+/?]PG5F4PR(#XL+!O8O;,M:ER:P0&)U95$DDG?T QZA(&J@^2F"W8@9_
MW9#HVR\7$GT[#HF^_3,DRD.B@6V22&4@5I+FU G,GY-8'@2HE8T2@J("39$C
M%(J9Q;_ 6F:X'  I58/(UD7<A<;3D9H35F$?.)3^8^_#]K\R>F< CP%(UR4;
M3J&+C6-NH\46+9#C(0U7@DPK0;->RR.ZB?YZVIR07F5?O&?$0JZ9[1X&$I*U
MJ"2?%)*Y9-_7I@104:$>/P2G4?) MG9]2YXY)GC9^7)Z=LI6Z%T>KH#DQ:*
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
ML4=? 8#LDM0D!1@%QY#-VCI'$19X71C'F?;.<D)8UX*,J6(\H,GK'_$?3(5
M\:V&AZDF165&7,JXG7#4_+<GX/0-?/L;0"G<![C8ED28.(>)Z)WD84F2AH&#
M)&J8!G1IH4($IN@CLJ! M)NGMGQ1I]]0X8E2:R>'7-,E_J2#.#](WL09RDM_
M[P& G (?J5M"=\/$$=;=G$\?C:I\H>^XC)P:5W-#CD)ZA#P!(2,2%BGS\Z0T
M(H=:?9VD9S!AWRXP&TM\YKXG9ZCO@_JAXK9(?D5F\H7!/+/VID=,!,O&2#J
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
M'_8B4V9=Z'E)+ E?$^N"4E*]A]K9.@_Y,)XA4\(WZ?I)T@['O3A.%4 "]]R
MII8J7K.30L%XW5C>^; /G_KZT#U U]QSPR]9>Q2N])\3V2<S7K9$E ?_ DD4
M'_5_;\$&/_"?RZ%_/0?_<9[_!E!+ 0(4 Q0    ( +PRHE@O$#2NV <  (XL
M   ;              "  0    !A,S,Q,C R-"TQ,'%X97AH:6)I=#,Q,2YH
M=&U02P$"% ,4    " "\,J)8 R;3]^D'  "P+   &P              @ $1
M"   83,S,3(P,C0M,3!Q>&5X:&EB:70S,3(N:'1M4$L! A0#%     @ O#*B
M6.)\&KX/!0  C1T  !L              ( !,Q   &$S,S$R,#(T+3$P<7AE
M>&AI8FET,S(Q+FAT;5!+ 0(4 Q0    ( +PRHEA/-JC=+ 4  &X=   ;
M          "  7L5  !A,S,Q,C R-"TQ,'%X97AH:6)I=#,R,BYH=&U02P$"
M% ,4    " "\,J)8E8Z@O=$' 0"^CA  $0              @ '@&@  8V=N
M>"TR,#(T,#,S,2YH=&U02P$"% ,4    " "\,J)86/<O(XL2  "!T   $0
M            @ '@(@$ 8V=N>"TR,#(T,#,S,2YX<V102P$"% ,4    " "\
M,J)8PL2>/#LA  #J40$ %0              @ &:-0$ 8V=N>"TR,#(T,#,S
M,5]C86PN>&UL4$L! A0#%     @ O#*B6"%0*TQ^40  0,8# !4
M     ( !"%<! &-G;G@M,C R-# S,S%?9&5F+GAM;%!+ 0(4 Q0    ( +PR
MHECUDWJQMQX! %\M"P 5              "  ;FH 0!C9VYX+3(P,C0P,S,Q
M7VQA8BYX;6Q02P$"% ,4    " "\,J)8;1IV,0"C  ")X < %0
M    @ &CQP( 8V=N>"TR,#(T,#,S,5]P<F4N>&UL4$L! A0#%     @ O#*B
M6.315LBE'@  HV<  !H              ( !UFH# &5X:&EB:70Q,#$M<'1A
B9W)E96UE;G0N:'1M4$L%!@     +  L ]@(  +.) P    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>108
<FILENAME>cgnx-20240331_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:cgnx="http://www.cognex.com/20240331"
  xmlns:country="http://xbrl.sec.gov/country/2023"
  xmlns:currency="http://xbrl.sec.gov/currency/2023"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2023"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="cgnx-20240331.xsd" xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c-6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <instant>2023-04-02</instant>
        </period>
    </context>
    <context id="c-7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-10">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-11">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c-20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c-21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c-22">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-12-31</instant>
        </period>
    </context>
    <context id="c-23">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-24">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-26">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-27">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-02</instant>
        </period>
    </context>
    <context id="c-28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-02</instant>
        </period>
    </context>
    <context id="c-29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-02</instant>
        </period>
    </context>
    <context id="c-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-02</instant>
        </period>
    </context>
    <context id="c-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-34">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-35">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-41">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-42">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-43">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-45">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-48">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByMeasurementFrequencyAxis">us-gaap:FairValueMeasurementsRecurringMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-49">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-50">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CashMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:CertificatesOfDepositMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-53">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:USTreasuryBillSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-55">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-56">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CashAndCashEquivalentsAxis">us-gaap:MoneyMarketFundsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-60">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-61">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-64">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-65">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-66">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherCurrentAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-68">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-69">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-71">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-72">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-73">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-74">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-75">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-76">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:CurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-77">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:CorporateBondSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-78">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:USTreasurySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:AssetBackedSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-80">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">cgnx:NonCurrentAssetsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-82">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancialInstrumentAxis">us-gaap:SovereignDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-83">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c-84">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A88000SquareFootPremisesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c-85">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A27000SquareFootPremisesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-06-30</instant>
        </period>
    </context>
    <context id="c-86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A27000SquareFootPremisesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c-87">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:SG</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">cgnx:A27000SquareFootPremisesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-88">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:CustomerContractsAndRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-89">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-90">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-91">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-92">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:CustomerContractsAndRelationshipsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-93">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:DevelopedTechnologyRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-94">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:TrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-95">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:OtherIntangibleAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-96">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">cgnx:DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-97">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-98">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SGD</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-99">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:SGD</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-100">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:EUR</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-102">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:MXN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:MXN</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-104">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-105">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CNY</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-106">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:HUF</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-107">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:HUF</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-108">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:GBP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-109">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:GBP</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-110">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:JPY</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-111">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:JPY</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-112">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CHF</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-113">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CHF</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-114">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:CurrencyAxis">currency:CAD</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-117">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-118">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:HedgingDesignationAxis">us-gaap:NondesignatedMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-119">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-120">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:AmericasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-121">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-122">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">srt:EuropeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-123">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CN</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-126">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">cgnx:AsiaExcludingChinaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-127">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-128">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:StandardProductsandServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-129">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-130">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">cgnx:ApplicationSpecificCustomerSolutionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-05-03</instant>
        </period>
    </context>
    <context id="c-132">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2021And2007StockOptionAndIncentivePlansMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-05-03</instant>
        </period>
    </context>
    <context id="c-133">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-05-04</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-134">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-135">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-136">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:GeneralStockOptionPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-137">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">cgnx:GeneralStockOptionPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-138">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-139">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-140">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-141">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-142">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-143">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-144">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-145">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-146">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-147">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-148">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-149">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-150">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfGoodsTotalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-151">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-152">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:ResearchAndDevelopmentExpenseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-153">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-154">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">cgnx:SellingGeneralAndAdministrativeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-155">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-03-03</instant>
        </period>
    </context>
    <context id="c-156">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-157">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-158">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ShareRepurchaseProgramAxis">cgnx:RepurchaseProgramMarch2022Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-159">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:RevenueCommissionersIrelandMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-160">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:StateAdministrationOfTaxationChinaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-161">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">country:JP</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-162">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:ForeignCountryMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">country:KP</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-163">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityAxis">us-gaap:DomesticCountryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-164">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-165">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:EmployeeStockOptionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-166">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-167">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-168">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-04-02</endDate>
        </period>
    </context>
    <context id="c-169">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:PerformanceSharesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-170">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:MoritexCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-10-18</instant>
        </period>
    </context>
    <context id="c-171">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:MoritexCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-10-18</startDate>
            <endDate>2023-10-18</endDate>
        </period>
    </context>
    <context id="c-172">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BusinessAcquisitionAxis">cgnx:MoritexCorporationMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-173">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-05-02</startDate>
            <endDate>2024-05-02</endDate>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="lease_component">
        <measure>cgnx:lease_component</measure>
    </unit>
    <unit id="sqft">
        <measure>utr:sqft</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="sgd">
        <measure>iso4217:SGD</measure>
    </unit>
    <unit id="eur">
        <measure>iso4217:EUR</measure>
    </unit>
    <unit id="mxn">
        <measure>iso4217:MXN</measure>
    </unit>
    <unit id="cny">
        <measure>iso4217:CNY</measure>
    </unit>
    <unit id="huf">
        <measure>iso4217:HUF</measure>
    </unit>
    <unit id="gbp">
        <measure>iso4217:GBP</measure>
    </unit>
    <unit id="jpy">
        <measure>iso4217:JPY</measure>
    </unit>
    <unit id="chf">
        <measure>iso4217:CHF</measure>
    </unit>
    <unit id="cad">
        <measure>iso4217:CAD</measure>
    </unit>
    <unit id="group">
        <measure>cgnx:group</measure>
    </unit>
    <dei:DocumentPeriodEndDate contextRef="c-1" id="f-24">2024-03-31</dei:DocumentPeriodEndDate>
    <dei:EntityCentralIndexKey contextRef="c-1" id="f-25">0000851205</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate contextRef="c-1" id="f-26">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="c-1" id="f-27">2024</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="c-1" id="f-28">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag contextRef="c-1" id="f-29">false</dei:AmendmentFlag>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-136" id="f-738">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-139" id="f-741">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-139" id="f-743">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <dei:DocumentType contextRef="c-1" id="f-1">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="c-1" id="f-2">true</dei:DocumentQuarterlyReport>
    <dei:DocumentTransitionReport contextRef="c-1" id="f-3">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="c-1" id="f-4">001-34218</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="c-1" id="f-5">COGNEX CORP</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="c-1" id="f-6">MA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="c-1" id="f-7">04-2713778</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="c-1" id="f-8">One Vision Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="c-1" id="f-9">Natick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="c-1" id="f-10">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="c-1" id="f-11">01760</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="c-1" id="f-12">508</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="c-1" id="f-13">650-3000</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="c-1" id="f-14">Common Stock, par value $.002 per share</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="c-1" id="f-15">CGNX</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="c-1" id="f-16">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="c-1" id="f-17">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="c-1" id="f-18">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="c-1" id="f-19">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="c-1" id="f-20">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="c-1" id="f-21">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="c-1" id="f-22">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding contextRef="c-2" decimals="INF" id="f-23" unitRef="shares">171662056</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-1" decimals="-3" id="f-30" unitRef="usd">210797000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-3" decimals="-3" id="f-31" unitRef="usd">201124000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-1" decimals="-3" id="f-32" unitRef="usd">68860000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-3" decimals="-3" id="f-33" unitRef="usd">57384000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="c-1" decimals="-3" id="f-34" unitRef="usd">141937000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-3" decimals="-3" id="f-35" unitRef="usd">143740000</us-gaap:GrossProfit>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-1" decimals="-3" id="f-36" unitRef="usd">37105000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="c-3" decimals="-3" id="f-37" unitRef="usd">38542000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c-1" decimals="-3" id="f-38" unitRef="usd">90628000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense contextRef="c-3" decimals="-3" id="f-39" unitRef="usd">83037000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss contextRef="c-1" decimals="-3" id="f-40" unitRef="usd">14204000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="c-3" decimals="-3" id="f-41" unitRef="usd">22161000</us-gaap:OperatingIncomeLoss>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-1" decimals="-3" id="f-42" unitRef="usd">46000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:ForeignCurrencyTransactionGainLossBeforeTax contextRef="c-3" decimals="-3" id="f-43" unitRef="usd">394000</us-gaap:ForeignCurrencyTransactionGainLossBeforeTax>
    <us-gaap:InvestmentIncomeNonoperating contextRef="c-1" decimals="-3" id="f-44" unitRef="usd">3120000</us-gaap:InvestmentIncomeNonoperating>
    <us-gaap:InvestmentIncomeNonoperating contextRef="c-3" decimals="-3" id="f-45" unitRef="usd">3587000</us-gaap:InvestmentIncomeNonoperating>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-1" decimals="-3" id="f-46" unitRef="usd">196000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-3" decimals="-3" id="f-47" unitRef="usd">73000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-48" unitRef="usd">17566000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-3" decimals="-3" id="f-49" unitRef="usd">26215000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-1" decimals="-3" id="f-50" unitRef="usd">5544000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-3" decimals="-3" id="f-51" unitRef="usd">600000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-52" unitRef="usd">12022000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-3" decimals="-3" id="f-53" unitRef="usd">25615000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-1"
      decimals="2"
      id="f-54"
      unitRef="usdPerShare">0.07</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-3"
      decimals="2"
      id="f-55"
      unitRef="usdPerShare">0.15</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-1"
      decimals="2"
      id="f-56"
      unitRef="usdPerShare">0.07</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-3"
      decimals="2"
      id="f-57"
      unitRef="usdPerShare">0.15</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-1" decimals="-3" id="f-58" unitRef="shares">171692000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-3" decimals="-3" id="f-59" unitRef="shares">172624000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-1" decimals="-3" id="f-60" unitRef="shares">172594000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-3" decimals="-3" id="f-61" unitRef="shares">173903000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c-1"
      decimals="INF"
      id="f-62"
      unitRef="usdPerShare">0.075</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c-3"
      decimals="INF"
      id="f-63"
      unitRef="usdPerShare">0.070</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-64" unitRef="usd">12022000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-3" decimals="-3" id="f-65" unitRef="usd">25615000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c-1" decimals="-3" id="f-66" unitRef="usd">117000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c-3" decimals="-3" id="f-67" unitRef="usd">1858000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c-1" decimals="-3" id="f-68" unitRef="usd">359000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c-3" decimals="-3" id="f-69" unitRef="usd">5426000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="c-1" decimals="-3" id="f-70" unitRef="usd">2000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="c-3" decimals="-3" id="f-71" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-72" unitRef="usd">357000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-3" decimals="-3" id="f-73" unitRef="usd">5426000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c-1" decimals="-3" id="f-74" unitRef="usd">-16156000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c-3" decimals="-3" id="f-75" unitRef="usd">-359000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-76" unitRef="usd">-16156000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-3" decimals="-3" id="f-77" unitRef="usd">-359000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-78" unitRef="usd">-15799000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent contextRef="c-3" decimals="-3" id="f-79" unitRef="usd">5067000</us-gaap:OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-1" decimals="-3" id="f-80" unitRef="usd">-3777000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-3" decimals="-3" id="f-81" unitRef="usd">30682000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-2" decimals="-3" id="f-82" unitRef="usd">138859000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-4" decimals="-3" id="f-83" unitRef="usd">202655000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent contextRef="c-2" decimals="-3" id="f-84" unitRef="usd">141876000</us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent contextRef="c-4" decimals="-3" id="f-85" unitRef="usd">132799000</us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent contextRef="c-4" decimals="-3" id="f-86" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent contextRef="c-2" decimals="-3" id="f-87" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-2" decimals="-3" id="f-88" unitRef="usd">139334000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-4" decimals="-3" id="f-89" unitRef="usd">129392000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c-2" decimals="-3" id="f-90" unitRef="usd">1339000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c-4" decimals="-3" id="f-91" unitRef="usd">583000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-2" decimals="-3" id="f-92" unitRef="usd">138556000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-4" decimals="-3" id="f-93" unitRef="usd">114164000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:UnbilledReceivablesCurrent contextRef="c-2" decimals="-3" id="f-94" unitRef="usd">2737000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:UnbilledReceivablesCurrent contextRef="c-4" decimals="-3" id="f-95" unitRef="usd">2402000</us-gaap:UnbilledReceivablesCurrent>
    <us-gaap:InventoryNet contextRef="c-2" decimals="-3" id="f-96" unitRef="usd">170871000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-4" decimals="-3" id="f-97" unitRef="usd">162285000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c-2" decimals="-3" id="f-98" unitRef="usd">71173000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c-4" decimals="-3" id="f-99" unitRef="usd">68099000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c-2" decimals="-3" id="f-100" unitRef="usd">661530000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c-4" decimals="-3" id="f-101" unitRef="usd">678997000</us-gaap:AssetsCurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent contextRef="c-2" decimals="-3" id="f-102" unitRef="usd">285376000</us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent contextRef="c-4" decimals="-3" id="f-103" unitRef="usd">250790000</us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent contextRef="c-4" decimals="-3" id="f-104" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent>
    <us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent contextRef="c-2" decimals="-3" id="f-105" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent>
    <us-gaap:LongTermInvestments contextRef="c-2" decimals="-3" id="f-106" unitRef="usd">278426000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-4" decimals="-3" id="f-107" unitRef="usd">244230000</us-gaap:LongTermInvestments>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-2" decimals="-3" id="f-108" unitRef="usd">104111000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-4" decimals="-3" id="f-109" unitRef="usd">105849000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="c-2" decimals="-3" id="f-110" unitRef="usd">74113000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="c-4" decimals="-3" id="f-111" unitRef="usd">75115000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:Goodwill contextRef="c-2" decimals="-3" id="f-112" unitRef="usd">386157000</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="c-4" decimals="-3" id="f-113" unitRef="usd">393181000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-2" decimals="-3" id="f-114" unitRef="usd">105054000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-4" decimals="-3" id="f-115" unitRef="usd">112952000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="c-2" decimals="-3" id="f-116" unitRef="usd">397563000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="c-4" decimals="-3" id="f-117" unitRef="usd">400400000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent contextRef="c-2" decimals="-3" id="f-118" unitRef="usd">6279000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent contextRef="c-4" decimals="-3" id="f-119" unitRef="usd">7088000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets contextRef="c-2" decimals="-3" id="f-120" unitRef="usd">2013233000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-4" decimals="-3" id="f-121" unitRef="usd">2017812000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="c-2" decimals="-3" id="f-122" unitRef="usd">27459000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="c-4" decimals="-3" id="f-123" unitRef="usd">21454000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="c-2" decimals="-3" id="f-124" unitRef="usd">70429000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="c-4" decimals="-3" id="f-125" unitRef="usd">72374000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent contextRef="c-2" decimals="-3" id="f-126" unitRef="usd">40433000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent contextRef="c-4" decimals="-3" id="f-127" unitRef="usd">16907000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c-2" decimals="-3" id="f-128" unitRef="usd">39983000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:ContractWithCustomerLiabilityCurrent contextRef="c-4" decimals="-3" id="f-129" unitRef="usd">31525000</us-gaap:ContractWithCustomerLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-2" decimals="-3" id="f-130" unitRef="usd">9798000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-4" decimals="-3" id="f-131" unitRef="usd">9624000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-2" decimals="-3" id="f-132" unitRef="usd">188102000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-4" decimals="-3" id="f-133" unitRef="usd">151884000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-2" decimals="-3" id="f-134" unitRef="usd">67367000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-4" decimals="-3" id="f-135" unitRef="usd">68977000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="c-2" decimals="-3" id="f-136" unitRef="usd">239538000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="c-4" decimals="-3" id="f-137" unitRef="usd">246877000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:LiabilityForUncertainTaxPositionsNoncurrent contextRef="c-2" decimals="-3" id="f-138" unitRef="usd">28144000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
    <us-gaap:LiabilityForUncertainTaxPositionsNoncurrent contextRef="c-4" decimals="-3" id="f-139" unitRef="usd">26685000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
    <us-gaap:AccruedIncomeTaxes contextRef="c-2" decimals="-3" id="f-140" unitRef="usd">0</us-gaap:AccruedIncomeTaxes>
    <us-gaap:AccruedIncomeTaxes contextRef="c-4" decimals="-3" id="f-141" unitRef="usd">18338000</us-gaap:AccruedIncomeTaxes>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-2" decimals="-3" id="f-142" unitRef="usd">893000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-4" decimals="-3" id="f-143" unitRef="usd">299000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities contextRef="c-2" decimals="-3" id="f-144" unitRef="usd">524044000</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="c-4" decimals="-3" id="f-145" unitRef="usd">513060000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies contextRef="c-2" id="f-146" unitRef="usd" xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies contextRef="c-4" id="f-147" unitRef="usd" xsi:nil="true"/>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c-4"
      decimals="2"
      id="f-148"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="c-2"
      decimals="2"
      id="f-149"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized contextRef="c-4" decimals="INF" id="f-150" unitRef="shares">400000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized contextRef="c-2" decimals="INF" id="f-151" unitRef="shares">400000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued contextRef="c-2" decimals="INF" id="f-152" unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued contextRef="c-4" decimals="INF" id="f-153" unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding contextRef="c-4" decimals="INF" id="f-154" unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding contextRef="c-2" decimals="INF" id="f-155" unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValueOutstanding contextRef="c-2" decimals="-3" id="f-156" unitRef="usd">0</us-gaap:PreferredStockValueOutstanding>
    <us-gaap:PreferredStockValueOutstanding contextRef="c-4" decimals="-3" id="f-157" unitRef="usd">0</us-gaap:PreferredStockValueOutstanding>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c-2"
      decimals="INF"
      id="f-158"
      unitRef="usdPerShare">0.002</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c-4"
      decimals="INF"
      id="f-159"
      unitRef="usdPerShare">0.002</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized contextRef="c-4" decimals="INF" id="f-160" unitRef="shares">300000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="c-2" decimals="INF" id="f-161" unitRef="shares">300000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding contextRef="c-2" decimals="-3" id="f-162" unitRef="shares">171662000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued contextRef="c-2" decimals="-3" id="f-163" unitRef="shares">171662000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued contextRef="c-4" decimals="-3" id="f-164" unitRef="shares">171599000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="c-4" decimals="-3" id="f-165" unitRef="shares">171599000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValueOutstanding contextRef="c-2" decimals="-3" id="f-166" unitRef="usd">343000</us-gaap:CommonStockValueOutstanding>
    <us-gaap:CommonStockValueOutstanding contextRef="c-4" decimals="-3" id="f-167" unitRef="usd">343000</us-gaap:CommonStockValueOutstanding>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c-2" decimals="-3" id="f-168" unitRef="usd">1047643000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="c-4" decimals="-3" id="f-169" unitRef="usd">1037202000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c-2" decimals="-3" id="f-170" unitRef="usd">502338000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c-4" decimals="-3" id="f-171" unitRef="usd">512543000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c-2" decimals="-3" id="f-172" unitRef="usd">-61135000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c-4" decimals="-3" id="f-173" unitRef="usd">-45336000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity contextRef="c-2" decimals="-3" id="f-174" unitRef="usd">1489189000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-4" decimals="-3" id="f-175" unitRef="usd">1504752000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c-2" decimals="-3" id="f-176" unitRef="usd">2013233000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c-4" decimals="-3" id="f-177" unitRef="usd">2017812000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-178" unitRef="usd">12022000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-3" decimals="-3" id="f-179" unitRef="usd">25615000</us-gaap:NetIncomeLoss>
    <us-gaap:StockOptionPlanExpense contextRef="c-1" decimals="-3" id="f-180" unitRef="usd">13302000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense contextRef="c-3" decimals="-3" id="f-181" unitRef="usd">16579000</us-gaap:StockOptionPlanExpense>
    <us-gaap:Depreciation contextRef="c-1" decimals="-3" id="f-182" unitRef="usd">5279000</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="c-3" decimals="-3" id="f-183" unitRef="usd">3986000</us-gaap:Depreciation>
    <us-gaap:AmortizationOfIntangibleAssets contextRef="c-1" decimals="-3" id="f-184" unitRef="usd">2813000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets contextRef="c-3" decimals="-3" id="f-185" unitRef="usd">942000</us-gaap:AmortizationOfIntangibleAssets>
    <cgnx:ExcessAndObsoleteInventoryCharges contextRef="c-1" decimals="-3" id="f-186" unitRef="usd">471000</cgnx:ExcessAndObsoleteInventoryCharges>
    <cgnx:ExcessAndObsoleteInventoryCharges contextRef="c-3" decimals="-3" id="f-187" unitRef="usd">788000</cgnx:ExcessAndObsoleteInventoryCharges>
    <cgnx:FairValueAdjustmentOnAcquiredInventories contextRef="c-1" decimals="-3" id="f-188" unitRef="usd">1224000</cgnx:FairValueAdjustmentOnAcquiredInventories>
    <cgnx:FairValueAdjustmentOnAcquiredInventories contextRef="c-3" decimals="-3" id="f-189" unitRef="usd">0</cgnx:FairValueAdjustmentOnAcquiredInventories>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments contextRef="c-1" decimals="-3" id="f-190" unitRef="usd">-306000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments contextRef="c-3" decimals="-3" id="f-191" unitRef="usd">-700000</us-gaap:AccretionAmortizationOfDiscountsAndPremiumsInvestments>
    <us-gaap:GainLossOnSaleOfInvestments contextRef="c-1" decimals="-3" id="f-192" unitRef="usd">2000</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:GainLossOnSaleOfInvestments contextRef="c-3" decimals="-3" id="f-193" unitRef="usd">0</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes contextRef="c-1" decimals="-3" id="f-194" unitRef="usd">3333000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes contextRef="c-3" decimals="-3" id="f-195" unitRef="usd">10656000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-1" decimals="-3" id="f-196" unitRef="usd">25669000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-3" decimals="-3" id="f-197" unitRef="usd">18455000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c-1" decimals="-3" id="f-198" unitRef="usd">-347000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInContractWithCustomerLiability contextRef="c-3" decimals="-3" id="f-199" unitRef="usd">-173000</us-gaap:IncreaseDecreaseInContractWithCustomerLiability>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-1" decimals="-3" id="f-200" unitRef="usd">10938000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-3" decimals="-3" id="f-201" unitRef="usd">5338000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c-1" decimals="-3" id="f-202" unitRef="usd">3395000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c-3" decimals="-3" id="f-203" unitRef="usd">-231000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c-1" decimals="-3" id="f-204" unitRef="usd">7398000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="c-3" decimals="-3" id="f-205" unitRef="usd">-192000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="c-1" decimals="-3" id="f-206" unitRef="usd">-470000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="c-3" decimals="-3" id="f-207" unitRef="usd">-9942000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedTaxesPayable contextRef="c-1" decimals="-3" id="f-208" unitRef="usd">5258000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedTaxesPayable contextRef="c-3" decimals="-3" id="f-209" unitRef="usd">4721000</us-gaap:IncreaseDecreaseInAccruedTaxesPayable>
    <us-gaap:IncreaseDecreaseInDeferredRevenue contextRef="c-1" decimals="-3" id="f-210" unitRef="usd">8737000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInDeferredRevenue contextRef="c-3" decimals="-3" id="f-211" unitRef="usd">17003000</us-gaap:IncreaseDecreaseInDeferredRevenue>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet contextRef="c-1" decimals="-3" id="f-212" unitRef="usd">-987000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet contextRef="c-3" decimals="-3" id="f-213" unitRef="usd">-1744000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c-1" decimals="-3" id="f-214" unitRef="usd">13643000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c-3" decimals="-3" id="f-215" unitRef="usd">27553000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c-1" decimals="-3" id="f-216" unitRef="usd">233726000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:PaymentsToAcquireInvestments contextRef="c-3" decimals="-3" id="f-217" unitRef="usd">46480000</us-gaap:PaymentsToAcquireInvestments>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-1" decimals="-3" id="f-218" unitRef="usd">189758000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-3" decimals="-3" id="f-219" unitRef="usd">46199000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-1" decimals="-3" id="f-220" unitRef="usd">4061000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-3" decimals="-3" id="f-221" unitRef="usd">5507000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired contextRef="c-1" decimals="-3" id="f-222" unitRef="usd">994000</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired contextRef="c-3" decimals="-3" id="f-223" unitRef="usd">0</us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c-1" decimals="-3" id="f-224" unitRef="usd">-49023000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c-3" decimals="-3" id="f-225" unitRef="usd">-5788000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <cgnx:ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet contextRef="c-1" decimals="-3" id="f-226" unitRef="usd">-2861000</cgnx:ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet>
    <cgnx:ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet contextRef="c-3" decimals="-3" id="f-227" unitRef="usd">-3055000</cgnx:ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet>
    <us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="c-1" decimals="-3" id="f-228" unitRef="usd">9339000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="c-3" decimals="-3" id="f-229" unitRef="usd">24178000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c-1" decimals="-3" id="f-230" unitRef="usd">12888000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock contextRef="c-3" decimals="-3" id="f-231" unitRef="usd">12091000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c-1" decimals="-3" id="f-232" unitRef="usd">-25088000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c-3" decimals="-3" id="f-233" unitRef="usd">-39324000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-1" decimals="-3" id="f-234" unitRef="usd">-3328000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-3" decimals="-3" id="f-235" unitRef="usd">356000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-1" decimals="-3" id="f-236" unitRef="usd">-63796000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-3" decimals="-3" id="f-237" unitRef="usd">-17203000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-4" decimals="-3" id="f-238" unitRef="usd">202655000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-5" decimals="-3" id="f-239" unitRef="usd">181374000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-2" decimals="-3" id="f-240" unitRef="usd">138859000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-6" decimals="-3" id="f-241" unitRef="usd">164171000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CommonStockSharesIssued contextRef="c-7" decimals="-3" id="f-242" unitRef="shares">171599000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity contextRef="c-7" decimals="-3" id="f-243" unitRef="usd">343000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-8" decimals="-3" id="f-244" unitRef="usd">1037202000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-9" decimals="-3" id="f-245" unitRef="usd">512543000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-10" decimals="-3" id="f-246" unitRef="usd">-45336000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-4" decimals="-3" id="f-247" unitRef="usd">1504752000</us-gaap:StockholdersEquity>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod contextRef="c-11" decimals="-3" id="f-248" unitRef="shares">294000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c-11" decimals="-3" id="f-249" unitRef="usd">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c-12" decimals="-3" id="f-250" unitRef="usd">-2861000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c-1" decimals="-3" id="f-251" unitRef="usd">-2861000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c-11" decimals="-3" id="f-252" unitRef="shares">231000</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c-11" decimals="-3" id="f-253" unitRef="usd">0</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c-13" decimals="-3" id="f-254" unitRef="usd">9339000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c-1" decimals="-3" id="f-255" unitRef="usd">9339000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-12" decimals="-3" id="f-256" unitRef="usd">13302000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-1" decimals="-3" id="f-257" unitRef="usd">13302000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c-1"
      decimals="3"
      id="f-258"
      unitRef="usdPerShare">0.075</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCash contextRef="c-13" decimals="-3" id="f-259" unitRef="usd">12888000</us-gaap:DividendsCash>
    <us-gaap:DividendsCash contextRef="c-1" decimals="-3" id="f-260" unitRef="usd">12888000</us-gaap:DividendsCash>
    <us-gaap:NetIncomeLoss contextRef="c-13" decimals="-3" id="f-261" unitRef="usd">12022000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-262" unitRef="usd">12022000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c-1" decimals="-3" id="f-263" unitRef="usd">117000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c-14" decimals="-3" id="f-264" unitRef="usd">359000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c-1" decimals="-3" id="f-265" unitRef="usd">359000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="c-14" decimals="-3" id="f-266" unitRef="usd">2000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax contextRef="c-1" decimals="-3" id="f-267" unitRef="usd">2000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c-14" decimals="-3" id="f-268" unitRef="usd">-16156000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c-1" decimals="-3" id="f-269" unitRef="usd">-16156000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:CommonStockSharesIssued contextRef="c-15" decimals="-3" id="f-270" unitRef="shares">171662000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity contextRef="c-15" decimals="-3" id="f-271" unitRef="usd">343000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-16" decimals="-3" id="f-272" unitRef="usd">1047643000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-17" decimals="-3" id="f-273" unitRef="usd">502338000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-18" decimals="-3" id="f-274" unitRef="usd">-61135000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-2" decimals="-3" id="f-275" unitRef="usd">1489189000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesIssued contextRef="c-19" decimals="-3" id="f-276" unitRef="shares">172631000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity contextRef="c-19" decimals="-3" id="f-277" unitRef="usd">345000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-20" decimals="-3" id="f-278" unitRef="usd">979167000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-21" decimals="-3" id="f-279" unitRef="usd">528179000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-22" decimals="-3" id="f-280" unitRef="usd">-69297000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-5" decimals="-3" id="f-281" unitRef="usd">1438394000</us-gaap:StockholdersEquity>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod contextRef="c-23" decimals="-3" id="f-282" unitRef="shares">449000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c-23" decimals="-3" id="f-283" unitRef="usd">1000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c-24" decimals="-3" id="f-284" unitRef="usd">-3056000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="c-3" decimals="-3" id="f-285" unitRef="usd">-3055000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockRepurchasedDuringPeriodShares contextRef="c-23" decimals="-3" id="f-286" unitRef="shares">479000</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c-23" decimals="-3" id="f-287" unitRef="usd">1000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c-25" decimals="-3" id="f-288" unitRef="usd">24177000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:StockRepurchasedDuringPeriodValue contextRef="c-3" decimals="-3" id="f-289" unitRef="usd">24178000</us-gaap:StockRepurchasedDuringPeriodValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-24" decimals="-3" id="f-290" unitRef="usd">16579000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-3" decimals="-3" id="f-291" unitRef="usd">16579000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockDividendsPerShareCashPaid
      contextRef="c-3"
      decimals="3"
      id="f-292"
      unitRef="usdPerShare">0.070</us-gaap:CommonStockDividendsPerShareCashPaid>
    <us-gaap:DividendsCash contextRef="c-25" decimals="-3" id="f-293" unitRef="usd">12091000</us-gaap:DividendsCash>
    <us-gaap:DividendsCash contextRef="c-3" decimals="-3" id="f-294" unitRef="usd">12091000</us-gaap:DividendsCash>
    <us-gaap:NetIncomeLoss contextRef="c-25" decimals="-3" id="f-295" unitRef="usd">25615000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-3" decimals="-3" id="f-296" unitRef="usd">25615000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax contextRef="c-3" decimals="-3" id="f-297" unitRef="usd">1858000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c-26" decimals="-3" id="f-298" unitRef="usd">5426000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax contextRef="c-3" decimals="-3" id="f-299" unitRef="usd">5426000</us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c-26" decimals="-3" id="f-300" unitRef="usd">-359000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="c-3" decimals="-3" id="f-301" unitRef="usd">-359000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:CommonStockSharesIssued contextRef="c-27" decimals="-3" id="f-302" unitRef="shares">172601000</us-gaap:CommonStockSharesIssued>
    <us-gaap:StockholdersEquity contextRef="c-27" decimals="-3" id="f-303" unitRef="usd">345000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-28" decimals="-3" id="f-304" unitRef="usd">992690000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-29" decimals="-3" id="f-305" unitRef="usd">517526000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-30" decimals="-3" id="f-306" unitRef="usd">-64230000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-6" decimals="-3" id="f-307" unitRef="usd">1446331000</us-gaap:StockholdersEquity>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="c-1" id="f-308">Summary of Significant Accounting Policies&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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&#x2019;s Annual Report on Form 10-K for the year ended December&#160;31, 2023 for a full description of other significant accounting policies.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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, and financial statement reclassifications necessary to present fairly the Company&#x2019;s financial position as of March&#160;31, 2024, and the results of its operations for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, and changes in shareholders&#x2019; equity, comprehensive income, and cash flows for the periods presented.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The results disclosed in the Consolidated Statements of Operations for the three-month periods ended March&#160;31, 2024 are not necessarily indicative of the results to be expected for the full year.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="c-1" id="f-310">New Pronouncements&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounting Standards Update (ASU) 2023-09, "Income Taxes (Topic 740): Improvements to Income Tax Disclosures"&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amendments in this ASU apply to all entities that are subject to Topic 740, Income Taxes. The amendments require public business entities to disclose specific categories in their rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. They also require all entities to disclose income taxes paid, net of refunds received, disaggregated by federal, state, and foreign taxes and by individual jurisdictions in which income taxes paid, net of refunds received, is equal to or greater than five percent of total income taxes paid. For public business entities, the amendments in this ASU are effective for annual periods beginning after December 15, 2024. The amendments in this ASU should be applied on a prospective basis. Management does not expect ASU 2023-09 to have a material impact on the Company's financial statements and disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounting Standards Update (ASU) 2023-07, "Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures"&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amendments in this ASU apply to all public entities, including public entities with a single reportable segment, that are required to report segment information in accordance with Topic 280, Segment Reporting. The amendments require public business entities to provide in interim and annual periods one or more measures of segment profit or loss used by the chief operating decision maker to allocate resources and assess performance. Additionally, the amendments require disclosure of significant segment expenses and other segment items, as well as incremental qualitative disclosures. The amendments in this ASU are effective for fiscal years beginning after December 15, 2023 and interim periods with fiscal years beginning after December 15, 2024. The amendments in the ASU should be applied on a retrospective basis. We did not early adopt ASU 2023-07. Management does not expect ASU 2023-07 to have a material impact on the Company's financial statements and disclosures.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="c-1" id="f-309">New Pronouncements&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounting Standards Update (ASU) 2023-09, "Income Taxes (Topic 740): Improvements to Income Tax Disclosures"&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amendments in this ASU apply to all entities that are subject to Topic 740, Income Taxes. The amendments require public business entities to disclose specific categories in their rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. They also require all entities to disclose income taxes paid, net of refunds received, disaggregated by federal, state, and foreign taxes and by individual jurisdictions in which income taxes paid, net of refunds received, is equal to or greater than five percent of total income taxes paid. For public business entities, the amendments in this ASU are effective for annual periods beginning after December 15, 2024. The amendments in this ASU should be applied on a prospective basis. Management does not expect ASU 2023-09 to have a material impact on the Company's financial statements and disclosures.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounting Standards Update (ASU) 2023-07, "Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures"&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The amendments in this ASU apply to all public entities, including public entities with a single reportable segment, that are required to report segment information in accordance with Topic 280, Segment Reporting. The amendments require public business entities to provide in interim and annual periods one or more measures of segment profit or loss used by the chief operating decision maker to allocate resources and assess performance. Additionally, the amendments require disclosure of significant segment expenses and other segment items, as well as incremental qualitative disclosures. The amendments in this ASU are effective for fiscal years beginning after December 15, 2023 and interim periods with fiscal years beginning after December 15, 2024. The amendments in the ASU should be applied on a retrospective basis. We did not early adopt ASU 2023-07. Management does not expect ASU 2023-07 to have a material impact on the Company's financial statements and disclosures.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="c-1" id="f-311">Fair Value Measurements&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:49.998%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.714%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted&#160;Prices&#160;in&lt;br/&gt;Active Markets&lt;br/&gt;for Identical&lt;br/&gt;Assets (Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other&lt;br/&gt;Observable&lt;br/&gt;Inputs (Level 2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unobservable Inputs (Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market instruments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;667&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificate of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury bills&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Economic hedge forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Economic hedge forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;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. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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 periods ended March&#160;31, 2024 or April&#160;2, 2023.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock contextRef="c-1" id="f-312">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:49.998%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.714%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted&#160;Prices&#160;in&lt;br/&gt;Active Markets&lt;br/&gt;for Identical&lt;br/&gt;Assets (Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other&lt;br/&gt;Observable&lt;br/&gt;Inputs (Level 2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unobservable Inputs (Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Assets:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market instruments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;667&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificate of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury bills&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,499&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Economic hedge forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Liabilities:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Economic hedge forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;221&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock>
    <us-gaap:MoneyMarketFundsAtCarryingValue contextRef="c-31" decimals="-3" id="f-313" unitRef="usd">667000</us-gaap:MoneyMarketFundsAtCarryingValue>
    <us-gaap:MoneyMarketFundsAtCarryingValue contextRef="c-32" decimals="-3" id="f-314" unitRef="usd">0</us-gaap:MoneyMarketFundsAtCarryingValue>
    <us-gaap:MoneyMarketFundsAtCarryingValue contextRef="c-33" decimals="-3" id="f-315" unitRef="usd">0</us-gaap:MoneyMarketFundsAtCarryingValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-34" decimals="-3" id="f-316" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-35" decimals="-3" id="f-317" unitRef="usd">353745000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-36" decimals="-3" id="f-318" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-37" decimals="-3" id="f-319" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-38" decimals="-3" id="f-320" unitRef="usd">45053000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-39" decimals="-3" id="f-321" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-40" decimals="-3" id="f-322" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-41" decimals="-3" id="f-323" unitRef="usd">16995000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-42" decimals="-3" id="f-324" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <cgnx:CertificateOfDepositFairValueDisclosure contextRef="c-31" decimals="-3" id="f-325" unitRef="usd">0</cgnx:CertificateOfDepositFairValueDisclosure>
    <cgnx:CertificateOfDepositFairValueDisclosure contextRef="c-32" decimals="-3" id="f-326" unitRef="usd">6429000</cgnx:CertificateOfDepositFairValueDisclosure>
    <cgnx:CertificateOfDepositFairValueDisclosure contextRef="c-33" decimals="-3" id="f-327" unitRef="usd">0</cgnx:CertificateOfDepositFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure contextRef="c-43" decimals="-3" id="f-328" unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure contextRef="c-44" decimals="-3" id="f-329" unitRef="usd">3499000</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsFairValueDisclosure contextRef="c-45" decimals="-3" id="f-330" unitRef="usd">0</us-gaap:CashAndCashEquivalentsFairValueDisclosure>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-46" decimals="-3" id="f-331" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-47" decimals="-3" id="f-332" unitRef="usd">1967000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-48" decimals="-3" id="f-333" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:ForeignCurrencyContractAssetFairValueDisclosure contextRef="c-31" decimals="-3" id="f-334" unitRef="usd">0</us-gaap:ForeignCurrencyContractAssetFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractAssetFairValueDisclosure contextRef="c-32" decimals="-3" id="f-335" unitRef="usd">22000</us-gaap:ForeignCurrencyContractAssetFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractAssetFairValueDisclosure contextRef="c-33" decimals="-3" id="f-336" unitRef="usd">0</us-gaap:ForeignCurrencyContractAssetFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure contextRef="c-31" decimals="-3" id="f-337" unitRef="usd">0</us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure contextRef="c-32" decimals="-3" id="f-338" unitRef="usd">221000</us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure>
    <us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure contextRef="c-33" decimals="-3" id="f-339" unitRef="usd">0</us-gaap:ForeignCurrencyContractsLiabilityFairValueDisclosure>
    <us-gaap:CashAndCashEquivalentsDisclosureTextBlock contextRef="c-1" id="f-340">Cash, Cash Equivalents, and Investments&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash, cash equivalents, and investments consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:61.911%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.031%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;128,264&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;183,242&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificate of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,429&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury bills&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,499&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;667&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;138,859&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;134,032&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;124,851&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,309&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;993&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;990&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;139,334&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;129,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;219,713&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;183,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;45,053&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;12,686&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;974&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;278,426&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;244,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;556,619&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;576,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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; sovereign bonds consist of direct debt issued by foreign governments; and treasury notes consist of debt securities issued by the U.S. government. All of the Company's securities as of March&#160;31, 2024 and December&#160;31, 2023 were denominated in U.S. Dollars.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Accrued interest receivable is recorded in "Prepaid expenses and other current assets" on the Consolidated Balance Sheets and amounted to $4,119,000 and $3,169,000 as of March&#160;31, 2024 and December&#160;31, 2023, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s available-for-sale investments as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:42.741%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.243%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.389%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.392%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,447)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(82)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,309&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,006&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,536)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;219,713&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(707)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(826)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,030&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;427,252&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;175&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(9,667)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;417,760&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s available-for-sale investments as of December&#160;31, 2023 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:42.741%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.243%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.389%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.392%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,299)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;124,851&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(86)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(22)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;990&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;189,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,867)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;183,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,010)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(58)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;383,589&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;588&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(10,555)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;373,622&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:30.711%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.654%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized Loss Position For:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Less than 12 Months&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;12 Months or Greater&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;222,979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,896)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;318,031&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(647)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(60)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(707)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(860)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(908)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(69)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(69)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;152,406&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(2,594)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;229,640&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(7,073)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;382,046&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(9,667)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of December&#160;31, 2023 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:30.711%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.654%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized Loss Position For:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Less than 12 Months&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;12 Months or Greater&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,770&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(359)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;226,643&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(8,807)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;257,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9,166)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,725&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(153)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(60)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;23,166&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,062&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,049)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(47)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,314&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,096)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(80)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(80)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;68,557&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(1,561)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;233,304&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(8,994)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;301,861&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(10,555)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:79.341%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.459%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:1pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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 March&#160;31, 2024 or December&#160;31, 2023. Management currently intends to hold these securities to full value recovery at maturity.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:66.882%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.104%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.823%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.107%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross realized gains&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross realized losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net realized gains (losses)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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&#x2019; equity as accumulated other comprehensive income (loss).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the effective maturity dates of the Company&#x2019;s available-for-sale investments as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:25.361%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.289%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&amp;lt;1 year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;1-2 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2-3 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;3-4 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4-5 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;5-8 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,829&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,698&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,309&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;139,334&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;68,352&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;73,217&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;81,054&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;49,603&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,200&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;417,760&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsDisclosureTextBlock>
    <cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock contextRef="c-1" id="f-341">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Cash, cash equivalents, and investments consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:61.911%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.031%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;128,264&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;183,242&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certificate of deposit&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,429&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury bills&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,499&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Money market instruments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;667&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19,413&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;138,859&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;202,655&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;134,032&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;124,851&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,309&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;993&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;990&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;139,334&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;129,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;219,713&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;183,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;45,053&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;12,686&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;974&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;278,426&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;244,230&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;556,619&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;576,277&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-49" decimals="-3" id="f-342" unitRef="usd">128264000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-50" decimals="-3" id="f-343" unitRef="usd">183242000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-51" decimals="-3" id="f-344" unitRef="usd">6429000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-52" decimals="-3" id="f-345" unitRef="usd">0</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-53" decimals="-3" id="f-346" unitRef="usd">3499000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-54" decimals="-3" id="f-347" unitRef="usd">0</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-55" decimals="-3" id="f-348" unitRef="usd">667000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-56" decimals="-3" id="f-349" unitRef="usd">19413000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-2" decimals="-3" id="f-350" unitRef="usd">138859000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-4" decimals="-3" id="f-351" unitRef="usd">202655000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-57" decimals="-3" id="f-352" unitRef="usd">134032000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-58" decimals="-3" id="f-353" unitRef="usd">124851000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-59" decimals="-3" id="f-354" unitRef="usd">4309000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-60" decimals="-3" id="f-355" unitRef="usd">3551000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-61" decimals="-3" id="f-356" unitRef="usd">993000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-62" decimals="-3" id="f-357" unitRef="usd">990000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-2" decimals="-3" id="f-358" unitRef="usd">139334000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent contextRef="c-4" decimals="-3" id="f-359" unitRef="usd">129392000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesCurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-57" decimals="-3" id="f-360" unitRef="usd">219713000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-58" decimals="-3" id="f-361" unitRef="usd">183965000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-63" decimals="-3" id="f-362" unitRef="usd">45053000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-64" decimals="-3" id="f-363" unitRef="usd">43523000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-59" decimals="-3" id="f-364" unitRef="usd">12686000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-60" decimals="-3" id="f-365" unitRef="usd">15763000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-61" decimals="-3" id="f-366" unitRef="usd">974000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent contextRef="c-62" decimals="-3" id="f-367" unitRef="usd">979000</us-gaap:AvailableForSaleSecuritiesDebtSecuritiesNoncurrent>
    <us-gaap:LongTermInvestments contextRef="c-2" decimals="-3" id="f-368" unitRef="usd">278426000</us-gaap:LongTermInvestments>
    <us-gaap:LongTermInvestments contextRef="c-4" decimals="-3" id="f-369" unitRef="usd">244230000</us-gaap:LongTermInvestments>
    <cgnx:CashCashEquivalentsShortTermAndLongTermInvestments contextRef="c-2" decimals="-3" id="f-370" unitRef="usd">556619000</cgnx:CashCashEquivalentsShortTermAndLongTermInvestments>
    <cgnx:CashCashEquivalentsShortTermAndLongTermInvestments contextRef="c-4" decimals="-3" id="f-371" unitRef="usd">576277000</cgnx:CashCashEquivalentsShortTermAndLongTermInvestments>
    <us-gaap:InterestReceivable contextRef="c-65" decimals="-3" id="f-372" unitRef="usd">4119000</us-gaap:InterestReceivable>
    <us-gaap:InterestReceivable contextRef="c-66" decimals="-3" id="f-373" unitRef="usd">3169000</us-gaap:InterestReceivable>
    <us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock contextRef="c-1" id="f-374">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s available-for-sale investments as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:42.741%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.243%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.389%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.392%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;136,479&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(2,447)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,391&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(82)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,309&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,006&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(13)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;225,074&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;175&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,536)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;219,713&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,760&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(707)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;13,512&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(826)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,030&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;427,252&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;175&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(9,667)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;417,760&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s available-for-sale investments as of December&#160;31, 2023 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:42.741%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.243%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.389%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.392%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amortized&lt;br/&gt;Cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Gains&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;128,150&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(3,299)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;124,851&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,637&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(86)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,551&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,012&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(22)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;990&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;189,326&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;506&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,867)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;183,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,654&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(213)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;43,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,773&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,010)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;15,763&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,037&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(58)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;383,589&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;588&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(10,555)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;373,622&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-67" decimals="-3" id="f-375" unitRef="usd">136479000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-67" decimals="-3" id="f-376" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-67" decimals="-3" id="f-377" unitRef="usd">2447000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-67" decimals="-3" id="f-378" unitRef="usd">134032000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-68" decimals="-3" id="f-379" unitRef="usd">4391000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-68" decimals="-3" id="f-380" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-68" decimals="-3" id="f-381" unitRef="usd">82000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-68" decimals="-3" id="f-382" unitRef="usd">4309000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-69" decimals="-3" id="f-383" unitRef="usd">1006000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-69" decimals="-3" id="f-384" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-69" decimals="-3" id="f-385" unitRef="usd">13000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-69" decimals="-3" id="f-386" unitRef="usd">993000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-70" decimals="-3" id="f-387" unitRef="usd">225074000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-70" decimals="-3" id="f-388" unitRef="usd">175000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-70" decimals="-3" id="f-389" unitRef="usd">5536000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-70" decimals="-3" id="f-390" unitRef="usd">219713000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-71" decimals="-3" id="f-391" unitRef="usd">45760000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-71" decimals="-3" id="f-392" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-71" decimals="-3" id="f-393" unitRef="usd">707000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-71" decimals="-3" id="f-394" unitRef="usd">45053000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-72" decimals="-3" id="f-395" unitRef="usd">13512000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-72" decimals="-3" id="f-396" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-72" decimals="-3" id="f-397" unitRef="usd">826000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-72" decimals="-3" id="f-398" unitRef="usd">12686000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-73" decimals="-3" id="f-399" unitRef="usd">1030000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-73" decimals="-3" id="f-400" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-73" decimals="-3" id="f-401" unitRef="usd">56000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-73" decimals="-3" id="f-402" unitRef="usd">974000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-2" decimals="-3" id="f-403" unitRef="usd">427252000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-2" decimals="-3" id="f-404" unitRef="usd">175000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-2" decimals="-3" id="f-405" unitRef="usd">9667000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-2" decimals="-3" id="f-406" unitRef="usd">417760000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-74" decimals="-3" id="f-407" unitRef="usd">128150000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-74" decimals="-3" id="f-408" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-74" decimals="-3" id="f-409" unitRef="usd">3299000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-74" decimals="-3" id="f-410" unitRef="usd">124851000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-75" decimals="-3" id="f-411" unitRef="usd">3637000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-75" decimals="-3" id="f-412" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-75" decimals="-3" id="f-413" unitRef="usd">86000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-75" decimals="-3" id="f-414" unitRef="usd">3551000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-76" decimals="-3" id="f-415" unitRef="usd">1012000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-76" decimals="-3" id="f-416" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-76" decimals="-3" id="f-417" unitRef="usd">22000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-76" decimals="-3" id="f-418" unitRef="usd">990000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-77" decimals="-3" id="f-419" unitRef="usd">189326000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-77" decimals="-3" id="f-420" unitRef="usd">506000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-77" decimals="-3" id="f-421" unitRef="usd">5867000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-77" decimals="-3" id="f-422" unitRef="usd">183965000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-78" decimals="-3" id="f-423" unitRef="usd">43654000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-78" decimals="-3" id="f-424" unitRef="usd">82000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-78" decimals="-3" id="f-425" unitRef="usd">213000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-78" decimals="-3" id="f-426" unitRef="usd">43523000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-79" decimals="-3" id="f-427" unitRef="usd">16773000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-79" decimals="-3" id="f-428" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-79" decimals="-3" id="f-429" unitRef="usd">1010000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-79" decimals="-3" id="f-430" unitRef="usd">15763000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-80" decimals="-3" id="f-431" unitRef="usd">1037000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-80" decimals="-3" id="f-432" unitRef="usd">0</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-80" decimals="-3" id="f-433" unitRef="usd">58000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-80" decimals="-3" id="f-434" unitRef="usd">979000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis contextRef="c-4" decimals="-3" id="f-435" unitRef="usd">383589000</us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax contextRef="c-4" decimals="-3" id="f-436" unitRef="usd">588000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax>
    <us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax contextRef="c-4" decimals="-3" id="f-437" unitRef="usd">10555000</us-gaap:AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-4" decimals="-3" id="f-438" unitRef="usd">373622000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock contextRef="c-1" id="f-439">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:30.711%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.651%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.654%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized Loss Position For:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Less than 12 Months&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;12 Months or Greater&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair&#160;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Unrealized&lt;br/&gt;Losses&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;95,052&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,087)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;222,979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(6,896)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;318,031&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,983)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;42,612&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(647)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,441&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(60)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(707)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,742&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(860)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,252&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(48)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(908)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(69)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,968&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(69)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;152,406&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(2,594)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;229,640&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(7,073)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;382,046&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(9,667)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-57" decimals="-3" id="f-440" unitRef="usd">95052000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-57" decimals="-3" id="f-441" unitRef="usd">1087000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-57" decimals="-3" id="f-442" unitRef="usd">222979000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-57" decimals="-3" id="f-443" unitRef="usd">6896000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-57" decimals="-3" id="f-444" unitRef="usd">318031000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-57" decimals="-3" id="f-445" unitRef="usd">7983000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-63" decimals="-3" id="f-446" unitRef="usd">42612000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-63" decimals="-3" id="f-447" unitRef="usd">647000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-63" decimals="-3" id="f-448" unitRef="usd">2441000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-63" decimals="-3" id="f-449" unitRef="usd">60000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-63" decimals="-3" id="f-450" unitRef="usd">45053000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-63" decimals="-3" id="f-451" unitRef="usd">707000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-59" decimals="-3" id="f-452" unitRef="usd">14742000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-59" decimals="-3" id="f-453" unitRef="usd">860000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-59" decimals="-3" id="f-454" unitRef="usd">2252000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-59" decimals="-3" id="f-455" unitRef="usd">48000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-59" decimals="-3" id="f-456" unitRef="usd">16994000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-59" decimals="-3" id="f-457" unitRef="usd">908000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-81" decimals="-3" id="f-458" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-81" decimals="-3" id="f-459" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-81" decimals="-3" id="f-460" unitRef="usd">1968000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-81" decimals="-3" id="f-461" unitRef="usd">69000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-81" decimals="-3" id="f-462" unitRef="usd">1968000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-81" decimals="-3" id="f-463" unitRef="usd">69000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-2" decimals="-3" id="f-464" unitRef="usd">152406000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-2" decimals="-3" id="f-465" unitRef="usd">2594000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-2" decimals="-3" id="f-466" unitRef="usd">229640000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-2" decimals="-3" id="f-467" unitRef="usd">7073000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-2" decimals="-3" id="f-468" unitRef="usd">382046000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-2" decimals="-3" id="f-469" unitRef="usd">9667000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-58" decimals="-3" id="f-470" unitRef="usd">30770000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-58" decimals="-3" id="f-471" unitRef="usd">359000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-58" decimals="-3" id="f-472" unitRef="usd">226643000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-58" decimals="-3" id="f-473" unitRef="usd">8807000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-58" decimals="-3" id="f-474" unitRef="usd">257413000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-58" decimals="-3" id="f-475" unitRef="usd">9166000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-64" decimals="-3" id="f-476" unitRef="usd">20725000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-64" decimals="-3" id="f-477" unitRef="usd">153000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-64" decimals="-3" id="f-478" unitRef="usd">2441000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-64" decimals="-3" id="f-479" unitRef="usd">60000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-64" decimals="-3" id="f-480" unitRef="usd">23166000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-64" decimals="-3" id="f-481" unitRef="usd">213000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-60" decimals="-3" id="f-482" unitRef="usd">17062000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-60" decimals="-3" id="f-483" unitRef="usd">1049000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-60" decimals="-3" id="f-484" unitRef="usd">2252000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-60" decimals="-3" id="f-485" unitRef="usd">47000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-60" decimals="-3" id="f-486" unitRef="usd">19314000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-60" decimals="-3" id="f-487" unitRef="usd">1096000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-82" decimals="-3" id="f-488" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-82" decimals="-3" id="f-489" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-82" decimals="-3" id="f-490" unitRef="usd">1968000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-82" decimals="-3" id="f-491" unitRef="usd">80000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-82" decimals="-3" id="f-492" unitRef="usd">1968000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-82" decimals="-3" id="f-493" unitRef="usd">80000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months contextRef="c-4" decimals="-3" id="f-494" unitRef="usd">68557000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss contextRef="c-4" decimals="-3" id="f-495" unitRef="usd">1561000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger contextRef="c-4" decimals="-3" id="f-496" unitRef="usd">233304000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger>
    <us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss contextRef="c-4" decimals="-3" id="f-497" unitRef="usd">8994000</us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition contextRef="c-4" decimals="-3" id="f-498" unitRef="usd">301861000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPosition>
    <us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss contextRef="c-4" decimals="-3" id="f-499" unitRef="usd">10555000</us-gaap:DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss contextRef="c-2" decimals="-3" id="f-500" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss contextRef="c-4" decimals="-3" id="f-501" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss>
    <us-gaap:RealizedGainLossOnInvestmentsTableTextBlock contextRef="c-1" id="f-502">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:66.882%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.384%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.104%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.823%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.107%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross realized gains&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross realized losses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net realized gains (losses)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RealizedGainLossOnInvestmentsTableTextBlock>
    <us-gaap:DebtSecuritiesAvailableForSaleRealizedGain contextRef="c-1" decimals="-3" id="f-503" unitRef="usd">2000</us-gaap:DebtSecuritiesAvailableForSaleRealizedGain>
    <us-gaap:DebtSecuritiesAvailableForSaleRealizedGain contextRef="c-3" decimals="-3" id="f-504" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleRealizedGain>
    <us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss contextRef="c-1" decimals="-3" id="f-505" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss>
    <us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss contextRef="c-3" decimals="-3" id="f-506" unitRef="usd">0</us-gaap:DebtSecuritiesAvailableForSaleRealizedLoss>
    <us-gaap:RealizedInvestmentGainsLosses contextRef="c-1" decimals="-3" id="f-507" unitRef="usd">2000</us-gaap:RealizedInvestmentGainsLosses>
    <us-gaap:RealizedInvestmentGainsLosses contextRef="c-3" decimals="-3" id="f-508" unitRef="usd">0</us-gaap:RealizedInvestmentGainsLosses>
    <us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock contextRef="c-1" id="f-509">&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the effective maturity dates of the Company&#x2019;s available-for-sale investments as of March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:25.361%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.289%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&amp;lt;1 year&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;1-2 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2-3 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;3-4 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4-5 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;5-8 Years&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Corporate bonds&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134,032&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57,463&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,120&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;58,225&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;353,745&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Treasury notes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,097&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;22,829&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,698&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;45,053&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Asset-backed securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,309&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,995&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sovereign bonds&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;993&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;974&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,967&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;139,334&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;68,352&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;73,217&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;81,054&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;49,603&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,200&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;417,760&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c-57" decimals="-3" id="f-510" unitRef="usd">134032000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="c-57" decimals="-3" id="f-511" unitRef="usd">57463000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="c-57" decimals="-3" id="f-512" unitRef="usd">59120000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="c-57" decimals="-3" id="f-513" unitRef="usd">58225000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="c-57" decimals="-3" id="f-514" unitRef="usd">44905000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears contextRef="c-57" decimals="-3" id="f-515" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-57" decimals="-3" id="f-516" unitRef="usd">353745000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c-63" decimals="-3" id="f-517" unitRef="usd">0</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="c-63" decimals="-3" id="f-518" unitRef="usd">3429000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="c-63" decimals="-3" id="f-519" unitRef="usd">14097000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="c-63" decimals="-3" id="f-520" unitRef="usd">22829000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="c-63" decimals="-3" id="f-521" unitRef="usd">4698000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears contextRef="c-63" decimals="-3" id="f-522" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-63" decimals="-3" id="f-523" unitRef="usd">45053000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c-59" decimals="-3" id="f-524" unitRef="usd">4309000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="c-59" decimals="-3" id="f-525" unitRef="usd">6486000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="c-59" decimals="-3" id="f-526" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="c-59" decimals="-3" id="f-527" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="c-59" decimals="-3" id="f-528" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears contextRef="c-59" decimals="-3" id="f-529" unitRef="usd">6200000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-59" decimals="-3" id="f-530" unitRef="usd">16995000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c-81" decimals="-3" id="f-531" unitRef="usd">993000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="c-81" decimals="-3" id="f-532" unitRef="usd">974000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="c-81" decimals="-3" id="f-533" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="c-81" decimals="-3" id="f-534" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="c-81" decimals="-3" id="f-535" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears contextRef="c-81" decimals="-3" id="f-536" unitRef="usd">0</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-81" decimals="-3" id="f-537" unitRef="usd">1967000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue contextRef="c-2" decimals="-3" id="f-538" unitRef="usd">139334000</us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue contextRef="c-2" decimals="-3" id="f-539" unitRef="usd">68352000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue contextRef="c-2" decimals="-3" id="f-540" unitRef="usd">73217000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue contextRef="c-2" decimals="-3" id="f-541" unitRef="usd">81054000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue contextRef="c-2" decimals="-3" id="f-542" unitRef="usd">49603000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue>
    <cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears contextRef="c-2" decimals="-3" id="f-543" unitRef="usd">6200000</cgnx:AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears>
    <us-gaap:AvailableForSaleSecuritiesDebtSecurities contextRef="c-2" decimals="-3" id="f-544" unitRef="usd">417760000</us-gaap:AvailableForSaleSecuritiesDebtSecurities>
    <us-gaap:InventoryDisclosureTextBlock contextRef="c-1" id="f-545">Inventories&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:61.911%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.031%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;106,506&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,241&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;61,124&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;170,871&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162,285&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="c-1" id="f-546">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventories consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:61.911%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.031%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;106,506&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;93,201&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Work-in-process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,241&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,747&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;61,124&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;63,337&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;170,871&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;162,285&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryRawMaterialsNetOfReserves contextRef="c-2" decimals="-3" id="f-547" unitRef="usd">106506000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves contextRef="c-4" decimals="-3" id="f-548" unitRef="usd">93201000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves contextRef="c-2" decimals="-3" id="f-549" unitRef="usd">3241000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves contextRef="c-4" decimals="-3" id="f-550" unitRef="usd">5747000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="c-2" decimals="-3" id="f-551" unitRef="usd">61124000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="c-4" decimals="-3" id="f-552" unitRef="usd">63337000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryNet contextRef="c-2" decimals="-3" id="f-553" unitRef="usd">170871000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-4" decimals="-3" id="f-554" unitRef="usd">162285000</us-gaap:InventoryNet>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="c-1" id="f-555">Leases&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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 March&#160;31, 2024, there were no options to terminate and twenty-eight options to extend that were accounted for in the determination of the lease term for the Company's 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 March&#160;31, 2024.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total operating lease expense for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $3,563,000 and $2,392,000, respectively. The total operating lease cash payments for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $3,208,000 and $2,404,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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $82,000 and $24,000, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future operating lease cash payments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:82.648%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:2.728%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.224%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Year Ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Remainder of fiscal 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,031&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,721&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2029&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;103,203&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:4pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The discounted present value of the future lease cash payments resulted in a total lease liability of $77,165,000 and $78,601,000 as of March&#160;31, 2024 and December&#160;31, 2023, respectively. The Company did not have any leases that had not yet commenced but that created significant rights and obligations as of March&#160;31, 2024.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company leases a building in Singapore that serves as a distribution center for customers in Asia. The lease contains two components: an 88,000 square-foot premises that had a commencement date in June of 2023 and a second 27,000 square-foot premises that does not commence until the fourth quarter of 2025. Accordingly, the second component of the lease has not yet been recorded on the Consolidated Balance Sheets, nor has it created any significant rights and obligations as of March&#160;31, 2024. This second lease component has an original term of eight years and the Company has the right and option to extend this term by an additional 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 2024 and which reflects the 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. &lt;/span&gt;&lt;/div&gt;The weighted-average discount rate was 5.7% for the leases outstanding as of both March&#160;31, 2024 and December&#160;31, 2023. The weighted-average remaining lease term was 10.3 and 10.5 years for the leases outstanding as of March&#160;31, 2024 and December&#160;31, 2023, respectively.</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:OperatingLeaseCost contextRef="c-1" decimals="-3" id="f-556" unitRef="usd">3563000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost contextRef="c-3" decimals="-3" id="f-557" unitRef="usd">2392000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeasePayments contextRef="c-1" decimals="-3" id="f-558" unitRef="usd">3208000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments contextRef="c-3" decimals="-3" id="f-559" unitRef="usd">2404000</us-gaap:OperatingLeasePayments>
    <us-gaap:LeaseCost contextRef="c-1" decimals="-3" id="f-560" unitRef="usd">82000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost contextRef="c-3" decimals="-3" id="f-561" unitRef="usd">24000</us-gaap:LeaseCost>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="c-1" id="f-562">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Future operating lease cash payments are as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:82.648%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:2.728%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.224%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Year Ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount &lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Remainder of fiscal 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,392&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;12,093&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,031&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,171&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,721&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2029&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,137&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,658&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;103,203&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear contextRef="c-2" decimals="-3" id="f-563" unitRef="usd">10392000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths contextRef="c-2" decimals="-3" id="f-564" unitRef="usd">12093000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo contextRef="c-2" decimals="-3" id="f-565" unitRef="usd">10031000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree contextRef="c-2" decimals="-3" id="f-566" unitRef="usd">9171000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour contextRef="c-2" decimals="-3" id="f-567" unitRef="usd">8721000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive contextRef="c-2" decimals="-3" id="f-568" unitRef="usd">8137000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive contextRef="c-2" decimals="-3" id="f-569" unitRef="usd">44658000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="c-2" decimals="-3" id="f-570" unitRef="usd">103203000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:OperatingLeaseLiability contextRef="c-2" decimals="-3" id="f-571" unitRef="usd">77165000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability contextRef="c-4" decimals="-3" id="f-572" unitRef="usd">78601000</us-gaap:OperatingLeaseLiability>
    <cgnx:LesseeOperatingLeaseComponents
      contextRef="c-83"
      decimals="INF"
      id="f-573"
      unitRef="lease_component">2</cgnx:LesseeOperatingLeaseComponents>
    <us-gaap:NetRentableArea contextRef="c-84" decimals="-3" id="f-574" unitRef="sqft">88000</us-gaap:NetRentableArea>
    <us-gaap:NetRentableArea contextRef="c-85" decimals="-3" id="f-575" unitRef="sqft">27000</us-gaap:NetRentableArea>
    <us-gaap:LesseeOperatingLeaseTermOfContract contextRef="c-85" id="f-576">P8Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <cgnx:LesseeOperatingLeaseOptionToRenewTermOfContract contextRef="c-86" id="f-577">P5Y</cgnx:LesseeOperatingLeaseOptionToRenewTermOfContract>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="c-87" decimals="-3" id="f-578" unitRef="usd">13231000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear contextRef="c-87" decimals="-3" id="f-579" unitRef="usd">0</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <cgnx:LesseeOperatingLeaseOptionToRenewTermOfContract contextRef="c-86" id="f-580">P5Y</cgnx:LesseeOperatingLeaseOptionToRenewTermOfContract>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent contextRef="c-4" decimals="3" id="f-581" unitRef="number">0.057</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent contextRef="c-2" decimals="3" id="f-582" unitRef="number">0.057</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="c-2" id="f-583">P10Y3M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="c-4" id="f-584">P10Y6M</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:GoodwillDisclosureTextBlock contextRef="c-1" id="f-585">Goodwill&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the carrying value of goodwill were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:83.288%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.776%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;393,181&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,024)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;386,157&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:GoodwillDisclosureTextBlock>
    <us-gaap:ScheduleOfGoodwillTextBlock contextRef="c-1" id="f-586">&lt;div style="margin-top:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the carrying value of goodwill were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:83.288%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.536%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.776%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;393,181&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&#160;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(7,024)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;386,157&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill contextRef="c-4" decimals="-3" id="f-587" unitRef="usd">393181000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss contextRef="c-1" decimals="-3" id="f-588" unitRef="usd">-7024000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:Goodwill contextRef="c-2" decimals="-3" id="f-589" unitRef="usd">386157000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="c-1" id="f-590">Intangible Assets&lt;div style="margin-top:5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortized intangible assets consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:51.176%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.318%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.318%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.320%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;72,775&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(6,587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;66,188&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Completed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;60,160&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(22,112)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;38,048&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;842&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(117)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;725&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;340&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(247)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;93&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;134,117&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(29,063)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;105,054&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,352)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Completed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(20,745)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;903&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(50)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(232)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;139,331&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,379)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112,952&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As of March&#160;31, 2024, estimated future amortization expense related to intangible assets was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:81.623%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.445%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Year Ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Remainder of fiscal 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,615&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,587&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,857&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2029&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,857&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;105,054&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="c-1" id="f-591">&lt;div style="margin-top:5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Amortized intangible assets consisted of the following (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:51.176%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.318%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.318%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.320%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;72,775&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(6,587)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;66,188&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Completed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;60,160&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(22,112)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;38,048&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;842&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(117)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;725&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;340&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(247)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;93&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;134,117&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(29,063)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;105,054&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:9pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Gross&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Accumulated&lt;br/&gt;Amortization&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Net&lt;br/&gt;Carrying&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Customer relationships&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75,965&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,352)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;70,613&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Completed technologies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;62,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(20,745)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41,378&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Trademarks&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;903&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(50)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;853&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-compete agreements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;340&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(232)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;139,331&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(26,379)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;112,952&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-88" decimals="-3" id="f-592" unitRef="usd">72775000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-88" decimals="-3" id="f-593" unitRef="usd">6587000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-88" decimals="-3" id="f-594" unitRef="usd">66188000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-89" decimals="-3" id="f-595" unitRef="usd">60160000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-89" decimals="-3" id="f-596" unitRef="usd">22112000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-89" decimals="-3" id="f-597" unitRef="usd">38048000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-90" decimals="-3" id="f-598" unitRef="usd">842000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-90" decimals="-3" id="f-599" unitRef="usd">117000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-90" decimals="-3" id="f-600" unitRef="usd">725000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-91" decimals="-3" id="f-601" unitRef="usd">340000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-91" decimals="-3" id="f-602" unitRef="usd">247000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-91" decimals="-3" id="f-603" unitRef="usd">93000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-2" decimals="-3" id="f-604" unitRef="usd">134117000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-2" decimals="-3" id="f-605" unitRef="usd">29063000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-2" decimals="-3" id="f-606" unitRef="usd">105054000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-92" decimals="-3" id="f-607" unitRef="usd">75965000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-92" decimals="-3" id="f-608" unitRef="usd">5352000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-92" decimals="-3" id="f-609" unitRef="usd">70613000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-93" decimals="-3" id="f-610" unitRef="usd">62123000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-93" decimals="-3" id="f-611" unitRef="usd">20745000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-93" decimals="-3" id="f-612" unitRef="usd">41378000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-94" decimals="-3" id="f-613" unitRef="usd">903000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-94" decimals="-3" id="f-614" unitRef="usd">50000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-94" decimals="-3" id="f-615" unitRef="usd">853000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-95" decimals="-3" id="f-616" unitRef="usd">340000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-95" decimals="-3" id="f-617" unitRef="usd">232000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-95" decimals="-3" id="f-618" unitRef="usd">108000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="c-4" decimals="-3" id="f-619" unitRef="usd">139331000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-4" decimals="-3" id="f-620" unitRef="usd">26379000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-4" decimals="-3" id="f-621" unitRef="usd">112952000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock contextRef="c-1" id="f-622">&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;As of March&#160;31, 2024, estimated future amortization expense related to intangible assets was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:81.623%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.445%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline"&gt;Year Ended December&#160;31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Amount&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Remainder of fiscal 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,179&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,615&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,310&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,587&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,857&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2029&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,857&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;48,649&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;105,054&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear contextRef="c-96" decimals="-3" id="f-623" unitRef="usd">8179000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths contextRef="c-96" decimals="-3" id="f-624" unitRef="usd">10615000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo contextRef="c-96" decimals="-3" id="f-625" unitRef="usd">10310000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree contextRef="c-96" decimals="-3" id="f-626" unitRef="usd">9587000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour contextRef="c-96" decimals="-3" id="f-627" unitRef="usd">8857000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive contextRef="c-96" decimals="-3" id="f-628" unitRef="usd">8857000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive contextRef="c-96" decimals="-3" id="f-629" unitRef="usd">48649000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="c-96" decimals="-3" id="f-630" unitRef="usd">105054000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:ProductWarrantyDisclosureTextBlock contextRef="c-1" id="f-631">Warranty Obligations&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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&#x2019;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 &#x201c;Accrued expenses&#x201d; on the Consolidated Balance Sheets.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the warranty obligation were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:80.771%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.029%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,244&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provisions for warranties issued during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,157&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fulfillment of warranty obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(939)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,453&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="c-1" id="f-632">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The changes in the warranty obligation were as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:80.771%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.029%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,244&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provisions for warranties issued during the period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,157&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Fulfillment of warranty obligations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(939)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(9)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,453&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual contextRef="c-4" decimals="-3" id="f-633" unitRef="usd">4244000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued contextRef="c-1" decimals="-3" id="f-634" unitRef="usd">1157000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualPayments contextRef="c-1" decimals="-3" id="f-635" unitRef="usd">939000</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss contextRef="c-1" decimals="-3" id="f-636" unitRef="usd">9000</us-gaap:StandardProductWarrantyAccrualForeignCurrencyTranslationGainLoss>
    <us-gaap:ProductWarrantyAccrual contextRef="c-2" decimals="-3" id="f-637" unitRef="usd">4453000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c-1" id="f-638">Commitments and Contingencies&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of March&#160;31, 2024, the Company had outstanding purchase orders totaling $40,843,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. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;A significant portion of the Company's outstanding inventory purchase orders as of March&#160;31, 2024, 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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:PurchaseCommitmentRemainingMinimumAmountCommitted contextRef="c-2" decimals="-3" id="f-639" unitRef="usd">40843000</us-gaap:PurchaseCommitmentRemainingMinimumAmountCommitted>
    <us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock contextRef="c-1" id="f-640">Derivative Instruments&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had the following outstanding forward contracts (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:46.122%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.204%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.034%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.204%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:10.746%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Currency&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Notional&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;USD&lt;br/&gt;Equivalent&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notional&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;USD&lt;br/&gt;Equivalent&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Singapore Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;39,950&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;29,652&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Euro&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;18,500&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;19,940&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,302&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Mexican Peso&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;205,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;12,273&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Chinese Renminbi&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;50,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,886&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,025&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Hungarian Forint&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2,250,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,152&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,240,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;British Pound&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,330&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,229&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Japanese Yen&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;600,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,980&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Swiss Franc&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2,400&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2,673&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canadian Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,720&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,270&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,470&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,112&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:1pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.368%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.863%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.368%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.113%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.563%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.113%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.570%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Asset Derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liability Derivatives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Sheet&lt;br/&gt;Location&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Sheet&lt;br/&gt;Location&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Economic hedge forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid&#160;expenses&#160;and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;22&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;221&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:21.008%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.824%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.345%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.824%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.223%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:21.008%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.345%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.227%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Asset Derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liability Derivatives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts of recognized assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;22&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts of recognized liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;221&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts offset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts offset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount of assets presented&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;22&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount of liabilities presented&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;221&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.835%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:53.724%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.793%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Location in Financial Statements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:24pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gains (losses) recognized in current operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency gain (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(245)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,471)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock>
    <us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1 contextRef="c-97" id="f-641">P3M</us-gaap:MaximumRemainingMaturityOfForeignCurrencyDerivatives1>
    <cgnx:OutstandingForwardContractsTableTextBlock contextRef="c-1" id="f-642">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company had the following outstanding forward contracts (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:46.122%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.204%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.034%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.204%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:10.746%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Currency&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Notional&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;USD&lt;br/&gt;Equivalent&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notional&lt;br/&gt;Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;USD&lt;br/&gt;Equivalent&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Singapore Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;39,950&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;29,652&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39,700&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,136&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Euro&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;18,500&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;19,940&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;40,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;44,302&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Mexican Peso&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;205,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;12,273&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;145,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;8,505&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Chinese Renminbi&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;50,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,886&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,025&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Hungarian Forint&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2,250,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6,152&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2,240,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6,466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;British Pound&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,330&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,229&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;3,345&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,258&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Japanese Yen&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;600,000&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;3,980&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600,000&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,255&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Swiss Franc&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2,400&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;2,673&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Canadian Dollar&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,720&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,270&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,470&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,112&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</cgnx:OutstandingForwardContractsTableTextBlock>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-98" decimals="-3" id="f-643" unitRef="sgd">39950000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-98" decimals="-3" id="f-644" unitRef="usd">29652000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-99" decimals="-3" id="f-645" unitRef="sgd">39700000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-99" decimals="-3" id="f-646" unitRef="usd">30136000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-100" decimals="-3" id="f-647" unitRef="eur">18500000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-100" decimals="-3" id="f-648" unitRef="usd">19940000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-101" decimals="-3" id="f-649" unitRef="eur">40000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-101" decimals="-3" id="f-650" unitRef="usd">44302000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-102" decimals="-3" id="f-651" unitRef="mxn">205000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-102" decimals="-3" id="f-652" unitRef="usd">12273000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-103" decimals="-3" id="f-653" unitRef="mxn">145000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-103" decimals="-3" id="f-654" unitRef="usd">8505000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-104" decimals="-3" id="f-655" unitRef="cny">50000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-104" decimals="-3" id="f-656" unitRef="usd">6886000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-105" decimals="-3" id="f-657" unitRef="cny">50000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-105" decimals="-3" id="f-658" unitRef="usd">7025000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-106" decimals="-3" id="f-659" unitRef="huf">2250000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-106" decimals="-3" id="f-660" unitRef="usd">6152000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-107" decimals="-3" id="f-661" unitRef="huf">2240000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-107" decimals="-3" id="f-662" unitRef="usd">6466000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-108" decimals="-3" id="f-663" unitRef="gbp">3330000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-108" decimals="-3" id="f-664" unitRef="usd">4229000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-109" decimals="-3" id="f-665" unitRef="gbp">3345000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-109" decimals="-3" id="f-666" unitRef="usd">4258000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-110" decimals="-3" id="f-667" unitRef="jpy">600000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-110" decimals="-3" id="f-668" unitRef="usd">3980000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-111" decimals="-3" id="f-669" unitRef="jpy">600000000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-111" decimals="-3" id="f-670" unitRef="usd">4255000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-112" decimals="-3" id="f-671" unitRef="chf">2400000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-112" decimals="-3" id="f-672" unitRef="usd">2673000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-113" decimals="-3" id="f-673" unitRef="chf">0</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-113" decimals="-3" id="f-674" unitRef="usd">0</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-114" decimals="-3" id="f-675" unitRef="cad">1720000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-114" decimals="-3" id="f-676" unitRef="usd">1270000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-115" decimals="-3" id="f-677" unitRef="cad">1470000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:DerivativeAssetNotionalAmount contextRef="c-115" decimals="-3" id="f-678" unitRef="usd">1112000</us-gaap:DerivativeAssetNotionalAmount>
    <us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock contextRef="c-1" id="f-679">&lt;div style="margin-top:1pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.368%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.863%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:17.368%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.113%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.563%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.113%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.550%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.570%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Asset Derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liability Derivatives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Balance&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Sheet&lt;br/&gt;Location&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Sheet&lt;br/&gt;Location&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Economic hedge forward contracts&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Prepaid&#160;expenses&#160;and other current assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;22&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Accrued expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;221&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock>
    <us-gaap:DerivativeAssets contextRef="c-116" decimals="-3" id="f-680" unitRef="usd">22000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets contextRef="c-117" decimals="-3" id="f-681" unitRef="usd">151000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeLiabilities contextRef="c-116" decimals="-3" id="f-682" unitRef="usd">221000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities contextRef="c-117" decimals="-3" id="f-683" unitRef="usd">106000</us-gaap:DerivativeLiabilities>
    <us-gaap:OffsettingAssetsTableTextBlock contextRef="c-1" id="f-684">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:21.008%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.824%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.345%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.824%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.223%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:21.008%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.345%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.227%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Asset Derivatives&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Liability Derivatives&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31,           2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts of recognized assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;22&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts of recognized liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;221&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts offset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gross amounts offset&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount of assets presented&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;22&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;151&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net amount of liabilities presented&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;221&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;106&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:OffsettingAssetsTableTextBlock>
    <us-gaap:DerivativeFairValueOfDerivativeAsset contextRef="c-2" decimals="-3" id="f-685" unitRef="usd">22000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeAsset contextRef="c-4" decimals="-3" id="f-686" unitRef="usd">151000</us-gaap:DerivativeFairValueOfDerivativeAsset>
    <us-gaap:DerivativeFairValueOfDerivativeLiability contextRef="c-2" decimals="-3" id="f-687" unitRef="usd">221000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeFairValueOfDerivativeLiability contextRef="c-4" decimals="-3" id="f-688" unitRef="usd">106000</us-gaap:DerivativeFairValueOfDerivativeLiability>
    <us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset contextRef="c-2" decimals="-3" id="f-689" unitRef="usd">0</us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset>
    <us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset contextRef="c-4" decimals="-3" id="f-690" unitRef="usd">0</us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset>
    <us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset contextRef="c-2" decimals="-3" id="f-691" unitRef="usd">0</us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset>
    <us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset contextRef="c-4" decimals="-3" id="f-692" unitRef="usd">0</us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset>
    <us-gaap:DerivativeAssets contextRef="c-2" decimals="-3" id="f-693" unitRef="usd">22000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeAssets contextRef="c-4" decimals="-3" id="f-694" unitRef="usd">151000</us-gaap:DerivativeAssets>
    <us-gaap:DerivativeLiabilities contextRef="c-2" decimals="-3" id="f-695" unitRef="usd">221000</us-gaap:DerivativeLiabilities>
    <us-gaap:DerivativeLiabilities contextRef="c-4" decimals="-3" id="f-696" unitRef="usd">106000</us-gaap:DerivativeLiabilities>
    <us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock contextRef="c-1" id="f-697">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.835%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:53.724%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.788%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.793%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:14pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Location in Financial Statements&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:24pt"&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Derivatives Not Designated as Hedging Instruments:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Gains (losses) recognized in current operations&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign currency gain (loss)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;(245)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,471)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock>
    <us-gaap:DerivativeGainLossOnDerivativeNet contextRef="c-97" decimals="-3" id="f-698" unitRef="usd">-245000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:DerivativeGainLossOnDerivativeNet contextRef="c-118" decimals="-3" id="f-699" unitRef="usd">-1471000</us-gaap:DerivativeGainLossOnDerivativeNet>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="c-1" id="f-700">Revenue Recognition&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:67.321%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.961%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;83,135&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,442&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Europe&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;52,354&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,842&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater China&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;30,049&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;45,259&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;210,797&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;201,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes disaggregated revenue information by revenue type (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:67.375%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.386%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.002%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.004%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Standard products and services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;187,632&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;190,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Application-specific customer solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;23,165&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;210,797&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;201,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Costs to Fulfill a Contract&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to $11,783,000 and $13,265,000 as of March&#160;31, 2024 and December&#160;31, 2023, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Accounts Receivable, Contract Assets, and Contract Liabilities&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the allowance for credit losses activity for the three-month period ended March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:79.341%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.459%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Write-offs, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;601&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the deferred revenue and customer deposits activity for the three-month period ended March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:79.341%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.459%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferral of revenue billed in the current period, net of recognition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recognition of revenue deferred in prior period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,184)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(279)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;39,983&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations for our contracts that have an original expected duration of less than one year. The remaining unsatisfied performance obligations for our contracts that have an original expected duration of more than one year, primarily related to extended warranties, are not material.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock contextRef="c-1" id="f-701">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:67.321%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.961%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Americas&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;83,135&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;80,442&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Europe&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;52,354&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;59,842&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Greater China&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;30,049&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,172&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other Asia&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;45,259&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;27,668&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;210,797&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;201,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-119" decimals="-3" id="f-702" unitRef="usd">83135000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-120" decimals="-3" id="f-703" unitRef="usd">80442000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-121" decimals="-3" id="f-704" unitRef="usd">52354000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-122" decimals="-3" id="f-705" unitRef="usd">59842000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-123" decimals="-3" id="f-706" unitRef="usd">30049000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-124" decimals="-3" id="f-707" unitRef="usd">33172000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-125" decimals="-3" id="f-708" unitRef="usd">45259000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-126" decimals="-3" id="f-709" unitRef="usd">27668000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-1" decimals="-3" id="f-710" unitRef="usd">210797000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-3" decimals="-3" id="f-711" unitRef="usd">201124000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock contextRef="c-1" id="f-712">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes disaggregated revenue information by revenue type (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:67.375%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.386%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.002%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.533%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.004%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Standard products and services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;187,632&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;190,783&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Application-specific customer solutions&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;23,165&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,341&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;210,797&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;201,124&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-127" decimals="-3" id="f-713" unitRef="usd">187632000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-128" decimals="-3" id="f-714" unitRef="usd">190783000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-129" decimals="-3" id="f-715" unitRef="usd">23165000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-130" decimals="-3" id="f-716" unitRef="usd">10341000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-1" decimals="-3" id="f-717" unitRef="usd">210797000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="c-3" decimals="-3" id="f-718" unitRef="usd">201124000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CapitalizedContractCostGross contextRef="c-2" decimals="-3" id="f-719" unitRef="usd">11783000</us-gaap:CapitalizedContractCostGross>
    <us-gaap:CapitalizedContractCostGross contextRef="c-4" decimals="-3" id="f-720" unitRef="usd">13265000</us-gaap:CapitalizedContractCostGross>
    <us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock contextRef="c-1" id="f-721">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the allowance for credit losses activity for the three-month period ended March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:79.341%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.459%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;583&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Write-offs, net of recoveries&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;601&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable contextRef="c-4" decimals="-3" id="f-722" unitRef="usd">583000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <cgnx:AccountsReceivableAllowanceForCreditLossWriteoffRecovery contextRef="c-1" decimals="-3" id="f-723" unitRef="usd">-17000</cgnx:AccountsReceivableAllowanceForCreditLossWriteoffRecovery>
    <cgnx:AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease contextRef="c-1" decimals="-3" id="f-724" unitRef="usd">1000</cgnx:AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable contextRef="c-2" decimals="-3" id="f-725" unitRef="usd">601000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:DeferredRevenueByArrangementDisclosureTextBlock contextRef="c-1" id="f-726">&lt;div style="margin-top:3pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the deferred revenue and customer deposits activity for the three-month period ended March&#160;31, 2024 (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:8pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:79.341%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:18.459%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of December 31, 2023&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;31,525&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Deferral of revenue billed in the current period, net of recognition&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;24,921&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recognition of revenue deferred in prior period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(16,184)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Foreign exchange rate changes&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(279)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Balance as of March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;39,983&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DeferredRevenueByArrangementDisclosureTextBlock>
    <us-gaap:DeferredRevenue contextRef="c-4" decimals="-3" id="f-727" unitRef="usd">31525000</us-gaap:DeferredRevenue>
    <us-gaap:DeferredRevenueAdditions contextRef="c-1" decimals="-3" id="f-728" unitRef="usd">24921000</us-gaap:DeferredRevenueAdditions>
    <us-gaap:DeferredRevenueRevenueRecognized1 contextRef="c-1" decimals="-3" id="f-729" unitRef="usd">16184000</us-gaap:DeferredRevenueRevenueRecognized1>
    <cgnx:DeferredRevenueForeignCurrencyExchangeAdjustment contextRef="c-1" decimals="-3" id="f-730" unitRef="usd">-279000</cgnx:DeferredRevenueForeignCurrencyExchangeAdjustment>
    <us-gaap:DeferredRevenue contextRef="c-2" decimals="-3" id="f-731" unitRef="usd">39983000</us-gaap:DeferredRevenue>
    <us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock contextRef="c-1" id="f-732">Stock-Based Compensation Expense&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Stock Plans&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;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 &#x201c;2023 Plan&#x201d;). 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 &#x201c;2001 Plan&#x201d;), and the Cognex Corporation 2007 Stock Option and Incentive Plan, as amended and restated (the &#x201c;2007 Plan&#x201d;). 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 &#x201c;Carryover Shares&#x201d;). As of March&#160;31, 2024, forfeitures, cancellations, and other terminations from the 2001 Plan and the 2007 Plan have resulted in 707,900 Carryover Shares, raising the authorized total shares that may be issued under the 2023 Plan to 8,807,900&lt;/span&gt;&lt;span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of March&#160;31, 2024, the Company had 6,001,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&#x2019;s common stock at the grant date and generally vest over &lt;span style="-sec-ix-hidden:f-738"&gt;four&lt;/span&gt; or five years based upon continuous service and expire ten years from the grant date. RSUs generally vest upon &lt;span style="-sec-ix-hidden:f-741"&gt;three&lt;/span&gt; or four years of continuous employment or incrementally over such &lt;span style="-sec-ix-hidden:f-743"&gt;three&lt;/span&gt; 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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Stock Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company&#x2019;s stock option activity for the three-month period ended March&#160;31, 2024:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:37.699%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.273%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.223%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.126%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.983%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;(in&#160;thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Exercise&lt;br/&gt;Price&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Remaining&lt;br/&gt;Contractual&lt;br/&gt;Term&#160;(in&#160;years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Aggregate&lt;br/&gt;Intrinsic&lt;br/&gt;Value&lt;br/&gt;(in&#160;thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of December&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;9,008&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;50.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,523&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39.44&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercised&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(56)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;19.87&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited or expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(330)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;57.58&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Outstanding as of March&#160;31, 2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;10,145&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;49.11&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6.30&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;21,531&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Exercisable as of March&#160;31, 2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;5,973&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;49.04&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4.56&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;15,941&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Options vested or expected to vest as of March 31, 2024 (1)&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;9,405&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;49.28&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;6.09&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;20,336&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:1pt;padding-left:36pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;(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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:1pt;padding-left:36pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:1pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total cash received as a result of stock option exercises for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $1,121,000 and $3,976,000, respectively. In connection with these exercises, the tax benefit (expense) realized by the Company for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 was $(29,000) and $(1,466,000), respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:1pt;padding-left:36pt;text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:68.052%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months&#160;Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4.3&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;0.76&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;39&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4.7&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:9pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Risk-free rate&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected dividend yield&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The current dividend yield was calculated by annualizing the cash dividend declared by the Company&#x2019;s Board of Directors and dividing that result by the closing stock price on the grant date.&#160;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected volatility&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The expected volatility was based upon a combination of historical volatility of&#160;the Company&#x2019;s common stock over the contractual term of the option and implied volatility for traded options of the Company&#x2019;s stock.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt;Expected term&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The weighted-average grant-date fair values of stock options granted during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $14.66 and $17.79, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total intrinsic values of stock options exercised for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $1,055,000 and $3,439,000, respectively. The total fair values of stock options vested for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $25,807,000 and $31,181,000, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Restricted Stock Units (RSUs)&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company's RSUs activity for the three-month period ended March&#160;31, 2024: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:65.420%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.838%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average &lt;br/&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of December&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;765&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38.82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(339)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited or expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52.43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of March&#160;31, 2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,819&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;45.68&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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 periods ended March&#160;31, 2024 and April&#160;2, 2023 were $38.82 and $46.61, respectively. There were 339,000 and 453,000 RSUs that vested during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Tax obligations for vested RSUs are settled by withholding a portion of the shares prior to distribution to the shareholder. The total cash used by the Company to fund the tax payments for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 were $3,981,000 and $7,032,000, respectively. In connection with these vested RSUs, the tax benefit (expense) realized by the Company for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023 was $(4,793,000) and $(2,718,000), respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Performance Restricted Stock Units (PRSUs)&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company's PRSUs activity for the three-month period ended March&#160;31, 2024: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:65.420%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.838%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average &lt;br/&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of December&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39.05&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited or expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of March&#160;31, 2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;134&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;46.82&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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 55,000 and 46,000 PRSUs granted during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively. No PRSUs vested during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;Stock-Based Compensation Expense&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;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, 9% 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 $1,832,000 and $234,000 during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;As of March&#160;31, 2024, total unrecognized compensation expense, net of estimated forfeitures, related to non-vested equity awards, including stock options, RSUs, and PRSUs, was $86,273,000, which is expected to be recognized over a weighted-average period of 2.1 years.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended March&#160;31, 2024 were $13,302,000 and $1,745,000, respectively. The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended April&#160;2, 2023 were $16,579,000 and $2,308,000, respectively. No compensation expense was capitalized as of March&#160;31, 2024 or December&#160;31, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:68.052%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;605&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research, development, and engineering&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,389&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;8,308&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;13,302&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,579&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c-131"
      decimals="INF"
      id="f-733"
      unitRef="shares">8100000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="c-132"
      decimals="INF"
      id="f-734"
      unitRef="shares">10610800</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized
      contextRef="c-133"
      decimals="INF"
      id="f-735"
      unitRef="shares">707900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="c-134"
      decimals="INF"
      id="f-736"
      unitRef="shares">8807900</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="c-135"
      decimals="INF"
      id="f-737"
      unitRef="shares">6001000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-137" id="f-739">P5Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <cgnx:ExpirationPeriodOfStockOptionPlan contextRef="c-138" id="f-740">P10Y</cgnx:ExpirationPeriodOfStockOptionPlan>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-140" id="f-742">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-140" id="f-744">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 contextRef="c-141" id="f-745">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c-4" decimals="-3" id="f-746" unitRef="shares">9008000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c-4"
      decimals="2"
      id="f-747"
      unitRef="usdPerShare">50.87</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod contextRef="c-1" decimals="-3" id="f-748" unitRef="shares">1523000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice
      contextRef="c-1"
      decimals="2"
      id="f-749"
      unitRef="usdPerShare">39.44</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised contextRef="c-1" decimals="-3" id="f-750" unitRef="shares">56000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
      contextRef="c-1"
      decimals="2"
      id="f-751"
      unitRef="usdPerShare">19.87</us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod contextRef="c-1" decimals="-3" id="f-752" unitRef="shares">330000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice
      contextRef="c-1"
      decimals="2"
      id="f-753"
      unitRef="usdPerShare">57.58</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="c-2" decimals="-3" id="f-754" unitRef="shares">10145000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
      contextRef="c-2"
      decimals="2"
      id="f-755"
      unitRef="usdPerShare">49.11</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2 contextRef="c-1" id="f-756">P6Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="c-2" decimals="-3" id="f-757" unitRef="usd">21531000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="c-2" decimals="-3" id="f-758" unitRef="shares">5973000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
      contextRef="c-2"
      decimals="2"
      id="f-759"
      unitRef="usdPerShare">49.04</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 contextRef="c-1" id="f-760">P4Y6M21D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1>
    <cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue contextRef="c-2" decimals="-3" id="f-761" unitRef="usd">15941000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber contextRef="c-2" decimals="-3" id="f-762" unitRef="shares">9405000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
      contextRef="c-2"
      decimals="2"
      id="f-763"
      unitRef="usdPerShare">49.28</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1 contextRef="c-1" id="f-764">P6Y1M2D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue contextRef="c-2" decimals="-3" id="f-765" unitRef="usd">20336000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue>
    <us-gaap:ProceedsFromStockOptionsExercised contextRef="c-1" decimals="-3" id="f-766" unitRef="usd">1121000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:ProceedsFromStockOptionsExercised contextRef="c-3" decimals="-3" id="f-767" unitRef="usd">3976000</us-gaap:ProceedsFromStockOptionsExercised>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="c-1" decimals="-3" id="f-768" unitRef="usd">-29000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="c-3" decimals="-3" id="f-769" unitRef="usd">-1466000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="c-1" id="f-770">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:68.052%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months&#160;Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Risk-free rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4.3&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.0&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected dividend yield&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;0.76&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;0.59&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected volatility&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;39&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected term (in years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4.7&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4.3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c-1" decimals="3" id="f-771" unitRef="number">0.043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="c-3" decimals="3" id="f-772" unitRef="number">0.040</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c-1" decimals="4" id="f-773" unitRef="number">0.0076</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate contextRef="c-3" decimals="4" id="f-774" unitRef="number">0.0059</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c-1" decimals="2" id="f-775" unitRef="number">0.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="c-3" decimals="2" id="f-776" unitRef="number">0.39</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c-1" id="f-777">P4Y8M12D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="c-3" id="f-778">P4Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-1"
      decimals="2"
      id="f-779"
      unitRef="usdPerShare">14.66</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-3"
      decimals="2"
      id="f-780"
      unitRef="usdPerShare">17.79</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue contextRef="c-1" decimals="-3" id="f-781" unitRef="usd">1055000</cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue>
    <cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue contextRef="c-3" decimals="-3" id="f-782" unitRef="usd">3439000</cgnx:SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue>
    <cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue contextRef="c-1" decimals="-3" id="f-783" unitRef="usd">25807000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue>
    <cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue contextRef="c-3" decimals="-3" id="f-784" unitRef="usd">31181000</cgnx:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue>
    <us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock contextRef="c-1" id="f-785">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company's RSUs activity for the three-month period ended March&#160;31, 2024: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:65.420%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.838%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average &lt;br/&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of December&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,429&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;54.22&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;765&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;38.82&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(339)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;65.45&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited or expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(36)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52.43&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of March&#160;31, 2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,819&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;45.68&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c-142"
      decimals="-3"
      id="f-786"
      unitRef="shares">1429000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c-142"
      decimals="2"
      id="f-787"
      unitRef="usdPerShare">54.22</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c-143"
      decimals="-3"
      id="f-788"
      unitRef="shares">765000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-789"
      unitRef="usdPerShare">38.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c-143"
      decimals="-3"
      id="f-790"
      unitRef="shares">339000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-791"
      unitRef="usdPerShare">65.45</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="c-143"
      decimals="-3"
      id="f-792"
      unitRef="shares">36000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-793"
      unitRef="usdPerShare">52.43</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c-144"
      decimals="-3"
      id="f-794"
      unitRef="shares">1819000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c-144"
      decimals="2"
      id="f-795"
      unitRef="usdPerShare">45.68</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-143"
      decimals="2"
      id="f-796"
      unitRef="usdPerShare">38.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-145"
      decimals="2"
      id="f-797"
      unitRef="usdPerShare">46.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c-143"
      decimals="-3"
      id="f-798"
      unitRef="shares">339000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c-145"
      decimals="-3"
      id="f-799"
      unitRef="shares">453000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation contextRef="c-143" decimals="0" id="f-800" unitRef="usd">3981000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation contextRef="c-145" decimals="0" id="f-801" unitRef="usd">7032000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c-143" decimals="0" id="f-802" unitRef="usd">-4793000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c-145" decimals="0" id="f-803" unitRef="usd">-2718000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock contextRef="c-1" id="f-804">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the Company's PRSUs activity for the three-month period ended March&#160;31, 2024: &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:65.420%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:14.838%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Shares&lt;br/&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Weighted-Average &lt;br/&gt;Grant Date Fair Value&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of December&#160;31, 2023&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;79&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;52.23&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Granted&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;39.05&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Vested&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Forfeited or expired&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Nonvested as of March&#160;31, 2024&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;134&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;46.82&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c-146"
      decimals="-3"
      id="f-805"
      unitRef="shares">79000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c-146"
      decimals="2"
      id="f-806"
      unitRef="usdPerShare">52.23</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c-141"
      decimals="-3"
      id="f-807"
      unitRef="shares">55000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-141"
      decimals="2"
      id="f-808"
      unitRef="usdPerShare">39.05</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c-141"
      decimals="-3"
      id="f-809"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="c-141"
      decimals="2"
      id="f-810"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="c-141"
      decimals="-3"
      id="f-811"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="c-141"
      decimals="2"
      id="f-812"
      unitRef="usdPerShare">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c-147"
      decimals="-3"
      id="f-813"
      unitRef="shares">134000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c-147"
      decimals="2"
      id="f-814"
      unitRef="usdPerShare">46.82</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c-141"
      decimals="-3"
      id="f-815"
      unitRef="shares">55000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c-148"
      decimals="-3"
      id="f-816"
      unitRef="shares">46000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c-148"
      decimals="-3"
      id="f-817"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c-141"
      decimals="-3"
      id="f-818"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <cgnx:NumberOfGroupsWithinEmployeePopulation contextRef="c-2" decimals="INF" id="f-819" unitRef="group">3</cgnx:NumberOfGroupsWithinEmployeePopulation>
    <cgnx:EstimatedForfeitureRateForUnvestedOptionsForCEO contextRef="c-2" decimals="2" id="f-820" unitRef="number">0</cgnx:EstimatedForfeitureRateForUnvestedOptionsForCEO>
    <cgnx:EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement contextRef="c-2" decimals="2" id="f-821" unitRef="number">0.09</cgnx:EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement>
    <cgnx:EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement contextRef="c-2" decimals="2" id="f-822" unitRef="number">0.13</cgnx:EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement>
    <cgnx:DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates contextRef="c-1" decimals="-3" id="f-823" unitRef="usd">1832000</cgnx:DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates>
    <cgnx:DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates contextRef="c-3" decimals="-3" id="f-824" unitRef="usd">234000</cgnx:DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized contextRef="c-2" decimals="INF" id="f-825" unitRef="usd">86273000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <cgnx:EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition contextRef="c-1" id="f-826">P2Y1M6D</cgnx:EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-1" decimals="-3" id="f-827" unitRef="usd">13302000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c-1" decimals="-3" id="f-828" unitRef="usd">1745000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-3" decimals="-3" id="f-829" unitRef="usd">16579000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense contextRef="c-3" decimals="-3" id="f-830" unitRef="usd">2308000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense>
    <cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount contextRef="c-2" decimals="INF" id="f-831" unitRef="usd">0</cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount>
    <cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount contextRef="c-4" decimals="INF" id="f-832" unitRef="usd">0</cgnx:EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock contextRef="c-1" id="f-833">&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:68.052%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;605&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;621&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Research, development, and engineering&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4,389&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,890&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general, and administrative&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;8,308&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;10,068&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;13,302&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,579&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-149" decimals="-3" id="f-834" unitRef="usd">605000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-150" decimals="-3" id="f-835" unitRef="usd">621000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-151" decimals="-3" id="f-836" unitRef="usd">4389000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-152" decimals="-3" id="f-837" unitRef="usd">5890000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-153" decimals="-3" id="f-838" unitRef="usd">8308000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-154" decimals="-3" id="f-839" unitRef="usd">10068000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-1" decimals="-3" id="f-840" unitRef="usd">13302000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="c-3" decimals="-3" id="f-841" unitRef="usd">16579000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock contextRef="c-1" id="f-842">Stock Repurchase ProgramIn March 2022, the Company's Board of Directors authorized the repurchase of $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 479,000 shares at a total cost of $24,178,000 during the three-month period ended April&#160;2, 2023 and 231,000 shares at a total cost of $9,339,000 during the three-month period ended March&#160;31, 2024, leaving a remaining balance of $323,553,000 as of March&#160;31, 2024. 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.</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:StockRepurchaseProgramAuthorizedAmount1 contextRef="c-155" decimals="-3" id="f-843" unitRef="usd">500000000</us-gaap:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="c-156"
      decimals="INF"
      id="f-844"
      unitRef="shares">479000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c-156" decimals="-3" id="f-845" unitRef="usd">24178000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="c-157"
      decimals="INF"
      id="f-846"
      unitRef="shares">231000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:TreasuryStockValueAcquiredCostMethod contextRef="c-157" decimals="-3" id="f-847" unitRef="usd">9339000</us-gaap:TreasuryStockValueAcquiredCostMethod>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1 contextRef="c-158" decimals="-3" id="f-848" unitRef="usd">323553000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="c-1" id="f-849">Income Taxes&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's effective tax rate was 32% and 2% for the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has defined its major tax jurisdictions as the United States, Ireland, China, Japan, and Korea, and within the United States, Massachusetts. The statutory tax rate is 12.5% in Ireland, 25% in China, 34.6% in Japan, and 21% in Korea, compared to the U.S. federal statutory corporate tax rate of 21%. These foreign tax rate differences resulted in a favorable impact to the effective tax rate for both the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company recorded a net discrete tax expense totaling $3,085,000 for the three-month period ended March&#160;31, 2024, and a net discrete tax benefit totaling $3,594,000 for the same period in 2023.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Discrete tax items for the three-month period ended March&#160;31, 2024 included (1) an increase in tax expense of $1,123,000 related to stock-based compensation; (2) an increase in tax expense of $458,000 related to state tax matters; (3) an increase in tax expense of $458,000 for interest expense related to tax reserves; and (4) a net increase in tax expense of $1,046,000 for other tax matters.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Discrete tax items for the three-month period ended April&#160;2, 2023 included (1) an increase in tax expense of $1,068,000 related to stock-based compensation; (2) a decrease in tax expense of $2,292,000 for releasing tax reserves on state tax credits; (3) a decrease in tax expense of $2,198,000 for adjustments to certain deferred tax assets; and (4) a decrease in tax expense of $172,000 for return-to-provision adjustments. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company&#x2019;s reserve for income taxes, including gross interest and penalties, was $30,511,000 as of March&#160;31, 2024, of which $28,144,000 was classified as a non-current liability and $2,367,000 was classified as an offset to deferred tax assets. If the Company&#x2019;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.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Within the United States, the tax years 2020 through 2022 remain open to examination by the IRS, and 2019 through 2022 remain open to examination by various state tax authorities. The tax years 2017 through 2023 remain open to examination by various international taxing authorities in other jurisdictions in which the Company operates. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In October 2021, more than 135 countries and jurisdictions agreed to participate in a "two-pillar" international tax approach developed by the Organisation for Economic Co-operation and Development (OECD), which includes establishing a global minimum corporate tax rate of 15%. The OECD published "Tax Challenges Arising from the Digitalisation of the Economy &#x2014; Global Anti-Base Erosion Model Rules (Pillar Two)" in December 2021 and subsequently issued additional commentary and administrative guidance clarifying several aspects of the model rules. Since the model rules have been released, many countries have now enacted Pillar Two-related laws, some of which became effective January 1, 2024, and it is anticipated that more countries will follow suit throughout 2024. As of March 31, 2024, the Company does not expect Pillar Two taxes to have a significant impact on its 2024 financial statements.&lt;/span&gt;&lt;/div&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c-1" decimals="2" id="f-850" unitRef="number">0.32</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations contextRef="c-3" decimals="2" id="f-851" unitRef="number">0.02</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c-159" decimals="3" id="f-852" unitRef="number">0.125</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c-160" decimals="2" id="f-853" unitRef="number">0.25</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c-161" decimals="3" id="f-854" unitRef="number">0.346</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c-162" decimals="2" id="f-855" unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate contextRef="c-163" decimals="2" id="f-856" unitRef="number">0.21</us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate>
    <cgnx:EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount contextRef="c-1" decimals="-3" id="f-857" unitRef="usd">3085000</cgnx:EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount>
    <cgnx:EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount contextRef="c-3" decimals="-3" id="f-858" unitRef="usd">3594000</cgnx:EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount contextRef="c-1" decimals="-3" id="f-859" unitRef="usd">1123000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:IncomeTaxReconciliationTaxSettlements contextRef="c-1" decimals="-3" id="f-860" unitRef="usd">458000</us-gaap:IncomeTaxReconciliationTaxSettlements>
    <us-gaap:IncomeTaxReconciliationTaxContingencies contextRef="c-1" decimals="-3" id="f-861" unitRef="usd">458000</us-gaap:IncomeTaxReconciliationTaxContingencies>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments contextRef="c-1" decimals="-3" id="f-862" unitRef="usd">1046000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount contextRef="c-3" decimals="-3" id="f-863" unitRef="usd">1068000</us-gaap:EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount>
    <us-gaap:IncomeTaxReconciliationTaxSettlements contextRef="c-3" decimals="-3" id="f-864" unitRef="usd">2292000</us-gaap:IncomeTaxReconciliationTaxSettlements>
    <us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance contextRef="c-3" decimals="-3" id="f-865" unitRef="usd">2198000</us-gaap:IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments contextRef="c-3" decimals="-3" id="f-866" unitRef="usd">172000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <cgnx:LiabilityForUncertainTaxPositions contextRef="c-2" decimals="-3" id="f-867" unitRef="usd">30511000</cgnx:LiabilityForUncertainTaxPositions>
    <cgnx:UnrecognizedTaxBenefitsGrossNoncurrentLiability contextRef="c-2" decimals="-3" id="f-868" unitRef="usd">28144000</cgnx:UnrecognizedTaxBenefitsGrossNoncurrentLiability>
    <cgnx:UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes contextRef="c-2" decimals="-3" id="f-869" unitRef="usd">2367000</cgnx:UnrecognizedTaxBenefitsGrossOffsetToTaxAttributes>
    <cgnx:TaxYearsOpenToExaminationByInternalRevenueService contextRef="c-1" id="f-870">2020 through 2022</cgnx:TaxYearsOpenToExaminationByInternalRevenueService>
    <cgnx:IncomeTaxExaminationYearsUnderExaminationOtherEntities contextRef="c-1" id="f-871">2017 through 2023</cgnx:IncomeTaxExaminationYearsUnderExaminationOtherEntities>
    <us-gaap:EarningsPerShareTextBlock contextRef="c-3" id="f-872">Weighted-Average Shares&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Weighted-average shares were calculated as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:68.052%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic weighted-average common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;171,692&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;172,624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect of dilutive equity awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;902&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average common and common-equivalent shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;172,594&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;173,903&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Stock options to purchase 8,176,000 and 6,515,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. Restricted stock units totaling 1,000 and 10,000 shares of common stock, on a weighted-average basis, were outstanding during the &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;three-month periods ended March&#160;31, 2024 and April&#160;2, 2023, 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 periods ended March&#160;31, 2024 and April&#160;2, 2023, as PRSUs were not anti-dilutive on a weighted-average basis.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock contextRef="c-1" id="f-873">&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Weighted-average shares were calculated as follows (in thousands):&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:68.052%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.958%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.960%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three-months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;April 2, 2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Basic weighted-average common shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;171,692&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;172,624&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Effect of dilutive equity awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;902&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,279&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average common and common-equivalent shares outstanding&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;172,594&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;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"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;173,903&#160;&lt;/span&gt;&lt;/td&gt;&lt;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"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-1" decimals="-3" id="f-874" unitRef="shares">171692000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-3" decimals="-3" id="f-875" unitRef="shares">172624000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c-1" decimals="-3" id="f-876" unitRef="shares">902000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c-3" decimals="-3" id="f-877" unitRef="shares">1279000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-1" decimals="-3" id="f-878" unitRef="shares">172594000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-3" decimals="-3" id="f-879" unitRef="shares">173903000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c-164"
      decimals="INF"
      id="f-880"
      unitRef="shares">8176000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c-165"
      decimals="INF"
      id="f-881"
      unitRef="shares">6515000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c-166"
      decimals="INF"
      id="f-882"
      unitRef="shares">1000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c-167"
      decimals="INF"
      id="f-883"
      unitRef="shares">10000</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c-168"
      decimals="INF"
      id="f-884"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="c-169"
      decimals="INF"
      id="f-885"
      unitRef="shares">0</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:BusinessCombinationDisclosureTextBlock contextRef="c-1" id="f-886">Business Combinations&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On October 18, 2023, the Company acquired all the outstanding shares of Moritex Corporation ("Moritex"), a global provider of premium optical components based in Japan, for an enterprise value of &#xa5;40&#160;billion Japanese Yen, or approximately $270&#160;million U.S. Dollars based on the closing date foreign exchange rate.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The cash-free, debt-free enterprise value was adjusted by cash acquired, debt assumed, and final working capital balances to arrive at total consideration to be allocated to assets acquired and liabilities assumed of &#xa5;44,376,245,000 ($296,138,000 based on the closing date foreign exchange rate), of which &#xa5;44,227,414,000 ($295,144,000) was paid in cash on the closing date and &#xa5;148,831,000 ($994,000) was paid during the three-month period ended March&#160;31, 2024 as a final purchase price adjustment based on the closing balance sheet.&lt;/span&gt;&lt;/div&gt;</us-gaap:BusinessCombinationDisclosureTextBlock>
    <cgnx:BusinessCombinationEnterpriseValue contextRef="c-170" decimals="-9" id="f-887" unitRef="jpy">40000000000</cgnx:BusinessCombinationEnterpriseValue>
    <cgnx:BusinessCombinationEnterpriseValue contextRef="c-170" decimals="-6" id="f-888" unitRef="usd">270000000</cgnx:BusinessCombinationEnterpriseValue>
    <us-gaap:BusinessCombinationConsiderationTransferred1 contextRef="c-171" decimals="-3" id="f-889" unitRef="jpy">44376245000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:BusinessCombinationConsiderationTransferred1 contextRef="c-171" decimals="-3" id="f-890" unitRef="usd">296138000</us-gaap:BusinessCombinationConsiderationTransferred1>
    <us-gaap:PaymentsToAcquireBusinessesGross contextRef="c-171" decimals="-3" id="f-891" unitRef="jpy">44227414000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross contextRef="c-171" decimals="-3" id="f-892" unitRef="usd">295144000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross contextRef="c-172" decimals="-3" id="f-893" unitRef="jpy">148831000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:PaymentsToAcquireBusinessesGross contextRef="c-172" decimals="-3" id="f-894" unitRef="usd">994000</us-gaap:PaymentsToAcquireBusinessesGross>
    <us-gaap:SubsequentEventsTextBlock contextRef="c-1" id="f-895">Subsequent EventsOn May 2, 2024, the Company&#x2019;s Board of Directors declared a cash dividend of $0.075 per share. The dividend is payable on May 30, 2024 to all shareholders of record as of the close of business on May 16, 2024.</us-gaap:SubsequentEventsTextBlock>
    <us-gaap:CommonStockDividendsPerShareDeclared
      contextRef="c-173"
      decimals="INF"
      id="f-896"
      unitRef="usdPerShare">0.075</us-gaap:CommonStockDividendsPerShareDeclared>
    <ecd:NonRule10b51ArrAdoptedFlag contextRef="c-1" id="f-897">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrTrmntdFlag contextRef="c-1" id="f-898">false</ecd:NonRule10b51ArrTrmntdFlag>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
