<SEC-DOCUMENT>0001157523-23-000715.txt : 20230504
<SEC-HEADER>0001157523-23-000715.hdr.sgml : 20230504
<ACCEPTANCE-DATETIME>20230504060627
ACCESSION NUMBER:		0001157523-23-000715
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		13
CONFORMED PERIOD OF REPORT:	20230504
ITEM INFORMATION:		Results of Operations and Financial Condition
ITEM INFORMATION:		Other Events
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20230504
DATE AS OF CHANGE:		20230504

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			COGNEX CORP
		CENTRAL INDEX KEY:			0000851205
		STANDARD INDUSTRIAL CLASSIFICATION:	INDUSTRIAL INSTRUMENTS FOR MEASUREMENT, DISPLAY, AND CONTROL [3823]
		IRS NUMBER:				042713778
		STATE OF INCORPORATION:			MA
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-34218
		FILM NUMBER:		23886229

	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>8-K
<SEQUENCE>1
<FILENAME>a53392890.htm
<DESCRIPTION>COGNEX CORPORATION 8-K
<TEXT>
<XBRL>
<html xmlns:xbrli="http://www.xbrl.org/2003/instance" 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:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:srt="http://fasb.org/srt/2021-01-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2021" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:currency="http://xbrl.sec.gov/currency/2021" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:naics="http://xbrl.sec.gov/naics/2021" xmlns:sic="http://xbrl.sec.gov/sic/2021" xmlns:stpr="http://xbrl.sec.gov/stpr/2021" xmlns:exch="http://xbrl.sec.gov/exch/2021" xmlns:cgnx="http://cognex.com/20230504" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title></title>
    <!-- Licensed to: Business Wire
         Document created using Broadridge PROfile 23.3.1.5138
         Copyright 1995 - 2023 Broadridge -->
    <meta http-equiv="Content-Type" content="text/html" />
</head>

<body style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000; background-color: #ffffff;">
<div id="DSPFiXBRLHidden" style="display: none;"><ix:header><ix:hidden><ix:nonNumeric name="dei:AmendmentFlag" id="Fact_a04de1abc4f942f48b704e889fe07a99" contextRef="c20230504to20230504" format="ixt:fixed-false">false</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_efdc5ce7f7e745b6bb03628ca65777cd" contextRef="c20230504to20230504">0000851205</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="cgnx-20230504.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="c20230504to20230504"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-04</xbrli:startDate><xbrli:endDate>2023-05-04</xbrli:endDate></xbrli:period></xbrli:context></ix:resources></ix:header></div>

  <div>
    <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 16pt; font-weight: bold;">UNITED STATES</div>

    <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 16pt; font-weight: bold;">SECURITIES AND EXCHANGE COMMISSION</div>

    <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt; font-weight: bold;">WASHINGTON, DC 20549</div>

    <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"> <span style="font-weight: bold;"><br />
      </span></div>

    <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 16pt; font-weight: bold;">FORM <ix:nonNumeric name="dei:DocumentType" id="Fact_2ce5436ac9c648c4aa602a26727b4f3c" contextRef="c20230504to20230504">8-K</ix:nonNumeric></div>

    <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"> <span style="font-weight: bold;"><br />
      </span></div>

    <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt; font-weight: bold;">CURRENT REPORT</div>

    <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt; font-weight: bold;">Pursuant to Section 13 OR 15(d) of The Securities Exchange Act of 1934</div>

  </div>

  <div><br />
  </div>

  <div>
    <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt; text-indent: 18pt;">Date of report (Date of earliest event reported): <ix:nonNumeric name="dei:DocumentPeriodEndDate" id="Fact_9d72866665994730a1d9ef5e402a7f07" contextRef="c20230504to20230504" format="ixt:date-monthname-day-year-en">May 4, 2023</ix:nonNumeric></div>

  </div>

  <div><br />
  </div>

  <div>
    <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;">


  <tr>

    <td style="width: 100%; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); font-size: 10pt; font-family: 'Times New Roman',Times,serif; text-align: left;">
            <div style="text-align: center;"><span style="font-size: 16pt;"><ix:nonNumeric name="dei:EntityRegistrantName" id="Fact_51d30ee373f544f58e13ef2935782704" contextRef="c20230504to20230504">Cognex Corporation</ix:nonNumeric></span><br />
            </div>
          </td>

  </tr>

  <tr>

    <td style="width: 100%; text-align: center;">
            <p class="MsoBodyText" style="margin: 0in 123.3pt 0.0001pt 120.4pt;">(Exact name of registrant as specified in charter)</p>
          </td>

  </tr>


</table>
    <div>
<div><br /></div>

      <div>
        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;">


  <tr>

    <td style="width: 33.33%; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" id="Fact_0ba7e448563748b1b885d24a047582c0" contextRef="c20230504to20230504" format="ixt-sec:stateprovnameen">Massachusetts</ix:nonNumeric><br />
              </td>

    <td style="width: 34%; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonNumeric name="dei:EntityFileNumber" id="Fact_a8e9977afc5f41ad82b0fd628eabfe7f" contextRef="c20230504to20230504">001-34218</ix:nonNumeric><br />
              </td>

    <td style="width: 33.33%; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" id="Fact_41a4a9259d1b4e6e860f9a095902bbf0" contextRef="c20230504to20230504">04-2713778</ix:nonNumeric><br />
              </td>

  </tr>

  <tr>

    <td style="width: 33.33%; text-align: center;">
                <div>(State or other jurisdiction<br />
                </div>
                <div>of incorporation)<br />
                </div>
              </td>

    <td style="width: 34%; text-align: center;">
                <div>(Commission<br />
                </div>
                <div>File Number)<br />
                </div>
              </td>

    <td style="width: 33.33%; text-align: center;">
                <div>(IRS Employer<br />
                </div>
                <div>Identification No.)<br />
                </div>
              </td>

  </tr>


</table>
        <div><br /></div>

        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;">


  <tr>

    <td style="width: 50%; border-bottom: 2px solid rgb(0, 0, 0); text-align: center;">
                <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" id="Fact_fa9e6d62dcd745248f39bd18549c55a0" contextRef="c20230504to20230504">One Vision Drive</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_b1b5f5984773425aaf2095506431a309" contextRef="c20230504to20230504">Natick</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_dfada3033701442c9f869644c57cc9eb" contextRef="c20230504to20230504" format="ixt-sec:stateprovnameen">Massachusetts</ix:nonNumeric></div>
              </td>

    <td style="width: 50%; border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><ix:nonNumeric name="dei:EntityAddressPostalZipCode" id="Fact_f284eb528dd5456db64dcf4c86b19bcd" contextRef="c20230504to20230504">01760-2059</ix:nonNumeric><br />
                </div>
              </td>

  </tr>

  <tr>

    <td style="width: 50.00%;">
                <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">(Address of principal executive offices)</div>
              </td>

    <td style="width: 50.00%;">
                <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">(Zip Code)</div>
              </td>

  </tr>


</table>
        <div><br /></div>

        <div>
          <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt; text-indent: 18pt;">Registrant's telephone number, including area code: (<ix:nonNumeric name="dei:CityAreaCode" id="Fact_553b66b58cca4d7db36dc5908137b2f6" contextRef="c20230504to20230504">508</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_f7384943ee9b4a05bf6cc911c5e0ed96" contextRef="c20230504to20230504">650-3000</ix:nonNumeric></div>

        </div>

        <div><br />
        </div>

        <div>
          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;">


  <tr>

    <td style="width: 100%; text-transform: none; border-bottom: 2px solid rgb(0, 0, 0); font-size: 10pt; font-family: 'Times New Roman',Times,serif; text-align: center;">N/A<br />
                </td>

  </tr>

  <tr>

    <td style="width: 100%; text-align: center;">
                  <div style="text-align: center; margin-right: 123.35pt; margin-left: 120.4pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">(Former name or former address, if changed since last report.)</div>
                </td>

  </tr>


</table>
          <div>
<div>&#160;
            </div>
<div>
              <div>
                <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt; text-indent: 18pt;">Check the appropriate box below if the Form 8-K filing is intended to simultaneously satisfy the filing obligation of the
                  registrant under any of the following provisions (<span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-style: italic;">see </span>General Instruction A.2. below):</div>

                <div><br />
                </div>

                <div style="text-align: left;">
                  <div>
                    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 9.5pt;"><br />
                          </td>

    <td style="width: 20.65pt; vertical-align: top; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><ix:nonNumeric name="dei:WrittenCommunications" id="Fact_16612c40c86c426d960eae930cff27f8" contextRef="c20230504to20230504" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric><br />
                          </td>

    <td style="width: auto; vertical-align: top; text-align: left;">
                            <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Written communications pursuant to Rule 425 under the Securities Act (17 CFR 230.425)</div>
                          </td>

  </tr>


</table>
                  </div>

                </div>

                <div>&#160;</div>

                <div style="text-align: left;">
                  <div>
                    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 9.5pt;"><br />
                          </td>

    <td style="width: 20.65pt; vertical-align: top; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><ix:nonNumeric name="dei:SolicitingMaterial" id="Fact_66e44458674f47abadc29a70b9755693" contextRef="c20230504to20230504" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric><br />
                          </td>

    <td style="width: auto; vertical-align: top; text-align: left;">
                            <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Soliciting material pursuant to Rule 14a-12 under the Exchange Act (17 CFR 240.14a-12)</div>
                          </td>

  </tr>


</table>
                  </div>

                </div>

                <div>&#160;</div>

                <div style="text-align: left;">
                  <div>
                    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 9.5pt;"><br />
                          </td>

    <td style="width: 20.65pt; vertical-align: top; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><ix:nonNumeric name="dei:PreCommencementTenderOffer" id="Fact_d976bbbb6b1a483ab6dffe9c76cc8af3" contextRef="c20230504to20230504" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric><br />
                          </td>

    <td style="width: auto; vertical-align: top; text-align: left;">
                            <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act (17 CFR 240.14d-2(b))</div>
                          </td>

  </tr>


</table>
                  </div>

                </div>

                <div>&#160;</div>

                <div style="text-align: left;">
                  <div>
                    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable">


  <tr>

    <td style="width: 9.5pt;"><br />
                          </td>

    <td style="width: 20.65pt; vertical-align: top; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><ix:nonNumeric name="dei:PreCommencementIssuerTenderOffer" id="Fact_61f9b68523d540188856455ec1919edd" contextRef="c20230504to20230504" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric><br />
                          </td>

    <td style="width: auto; vertical-align: top; text-align: left;">
                            <div style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act (17 CFR 240.13e-4(c))</div>
                          </td>

  </tr>


</table>
                  </div>

                </div>

                <div><br />
                </div>

                <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">
                  <div>
                    <div> Securities registered pursuant to Section 12(b) of the Act: </div>

                    <div> <br />
                    </div>

                    <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; margin-left: auto; margin-right: auto;">


  <tr>

    <td style="width: 32%; text-align: center; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0);">Title of each class<br />
                          </td>

    <td colspan="1" style="width: 2%; text-align: center; font-weight: bold; padding-bottom: 2px;">&#160;</td>

    <td style="width: 32%; text-align: center; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0);">Trading Symbol(s)<br />
                          </td>

    <td colspan="1" style="width: 2%; text-align: center; font-weight: bold; padding-bottom: 2px;">&#160;</td>

    <td style="width: 32%; text-align: center; font-weight: bold; border-bottom: 2px solid rgb(0, 0, 0);">Name of each exchange on which registered<br />
                          </td>

  </tr>

  <tr>

    <td style="width: 32%; text-align: center; vertical-align: bottom;"><ix:nonNumeric name="dei:Security12bTitle" id="Fact_7742257ff3384dd9beb940c1192b1b4c" contextRef="c20230504to20230504">Common Stock, par value $.002 per share</ix:nonNumeric><br />
                          </td>

    <td colspan="1" style="width: 2%;">&#160;</td>

    <td style="width: 32%; text-align: center;"><ix:nonNumeric name="dei:TradingSymbol" id="Fact_5da15ec360704379a69651d5eb412c1b" contextRef="c20230504to20230504">CGNX</ix:nonNumeric><br />
                          </td>

    <td colspan="1" style="width: 2%;">&#160;</td>

    <td style="width: 32%; text-align: center; vertical-align: bottom;"><ix:nonNumeric name="dei:SecurityExchangeName" id="Fact_74bb35ab83a14de89e1cd157a77ef86d" contextRef="c20230504to20230504" format="ixt-sec:exchnameen">The NASDAQ Stock Market LLC</ix:nonNumeric><br />
                          </td>

  </tr>


</table>
                  </div>

                </div>

                <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><br />
                  Indicate by check mark whether the registrant is an emerging growth company as defined in Rule 405 of the Securities Act of 1933 (&#167;230.405 of this chapter) or Rule 12b-2 of the Securities Exchange Act of 1934 (&#167;240.12b-2 of this chapter).</div>

                <div>&#160;</div>

                <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">
                  <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;">


  <tr>

    <td style="width: 85%; text-align: right;">Emerging growth company&#160;&#160;&#160;&#160;&#160;&#160; <ix:nonNumeric name="dei:EntityEmergingGrowthCompany" id="Fact_6fcb3be0c5ed4cc18cf317c7ae3ffa9d" contextRef="c20230504to20230504" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric></td>

    <td style="width: 15%;">
                          <div>&#160;</div>
                        </td>

  </tr>


</table>
                </div>

                <div>&#160;</div>

                <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">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 class="BRFWTab" style="font-size: 6pt;">&#160; </span>&#9744;</div>

              </div>

            </div>

            <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
              <div class="BRPFPageBreak" style="page-break-after: always;">
                <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

            </div>

            <div>
              <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 2.02&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Results of Operations and Financial Condition</span></div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On May 4, 2023, Cognex Corporation (the &#8220;Company&#8221;) issued a news release to report its financial results for the quarter ended April 2,
                2023. The release is furnished as Exhibit 99.1 hereto. The information in Item 2.02 of this Current Report on Form 8-K, including the Exhibit attached hereto, shall not be deemed &#8220;filed&#8221; for purposes of Section 18 of the Securities Exchange
                Act of 1934, nor shall it be deemed to be incorporated by reference in any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934, regardless of any general incorporation language in such filing.</div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 8.01</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Other Events</span></div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On May 4, 2023, the Company announced that its Board of Directors declared a quarterly cash dividend of $0.07 per share. The dividend is
                payable on June 2, 2023, to all shareholders of record at the close of business on May 19, 2023<span style="font-family: 'Times New Roman',Times,serif;">.</span></div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 9.01</span>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Financial Statements and Exhibits</span></div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">(d)</span><span class="TRGRRTFtoHTMLTab" style="font-size: 10pt;">&#160;&#160;&#160;&#160;&#160;&#160; </span><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">Exhibits</span></div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;"><span style="text-decoration: underline;">Exhibit No.</span></span><span class="TRGRRTFtoHTMLTab" style="font-size: 10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; </span><span style="font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><span style="text-decoration: underline;">Description</span></span></div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="font-family: 'Times New Roman',Times,serif; font-size: 10pt;">
                <div><a href="a53392890ex99_1.htm">99.1</a>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; <a href="a53392890ex99_1.htm">News release, dated May 4, 2023, by Cognex Corporation with respect to financial results for the quarter ended April 2, 2023
                    (furnished herewith)</a></div>

              </div>

              <div style="font-size: 10pt;"><a href="a53392890ex99_1.htm"><br />
                </a></div>

              <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">104</span><span class="TRGRRTFtoHTMLTab" style="font-size: 10pt;">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">Cover Page Interactive Data File (the cover page XBRL tags are embedded within the Inline XBRL
                </span>document)</div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
                <div style="page-break-after: always;" class="BRPFPageBreak">
                  <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;" /></div>

              </div>

              <div style="text-align: center; font-family: 'Times New Roman',Times,serif; font-size: 10pt; font-weight: bold;">SIGNATURES</div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="text-align: left; margin-right: 4.45pt; margin-left: 5pt; font-family: 'Times New Roman', Times, serif; font-size: 10pt;">Pursuant to the requirements of the Securities Exchange Act of 1934, as amended, the registrant has duly
                caused this report to be signed on its behalf by the undersigned hereunto duly authorized.</div>

              <div style="font-size: 10pt;"><br />
              </div>

              <div style="font-size: 10pt;">
                <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;">


  <tr>

    <td style="width: 40%;">
                        <div>&#160;</div>
                      </td>

    <td style="width: 60%;">
                        <div>COGNEX CORPORATION</div>
                      </td>

  </tr>

  <tr>

    <td style="width: 40%;" rowspan="1">&#160;</td>

    <td style="width: 60%;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 40%;">
                        <div>&#160;</div>
                      </td>

    <td style="width: 60%;">
                        <div>&#160;</div>
                      </td>

  </tr>

  <tr>

    <td style="width: 40%;">
                        <div>Dated: May 4, 2023</div>
                      </td>

    <td style="width: 60%;">
                        <div><span style="text-decoration: underline;">By:/s/ Paul Todgham</span></div>
                      </td>

  </tr>

  <tr>

    <td style="width: 40%;">
                        <div>&#160;</div>
                      </td>

    <td style="width: 60%;">
                        <div>Paul Todgham</div>
                      </td>

  </tr>

  <tr>

    <td style="width: 40%;">
                        <div>&#160;</div>
                      </td>

    <td style="width: 60%;">
                        <div>Senior Vice President and Chief Financial Officer</div>
                      </td>

  </tr>


</table>
              </div>

              <div style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">&#160;</div>

              </div>

          </div>

        </div>

      </div>

    </div>

    <div><span style="font-size: 10pt;"> </span></div>
 </div>

</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>a53392890ex99_1.htm
<DESCRIPTION>EXHIBIT 99.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Business Wire
         Document created using Broadridge PROfile 23.3.1.5138
         Copyright 1995 - 2023 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000;">
  <div style="text-align: right;"><font style="font-weight: bold;">Exhibit 99.1</font><br>
  </div>
  <div style="text-align: right;"><font style="font-weight: bold;"> <br>
    </font></div>
  <div style="text-align: left;"><font style="font-weight: bold;"> </font>
    <div class="bw-release">
      <h1> <b>Cognex Reports First Quarter 2023 Results</b> </h1>
      <div class="bw-release-body">
        <div class="bw-release-table-js bw-release-story">
          <p>NATICK, Mass.--(BUSINESS WIRE)--May 4, 2023--Cognex Corporation (NASDAQ: CGNX) today reported financial results for the first quarter of 2023. Table 1 below shows selected financial data for Q1-23 compared with Q1-22. </p>
          <p> &#8220;As expected, in the first quarter our largest e-commerce customers continued to absorb excess capacity and our factory automation customers remained cautious with capital investment,&#8221; said Robert J. Willett, CEO of Cognex. &#8220;While we slightly
            exceeded our revenue guidance for the quarter, these demand dynamics led to a significant step down from our record first quarter of 2022.&#8221; </p>
          <p> Mr. Willett continued, &#8220;This macro uncertainty did not distract us from what is important. We launched new industry-leading products and made important strides to position us for long-term growth.&#8221; </p>
          <p style="text-align: center; list-style-position: inside;"> <b><u>Table 1 <br>
                </u></b>(Dollars in thousands, except per share amounts) </p>
          <table cellspacing="0" id="zd2ce8b0d636747869d29c6c787e864c6" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-top: solid black 1pt;border-bottom: solid black 1pt;border-left: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 29%;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-top: solid black 1pt;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 17%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><u>Revenue</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-top: solid black 1pt;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 17%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><u>Net Income</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-top: solid black 1pt;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 20%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>Net Income</b> </p>
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>per Diluted <br>
                    </b><b><u>Share</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-top: solid black 1pt;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 17%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>Non-GAAP</b> </p>
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>Net Income</b> </p>
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>per Diluted <br>
                      <u>Share*</u></b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-left: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 29%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><u>Quarterly Comparisons</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 17%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 17%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 20%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;width: 17%;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-left: solid black 1pt;border-right: solid black 1pt;width: 29%;padding-left: 5px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Current quarter: Q1-23</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$201,124</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$25,615</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 20%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$0.15</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$0.13</b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-left: solid black 1pt;border-right: solid black 1pt;width: 29%;padding-left: 5px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Prior year&#8217;s quarter: Q1-22 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $282,407 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $67,333 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 20%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $0.38 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $0.42 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1pt;border-left: solid black 1pt;border-right: solid black 1pt;width: 29%;padding-left: 5px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Change: Q1-23 to Q1-22 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (29)% </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (62)% </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 20%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (61)% </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 17%;text-align: center; list-style-position: inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (69)% </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;">&#160;</td>
              </tr>
              <tr>
                <td rowspan="1" style="padding-left: 0px;" colspan="5">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> *Non-GAAP net income per diluted share excludes discrete tax adjustments. A reconciliation from GAAP to Non-GAAP is shown in Exhibit 2 of this news release. </p>
                </td>
              </tr>

          </table>
          <p style="text-align: center; list-style-position: inside;"> <b><u>Details of the Quarter</u></b> </p>
          <p> <b>Statement of Operations Highlights &#8211; First Quarter of 2023</b> </p>
          <ul style="list-style-type: disc;">
            <li> Revenue decreased by 29% from record first-quarter revenue in Q1-22. The decrease was 26% in constant currency. Revenue declined due to lower capacity expansion projects from a few large e-commerce customers and the impact of broader
              macroeconomic softness compared to a year ago. In addition, Q1-22 included $20 million of revenue for orders that had been delayed at the end of 2021 due to supply constraints. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Gross margin was 71% for Q1-23 compared to 72% for Q1-22. This was below our mid-70% target as high-priced inventory from premium broker buys continued to flow through our cost of revenue. The slight year-on-year decrease was primarily
              driven by cost deleverage from lower revenue. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Research, Development, &amp; Engineering (RD&amp;E) expenses increased by 7% from Q1-22. Increases in personnel-related costs, primarily from investment in engineering resources and annual merit increases, were partially offset by
              favorable currency exchange rates. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Selling, General &amp; Administrative (SG&amp;A) expenses increased by 3% from Q1-22. Increases in personnel-related costs, primarily from investment in our Emerging Customer initiative, was partially offset by favorable currency exchange
              rates. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> The effective tax rate was 2% in Q1-23 and 23% in Q1-22. Excluding the impact of discrete tax benefits or expenses, the effective tax rate was 16% in both periods. </li>
          </ul>

          <div style="MARGIN-BOTTOM: 10pt; CLEAR: both; MARGIN-TOP: 10pt" id="DSPFPageBreakArea">
            <div style="PAGE-BREAK-AFTER: always" id="DSPFPageBreak">
              <hr style="BORDER-LEFT-WIDTH: 0px; HEIGHT: 2px; BORDER-RIGHT-WIDTH: 0px; WIDTH: 100%; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; CLEAR: both; MARGIN: 4px 0px; BORDER-TOP-WIDTH: 0px; BACKGROUND-COLOR: #000000"> </div>
          </div>
          <p> <b>Balance Sheet Highlights &#8211; April 2, 2023</b> </p>
          <ul style="list-style-type: disc;">
            <li> Cognex&#8217;s financial position as of April 2, 2023<b> </b>continued to be strong, with $844 million in cash and investments and no debt. In Q1-23, Cognex generated $28 million in cash from operations. In addition, the company spent $24
              million to repurchase its common stock and paid $12 million in dividends to shareholders. Cognex intends to continue to repurchase shares of its common stock pursuant to its existing stock repurchase program, subject to market conditions and
              other relevant factors. </li>
          </ul>
          <p> <b>Financial Outlook &#8211; Q2 2023</b> </p>
          <ul style="list-style-type: disc;">
            <li> Cognex expects revenue for Q2-23 to be between $225 million and $245 million. This range represents an increase on a sequential basis due to the normal timing of annual revenue from consumer electronics and an expected pick-up in activity
              in China. The decline year-on-year is due to the expected continuation of lower revenue from logistics and cautiousness in capital spending by our customers. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Gross margin for Q2-23 is expected to be in the company&#8217;s mid-70% long-term target range, an increase from 71% in Q1-23 as we move beyond the elevated costs from premium broker buys and expect a more favorable revenue mix. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Operating expenses are expected to increase by low-single digits on a sequential basis as we expect that investments in the company&#8217;s Emerging Customer initiative will be partially offset by lower stock-based compensation. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> The effective tax rate is expected to be 16%, excluding discrete tax items. </li>
          </ul>

          <div style="MARGIN-BOTTOM: 10pt; CLEAR: both; MARGIN-TOP: 10pt" id="DSPFPageBreakArea">
            <div style="PAGE-BREAK-AFTER: always" id="DSPFPageBreak">
              <hr style="BORDER-LEFT-WIDTH: 0px; HEIGHT: 2px; BORDER-RIGHT-WIDTH: 0px; WIDTH: 100%; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; CLEAR: both; MARGIN: 4px 0px; BORDER-TOP-WIDTH: 0px; BACKGROUND-COLOR: #000000"> </div>
          </div>
          <p> <b>Non-GAAP Financial Measures</b> </p>
          <ul style="list-style-type: disc;">
            <li> Exhibit 2 of this news release includes a reconciliation of certain financial measures from GAAP to non-GAAP. Cognex believes these non-GAAP financial measures are helpful because they allow investors to more accurately compare results
              over multiple periods using the same methodology that management employs in its budgeting process and in its review of operating results. Non-GAAP presentations exclude certain one-time discrete events, such as discrete tax items related to
              stock-based compensation, adjustments to deferred tax assets and tax reserves, and return-to-provision adjustments (because they are outside of Cognex&#8217;s normal business operations and not used by management to assess Cognex&#8217;s operating
              results). Cognex also uses results on a constant-currency basis as one measure to evaluate its performance and compares results between periods as if the exchange rates had remained constant period-over-period. Cognex does not intend for
              non-GAAP financial measures to be considered in isolation, or as a substitute for financial information provided in accordance with GAAP. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> We estimate the tax effect of items identified in the reconciliation by applying the effective tax rate to the pre-tax amount. However, if a specific tax rate or tax treatment is required because of the nature of the item and/or the tax
              jurisdiction where the item was recorded, we estimate the tax effect by applying the relevant specific tax rate or tax treatment, rather than the effective tax rate. </li>
          </ul>
          <p> <b>Analyst Conference Call and Simultaneous Webcast</b> </p>
          <ul style="list-style-type: disc;">
            <li> Cognex will host a conference call today at 8:30 a.m. Eastern Daylight Time (EDT). The telephone number is (877) 704-4573 (or (201) 389-0911 if outside the United States). A replay will begin at 12:30 p.m. EDT today and will be available
              until 11:59 p.m. EDT on Sunday, May 7, 2023. The telephone number for the replay is (877) 660-6853 (or (201) 612-7415 if outside the United States). The access code for both the live call and the replay is 13737126. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> A real-time audio broadcast of the conference call or an archived recording will be accessible on the Events &amp; Presentations page of the Cognex Investor website: https://www.cognex.com/Investor. </li>
          </ul>

          <div style="MARGIN-BOTTOM: 10pt; CLEAR: both; MARGIN-TOP: 10pt" id="DSPFPageBreakArea">
            <div style="PAGE-BREAK-AFTER: always" id="DSPFPageBreak">
              <hr style="BORDER-LEFT-WIDTH: 0px; HEIGHT: 2px; BORDER-RIGHT-WIDTH: 0px; WIDTH: 100%; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; CLEAR: both; MARGIN: 4px 0px; BORDER-TOP-WIDTH: 0px; BACKGROUND-COLOR: #000000"> </div>
          </div>
          <p> <b>About Cognex Corporation</b> </p>
          <p> Cognex Corporation (&#8220;the Company&#8221; or &#8220;Cognex&#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 improve efficiency and quality in high-growth-potential businesses across attractive industrial end markets. Our solutions blend physical products and software to capture and analyze visual information, allowing for the automation of
            manufacturing and distribution tasks for customers worldwide. Machine vision products are used to automate the manufacturing or distribution and tracking of discrete items, such as mobile phones, electric vehicle batteries and e-commerce
            packages, by locating, identifying, inspecting, and measuring them. Machine vision is important for applications in which human vision is inadequate to meet requirements for size, accuracy, or speed, or in instances where substantial cost
            savings or quality improvements can be gained. </p>
          <p> Cognex is the world's leader in the machine vision industry, having shipped more than 4 million image-based products, representing over $10 billion in cumulative revenue, since the company's founding in 1981. Headquartered in Natick,
            Massachusetts, USA, Cognex has offices and distributors located throughout the Americas, Europe, and Asia. For details, visit Cognex online at www.cognex.com. </p>
          <p> <i>Certain statements made in this news release, which do not relate solely to historical matters, are forward-looking statements. These stateme</i><i>nts can be identified by use of the words &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;estimates,&#8221;
              &#8220;potential,&#8221; &#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; and similar words and other statements of a similar sense. These statements are based on our current estimates and expectations as to
              prospective events and circumstances, which may or may not be in our control and as to which there can be no firm assurances given. These forward-looking statements, which include statements regarding business and market trends, future
              financial performance and financial targets, the expected impact of the fire at our primary contract manufacturer's plant on our assets, business and results of operations and related recoveries, customer demand and order rates and timing of
              related revenue, managing supply shortages, delivery lead times, future product mix, research and development activities, sales and marketing activities, new product offerings and product development activities, capital expenditures,
              investments, liquidity, dividends and stock repurchases, strategic and growth plans, and estimated tax benefits and expenses and other tax matters, involve known and unknown risks and uncertainties that could cause actual results to differ
              materially from those projected. Such risks and uncertainties include: (1) the reliance on key suppliers, such as our primary contract manufacturer, to manufacture and deliver products; (2) the expected impact of the fire at our primary
              contract manufacturer&#8217;s plant and related recoveries; (3) delays in the delivery of our products, the failure to meet delivery schedules, and resulting customer dissatisfaction or loss of sales; (4) the inability to obtain, or the delay in
              obtaining, components for our products at reasonable prices; (5) the failure to effectively manage product transitions or accurately forecast customer demand; (6) the inability to manage disruptions to our distribution centers or to our key
              suppliers; (7) the inability to design and manufacture high-quality products; (8) the impact, duration, and severity of the COVID-19 pandemic, particularly in China, including the availability and effectiveness of vaccines as well as
              government lockdowns; (9) the loss of, or curtailment of purchases by, large customers in the logistics, consumer electronics, or automotive industries; (10) information security breaches; (11) the failure to comply with laws or regulations
              relating to data privacy or data protection; (12) the inability to protect our proprietary technology and intellectual property; (13) the inability to attract and retain skilled employees and maintain our unique corporate culture; (14) the
              technological obsolescence of current products and the inability to develop new products; (15) the failure to properly manage the distribution of products and services, including the management of lead times and delivery dates; (16) the
              impact of competitive pressures; (17) the challenges in integrating and achieving expected results from acquired businesses; (18) potential disruptions in our business systems; (19) potential impairment charges with respect to our investments
              or acquired intangible assets; (20) exposure to additional tax liabilities, increases and fluctuations in our effective tax rate, and other tax matters; (21) fluctuations in foreign currency exchange rates and the use of derivative
              instruments; (22) unfavorable global economic conditions, including increases in interest rates and high inflation rates; (23) business disruptions from natural or man-made disasters, such as fire, or public health issues; (24) economic,
              political, and other risks associated with international sales and operations, including the impact of trade disputes on the economic climate in China and the war in Ukraine; (25) exposure to potential liabilities, increased costs,
              reputational harm, and other adverse effects associated with expectations relating to environmental, social, and governance considerations; (26) stock price volatility; and (27) our involvement in time-consuming and costly litigation or
              activist shareholder activities; and the other risks detailed in Cognex reports filed with the SEC, including its Form 10-K for the fiscal year ended December 31, 2022 and Form 10-Q for the fiscal quarter ended April 2, 2023. </i><i>You
              should not place undue reliance upon any such forward-looking statements, which speak only as of the date made. Cognex disclaims any obligation to update forward-looking statements after the date of such statements.</i> </p>

          <div style="MARGIN-BOTTOM: 10pt; CLEAR: both; MARGIN-TOP: 10pt" id="DSPFPageBreakArea">
            <div style="PAGE-BREAK-AFTER: always" id="DSPFPageBreak">
              <hr style="BORDER-LEFT-WIDTH: 0px; HEIGHT: 2px; BORDER-RIGHT-WIDTH: 0px; WIDTH: 100%; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; CLEAR: both; MARGIN: 4px 0px; BORDER-TOP-WIDTH: 0px; BACKGROUND-COLOR: #000000"> </div>
          </div>
          <p> <b>Exhibit 1</b> </p>
          <table cellspacing="0" id="z49dcca42d8224cf0b9d03c2888cc1c40" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

              <tr>
                <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="7">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>COGNEX CORPORATION</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>CONSOLIDATED STATEMENTS OF OPERATIONS</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (In thousands, except per share amounts) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" style="padding-left: 0px;" colspan="6">&#160;</td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="6">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>Three-months Ended</b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="2" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>April 2, 2023</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="3" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> April 3, 2022 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="6">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(unaudited)</b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Revenue </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>201,124</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 282,407 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cost of revenue (1) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>57,384</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 78,790 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Gross margin </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>143,740</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 203,617 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Research, development, and engineering expenses (1) </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>38,542</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 36,054 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Selling, general, and administrative expenses (1) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>83,037</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 80,835 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating income </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>22,161</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 86,728 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Foreign currency gain (loss) </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>394</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (444 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> ) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Investment income </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>3,587</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,468 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Other income (expense) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>73</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (48 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> ) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income before income tax expense </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>26,215</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 87,704 </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>600</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 20,371 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Net income </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>25,615</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 67,333 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="2" style="vertical-align: bottom;padding-left: 0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="7">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Net income per weighted-average common and common-equivalent share: </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 25px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Basic </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.15</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.39 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 25px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.15</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.38 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="2" style="vertical-align: bottom;padding-left: 0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="7">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Weighted-average common and common-equivalent shares outstanding: </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 25px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Basic </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>172,624</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 174,146 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 25px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>173,903</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 176,668 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="2" style="vertical-align: bottom;padding-left: 0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cash dividends per common share </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.070</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.065 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>

          </table>
          <table cellspacing="0" id="zf5c601ff32084833b204ddeeacdab534" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="5">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p> (1) Amounts include stock-based compensation expense, as follows: </p>
                </td>
                <td rowspan="1" colspan="2" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>April 2, 2023</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="2" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> April 3, 2022 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="5">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(unaudited)</b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cost of revenue </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>621</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 563 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Research, development, and engineering </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>5,890</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,448 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Selling, general, and administrative </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>10,068</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 10,045 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total stock-based compensation expense </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>16,579</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 12%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 15,056 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;">&#160;</td>
              </tr>

          </table>

          <div style="MARGIN-BOTTOM: 10pt; CLEAR: both; MARGIN-TOP: 10pt" id="DSPFPageBreakArea">
            <div style="PAGE-BREAK-AFTER: always" id="DSPFPageBreak">
              <hr style="BORDER-LEFT-WIDTH: 0px; HEIGHT: 2px; BORDER-RIGHT-WIDTH: 0px; WIDTH: 100%; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; CLEAR: both; MARGIN: 4px 0px; BORDER-TOP-WIDTH: 0px; BACKGROUND-COLOR: #000000"> </div>
          </div>
          <p> <b>Exhibit 2</b> </p>
          <table cellspacing="0" id="zd656f5c4317f4cbfb0b16085cb0a2465" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

              <tr>
                <td rowspan="1" style="text-align: center; list-style-position: inside;vertical-align: middle;padding-left: 0px;height:25px;" colspan="7">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>COGNEX CORPORATION</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>RECONCILIATION OF SELECTED ITEMS FROM GAAP TO NON-GAAP</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (In thousands, except per share amounts) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" style="text-align: center; list-style-position: inside;vertical-align: middle;padding-left: 0px;" colspan="3"><br>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">&#160;</td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" style="text-align: center; list-style-position: inside;vertical-align: middle;padding-left: 0px;" colspan="6"><b>Three-months Ended</b></td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;text-align: center; list-style-position: inside;padding-left: 5px;" colspan="3">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>April 2, 2023</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;text-align: center; list-style-position: inside;padding-left: 5px;" colspan="3">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>April 3, 2022</b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" style="text-align: center; list-style-position: inside;vertical-align: middle;padding-left: 0px;" colspan="3"><br>
                </td>
                <td rowspan="1" style="text-align: center; list-style-position: inside;vertical-align: middle;padding-left: 0px;" colspan="3">&#160;</td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" style="text-align: center; list-style-position: inside;vertical-align: middle;padding-left: 0px;" colspan="6">(Unaudited)</td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Revenue</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 201,124 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 282,407 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Cost of revenue</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 57,384 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 78,790 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;"><b>Gross margin</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>143,740</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>203,617</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Total operating expenses (GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 121,579 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 116,889 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;padding-left: 0px;width: 70%;"><b>Operating income (GAAP)</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>22,161</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>86,728</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;width: 70%;padding-left: 30px;"><i>Percentage of revenue (GAAP)</i></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>11</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>31</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Adjustments to operating expenses:</td>
                <td rowspan="1" colspan="3" style="text-align: right; list-style-position: inside;vertical-align: middle;padding-left: 0px;"><br>
                </td>
                <td rowspan="1" colspan="3" style="text-align: right; list-style-position: inside;vertical-align: middle;padding-left: 0px;"><br>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 10px;width: 70%;">Restructuring charges</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> - </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> - </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 10px;width: 70%;">Loss from fire</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> - </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> - </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;border-bottom: solid black 1pt;width: 70%;">Total operating expenses (Non-GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 121,579 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 116,889 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;padding-left: 0px;width: 70%;"><b>Operating income (Non-GAAP)</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>22,161</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>86,728</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 30px;width: 70%;"><i>Percentage of revenue (Non-GAAP)</i></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>11</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>31</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;border-bottom: solid black 1pt;width: 70%;">Other income (expense) (GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,054 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 976 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Income before income tax expense (GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 26,215 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 87,704 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;border-bottom: solid black 1pt;width: 70%;">Income tax expense (GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 600 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 20,371 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;padding-left: 0px;width: 70%;"><b>Net income (GAAP)</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>25,615</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>67,333</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 20px;width: 70%;"><i>Effective tax rate (GAAP)</i></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>2</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>23</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Income before income tax expense (Non-GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 26,215 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 87,704 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Adjustments to income tax expense:</td>
                <td rowspan="1" colspan="3" style="text-align: right; list-style-position: inside;vertical-align: middle;padding-left: 0px;"><br>
                </td>
                <td rowspan="1" colspan="3" style="text-align: right; list-style-position: inside;vertical-align: middle;padding-left: 0px;"><br>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 10px;width: 70%;">Tax effect of adjustments to operating expenses</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> - </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> - </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 10px;width: 70%;">Adjustments due to discrete tax (benefit) expense</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (3,594 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 6,338 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;border-bottom: solid black 1pt;width: 70%;">Income tax expense (Non-GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,194 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 14,033 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;padding-left: 0px;width: 70%;"><b>Net income (Non-GAAP)</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>22,021</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>73,671</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;padding-left: 20px;width: 70%;"><i>Effective tax rate (Non-GAAP)</i></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>16</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>16</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;"><br>
                </td>
                <td rowspan="1" colspan="3" style="text-align: right; list-style-position: inside;vertical-align: middle;padding-left: 0px;"><br>
                </td>
                <td rowspan="1" colspan="3" style="text-align: right; list-style-position: inside;vertical-align: middle;padding-left: 0px;">&#160;</td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;padding-left: 0px;width: 70%;"><b>Net income per diluted weighted-average common and common-equivalent share (GAAP)</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.15</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.38</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="text-align: left;vertical-align: middle;border-bottom: solid black 1pt;padding-left: 10px;width: 70%;">Per share impact of non-GAAP adjustments identified above</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (0.02 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.04 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;border-bottom: solid black 1pt;padding-left: 0px;width: 70%;"><b>Net income per diluted weighted-average common and common-equivalent share (Non-GAAP)</b></td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.13</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.42</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: middle;padding-left: 0px;width: 70%;">Diluted weighted-average common and common-equivalent shares outstanding (GAAP)</td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 173,903 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 176,668 </p>
                </td>
                <td colspan="1" rowspan="1" style="text-align: right; list-style-position: inside;padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>

          </table>

          <div style="MARGIN-BOTTOM: 10pt; CLEAR: both; MARGIN-TOP: 10pt" id="DSPFPageBreakArea">
            <div style="PAGE-BREAK-AFTER: always" id="DSPFPageBreak">
              <hr style="BORDER-LEFT-WIDTH: 0px; HEIGHT: 2px; BORDER-RIGHT-WIDTH: 0px; WIDTH: 100%; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; CLEAR: both; MARGIN: 4px 0px; BORDER-TOP-WIDTH: 0px; BACKGROUND-COLOR: #000000"> </div>
          </div>
          <p> <b>Exhibit 3</b> </p>
          <table cellspacing="0" id="z29a00e56f8d24b948acc4310b38a66f8" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

              <tr>
                <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="8">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>COGNEX CORPORATION</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>CONSOLIDATED BALANCE SHEETS</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (In thousands) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 68%;"><br>
                </td>
                <td rowspan="1" style="padding-left: 0px;" colspan="3"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0px;width: 2%;"><br>
                </td>
                <td rowspan="1" style="padding-left: 0px;" colspan="3">&#160;</td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="3" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>April 2, 2023</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" colspan="3" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> December 31, 2022 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(unaudited)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>ASSETS</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Current assets: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cash and cash equivalents </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>164,171</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 181,374 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Current investments, amortized cost of $220,943 and $223,545 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>216,703</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 218,759 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Accounts receivable, allowance for credit losses of $1,001 and $730 in 2023 and 2022, respectively </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>144,154</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 125,417 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Unbilled revenue </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>2,354</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 2,179 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Inventories </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>127,147</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 122,480 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Prepaid expenses and other current assets </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>67,634</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 67,490 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 40px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total current assets </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>722,163</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 717,699 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Non-current investments, amortized cost of $478,329 and $476,148 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>463,039</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 454,117 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Property, plant, and equipment, net </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>81,274</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 79,714 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating lease assets </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>37,769</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 37,682 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Goodwill </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>242,041</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 242,630 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Intangible assets, net </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>11,472</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 12,414 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Deferred income taxes </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>409,583</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 407,241 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Other assets </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>6,725</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 6,643 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 40px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total assets </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,974,066</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,958,140 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>LIABILITIES AND SHAREHOLDERS&#8217; EQUITY</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Current liabilities: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Accounts payable </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>26,939</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 27,103 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Accrued expenses </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>83,527</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 93,235 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Accrued income taxes </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>37,529</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 18,129 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Deferred revenue and customer deposits </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>57,805</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 40,787 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating lease liabilities </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>8,177</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 8,454 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 40px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total current liabilities </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>213,977</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 187,708 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Non-current operating lease liabilities </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>31,389</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 31,298 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Deferred income taxes </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>243,557</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 249,961 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Reserve for income taxes </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,030</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 15,866 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Non-current accrued income taxes </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>18,338</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 33,008 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Other liabilities </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>444</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,905 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 40px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total liabilities </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>527,735</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 519,746 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Commitments and contingencies </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Shareholders&#8217; equity: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Preferred stock, $.01 par value &#8211; Authorized: 400 shares in 2023 and 2022, respectively; no shares issued and outstanding </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>&#8212;</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#8212; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Common stock, $.002 par value &#8211; Authorized: 300,000 shares in 2023 and 2022, respectively; issued and outstanding: 172,601 and 172,631 shares in 2023 and 2022, respectively </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>345</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 345 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Additional paid-in capital </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>992,690</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 979,167 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Retained earnings </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>517,526</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 528,179 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 20px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Accumulated other comprehensive loss, net of tax </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(64,230</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b>)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (69,297 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> ) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 40px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total shareholders&#8217; equity </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,446,331</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,438,394 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 40px;width: 68%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Total liabilities and shareholders' equity </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>$</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,974,066</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> $ </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 11%;">
                  <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,958,140 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 2%;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> &#160; </p>
                </td>
              </tr>

          </table>
          <p> &#160; </p>
        </div>
        <div class="bw-release-contact">
          <h2 style="FONT-SIZE: 14pt;">Contacts</h2>
          <p> Nathan McCurren <br>
            Head of Investor Relations <br>
            +1 508-654-1755 <br>
            Nathan.McCurren@cognex.com </p>
        </div>
      </div>
    </div>
    <font style="font-weight: bold;"> </font></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>cgnx-20230504.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.3.1.5138 Broadridge-->
<xs:schema targetNamespace="http://cognex.com/20230504" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cgnx="http://cognex.com/20230504" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:us-types="http://fasb.org/us-types/2021-01-31" xmlns:srt-types="http://fasb.org/srt-types/2021-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2021" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="cgnx-20230504_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="cgnx-20230504_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:roleType roleURI="http://cognex.com/role/DocumentAndEntityInformation" id="DocumentAndEntityInformation">
        <link:definition>000100 - Document - Document and Entity Information</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:import namespace="http://fasb.org/us-gaap/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/dei/2021" schemaLocation="https://xbrl.sec.gov/dei/2021/dei-2021.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/country/2021" schemaLocation="https://xbrl.sec.gov/country/2021/country-2021.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/currency/2021" schemaLocation="https://xbrl.sec.gov/currency/2021/currency-2021.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/exch/2021" schemaLocation="https://xbrl.sec.gov/exch/2021/exch-2021.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/naics/2021" schemaLocation="https://xbrl.sec.gov/naics/2021/naics-2021.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/sic/2021" schemaLocation="https://xbrl.sec.gov/sic/2021/sic-2021.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/stpr/2021" schemaLocation="https://xbrl.sec.gov/stpr/2021/stpr-2021.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/2004/ref" schemaLocation="http://www.xbrl.org/2004/ref-2004-08-10.xsd" />
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xs:import namespace="http://fasb.org/us-types/2021-01-31" schemaLocation="https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <xs:import namespace="http://fasb.org/srt/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd" />
  <xs:import namespace="http://fasb.org/srt-types/2021-01-31" schemaLocation="https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-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:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>cgnx-20230504_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.3.1.5138 Broadridge-->
<link:linkbase 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" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <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/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <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/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/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:label xlink:type="resource" xlink:label="dei_CoverAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CoverAbstract_lbl" xml:lang="en-US" id="dei_CoverAbstract_lbl">Cover [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:title="label: CoverAbstract to dei_CoverAbstract_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentType_lbl" xml:lang="en-US" id="dei_DocumentType_lbl">Document Type</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentType" xlink:to="dei_DocumentType_lbl" xlink:title="label: DocumentType to dei_DocumentType_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_WrittenCommunications" xlink:label="WrittenCommunications" xlink:title="WrittenCommunications" />
    <link:label xlink:type="resource" xlink:label="dei_WrittenCommunications_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_WrittenCommunications_lbl" xml:lang="en-US" id="dei_WrittenCommunications_lbl">Written Communications</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:title="label: WrittenCommunications to dei_WrittenCommunications_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_SolicitingMaterial" xlink:label="SolicitingMaterial" xlink:title="SolicitingMaterial" />
    <link:label xlink:type="resource" xlink:label="dei_SolicitingMaterial_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_SolicitingMaterial_lbl" xml:lang="en-US" id="dei_SolicitingMaterial_lbl">Soliciting Material</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:title="label: SolicitingMaterial to dei_SolicitingMaterial_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_PreCommencementTenderOffer" xlink:label="PreCommencementTenderOffer" xlink:title="PreCommencementTenderOffer" />
    <link:label xlink:type="resource" xlink:label="dei_PreCommencementTenderOffer_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US" id="dei_PreCommencementTenderOffer_lbl">Pre-commencement Tender Offer</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:title="label: PreCommencementTenderOffer to dei_PreCommencementTenderOffer_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="PreCommencementIssuerTenderOffer" xlink:title="PreCommencementIssuerTenderOffer" />
    <link:label xlink:type="resource" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US" id="dei_PreCommencementIssuerTenderOffer_lbl">Pre-commencement Issuer Tender Offer</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:title="label: PreCommencementIssuerTenderOffer to dei_PreCommencementIssuerTenderOffer_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:label xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AmendmentFlag_lbl" xml:lang="en-US" id="dei_AmendmentFlag_lbl">Amendment Flag</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:title="label: AmendmentFlag to dei_AmendmentFlag_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US" id="dei_DocumentFiscalYearFocus_lbl">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:title="label: DocumentFiscalYearFocus to dei_DocumentFiscalYearFocus_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US" id="dei_DocumentFiscalPeriodFocus_lbl">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:title="label: DocumentFiscalPeriodFocus to dei_DocumentFiscalPeriodFocus_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US" id="dei_DocumentPeriodEndDate_lbl">Document Period End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:title="label: DocumentPeriodEndDate to dei_DocumentPeriodEndDate_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:label xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityRegistrantName_lbl" xml:lang="en-US" id="dei_EntityRegistrantName_lbl">Entity Registrant Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:title="label: EntityRegistrantName to dei_EntityRegistrantName_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCentralIndexKey_lbl" xml:lang="en-US" id="dei_EntityCentralIndexKey_lbl">Entity Central Index Key</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:title="label: EntityCentralIndexKey to dei_EntityCentralIndexKey_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFileNumber_lbl" xml:lang="en-US" id="dei_EntityFileNumber_lbl">Entity File Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:title="label: EntityFileNumber to dei_EntityFileNumber_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US" id="dei_EntityTaxIdentificationNumber_lbl">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:title="label: EntityTaxIdentificationNumber to dei_EntityTaxIdentificationNumber_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US" id="dei_EntityIncorporationStateCountryCode_lbl">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:title="label: EntityIncorporationStateCountryCode to dei_EntityIncorporationStateCountryCode_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US" id="dei_EntityEmergingGrowthCompany_lbl">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:title="label: EntityEmergingGrowthCompany to dei_EntityEmergingGrowthCompany_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US" id="dei_EntityAddressAddressLine1_lbl">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:title="label: EntityAddressAddressLine1 to dei_EntityAddressAddressLine1_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressAddressLine2" xlink:label="EntityAddressAddressLine2" xlink:title="EntityAddressAddressLine2" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine2_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US" id="dei_EntityAddressAddressLine2_lbl">Entity Address, Address Line Two</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:title="label: EntityAddressAddressLine2 to dei_EntityAddressAddressLine2_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressAddressLine3" xlink:label="EntityAddressAddressLine3" xlink:title="EntityAddressAddressLine3" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine3_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US" id="dei_EntityAddressAddressLine3_lbl">Entity Address, Address Line Three</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:title="label: EntityAddressAddressLine3 to dei_EntityAddressAddressLine3_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US" id="dei_EntityAddressCityOrTown_lbl">Entity Address, City or Town</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:title="label: EntityAddressCityOrTown to dei_EntityAddressCityOrTown_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US" id="dei_EntityAddressStateOrProvince_lbl">Entity Address, State or Province</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:title="label: EntityAddressStateOrProvince to dei_EntityAddressStateOrProvince_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressCountry" xlink:label="EntityAddressCountry" xlink:title="EntityAddressCountry" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressCountry_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressCountry_lbl" xml:lang="en-US" id="dei_EntityAddressCountry_lbl">Entity Address, Country</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:title="label: EntityAddressCountry to dei_EntityAddressCountry_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US" id="dei_EntityAddressPostalZipCode_lbl">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:title="label: EntityAddressPostalZipCode to dei_EntityAddressPostalZipCode_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:label xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CityAreaCode_lbl" xml:lang="en-US" id="dei_CityAreaCode_lbl">City Area Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:title="label: CityAreaCode to dei_CityAreaCode_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:label xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_LocalPhoneNumber_lbl" xml:lang="en-US" id="dei_LocalPhoneNumber_lbl">Local Phone Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:title="label: LocalPhoneNumber to dei_LocalPhoneNumber_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:label xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_Security12bTitle_lbl" xml:lang="en-US" id="dei_Security12bTitle_lbl">Title of 12(b) Security</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:title="label: Security12bTitle to dei_Security12bTitle_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_NoTradingSymbolFlag" xlink:label="NoTradingSymbolFlag" xlink:title="NoTradingSymbolFlag" />
    <link:label xlink:type="resource" xlink:label="dei_NoTradingSymbolFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US" id="dei_NoTradingSymbolFlag_lbl">No Trading Symbol Flag</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:title="label: NoTradingSymbolFlag to dei_NoTradingSymbolFlag_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:label xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_TradingSymbol_lbl" xml:lang="en-US" id="dei_TradingSymbol_lbl">Trading Symbol</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:title="label: TradingSymbol to dei_TradingSymbol_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:label xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_SecurityExchangeName_lbl" xml:lang="en-US" id="dei_SecurityExchangeName_lbl">Security Exchange Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:title="label: SecurityExchangeName to dei_SecurityExchangeName_lbl" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>5
<FILENAME>cgnx-20230504_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 23.3.1.5138 Broadridge-->
<link:linkbase 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" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <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/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <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/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/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:roleRef roleURI="http://cognex.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="cgnx-20230504.xsd#DocumentAndEntityInformation" />
  <link:presentationLink xlink:type="extended" xlink:role="http://cognex.com/role/DocumentAndEntityInformation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentType" xlink:title="presentation: CoverAbstract to DocumentType" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AmendmentFlag" xlink:title="presentation: CoverAbstract to AmendmentFlag" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentPeriodEndDate" xlink:title="presentation: CoverAbstract to DocumentPeriodEndDate" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityRegistrantName" xlink:title="presentation: CoverAbstract to EntityRegistrantName" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityIncorporationStateCountryCode" xlink:title="presentation: CoverAbstract to EntityIncorporationStateCountryCode" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFileNumber" xlink:title="presentation: CoverAbstract to EntityFileNumber" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityTaxIdentificationNumber" xlink:title="presentation: CoverAbstract to EntityTaxIdentificationNumber" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine1" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine1" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressAddressLine2" xlink:label="EntityAddressAddressLine2" xlink:title="EntityAddressAddressLine2" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine2" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine2" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressAddressLine3" xlink:label="EntityAddressAddressLine3" xlink:title="EntityAddressAddressLine3" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine3" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine3" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressCityOrTown" xlink:title="presentation: CoverAbstract to EntityAddressCityOrTown" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressStateOrProvince" xlink:title="presentation: CoverAbstract to EntityAddressStateOrProvince" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressCountry" xlink:label="EntityAddressCountry" xlink:title="EntityAddressCountry" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressCountry" xlink:title="presentation: CoverAbstract to EntityAddressCountry" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressPostalZipCode" xlink:title="presentation: CoverAbstract to EntityAddressPostalZipCode" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CityAreaCode" xlink:title="presentation: CoverAbstract to CityAreaCode" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="LocalPhoneNumber" xlink:title="presentation: CoverAbstract to LocalPhoneNumber" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_WrittenCommunications" xlink:label="WrittenCommunications" xlink:title="WrittenCommunications" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="WrittenCommunications" xlink:title="presentation: CoverAbstract to WrittenCommunications" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_SolicitingMaterial" xlink:label="SolicitingMaterial" xlink:title="SolicitingMaterial" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="SolicitingMaterial" xlink:title="presentation: CoverAbstract to SolicitingMaterial" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_PreCommencementTenderOffer" xlink:label="PreCommencementTenderOffer" xlink:title="PreCommencementTenderOffer" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="PreCommencementTenderOffer" xlink:title="presentation: CoverAbstract to PreCommencementTenderOffer" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="PreCommencementIssuerTenderOffer" xlink:title="PreCommencementIssuerTenderOffer" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="PreCommencementIssuerTenderOffer" xlink:title="presentation: CoverAbstract to PreCommencementIssuerTenderOffer" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_NoTradingSymbolFlag" xlink:label="NoTradingSymbolFlag" xlink:title="NoTradingSymbolFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="NoTradingSymbolFlag" xlink:title="presentation: CoverAbstract to NoTradingSymbolFlag" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityEmergingGrowthCompany" xlink:title="presentation: CoverAbstract to EntityEmergingGrowthCompany" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalYearFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalYearFocus" order="22.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalPeriodFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalPeriodFocus" order="23.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCentralIndexKey" xlink:title="presentation: CoverAbstract to EntityCentralIndexKey" order="24.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="Security12bTitle" xlink:title="presentation: CoverAbstract to Security12bTitle" order="25.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="TradingSymbol" xlink:title="presentation: CoverAbstract to TradingSymbol" order="26.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2021/dei-2021.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="SecurityExchangeName" xlink:title="presentation: CoverAbstract to SecurityExchangeName" order="27.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>6
<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.23.1</span><table class="report" border="0" cellspacing="2" id="idm140389220879488">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Document and Entity Information<br></strong></div></th>
<th class="th"><div>May 04, 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_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">8-K<span></span>
</td>
</tr>
<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_AmendmentFlag', window );">Amendment Flag</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_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">May  04,  2023<span></span>
</td>
</tr>
<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_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Cognex Corporation<span></span>
</td>
</tr>
<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_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">MA<span></span>
</td>
</tr>
<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_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-2059<span></span>
</td>
</tr>
<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_WrittenCommunications', window );">Written Communications</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_SolicitingMaterial', window );">Soliciting Material</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_PreCommencementTenderOffer', window );">Pre-commencement Tender Offer</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_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer Tender Offer</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_EntityEmergingGrowthCompany', window );">Entity Emerging Growth 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_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_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>
</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_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_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 Regulation 12B<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_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 Regulation 12B<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_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_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 Regulation 12B<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_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 Regulation 12B<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_PreCommencementIssuerTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under 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 13e<br> -Subsection 4c<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementIssuerTenderOffer</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_PreCommencementTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under 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 14d<br> -Subsection 2b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_PreCommencementTenderOffer</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_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_SolicitingMaterial">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under 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> -Section 14a<br> -Number 240<br> -Subsection 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;">dei_SolicitingMaterial</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities 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 Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ 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_WrittenCommunications</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>7
<FILENAME>a53392890_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2021"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="cgnx-20230504.xsd" xlink:type="simple"/>
    <context id="c20230504to20230504">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <startDate>2023-05-04</startDate>
            <endDate>2023-05-04</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="c20230504to20230504"
      id="Fact_a04de1abc4f942f48b704e889fe07a99">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="c20230504to20230504"
      id="Fact_efdc5ce7f7e745b6bb03628ca65777cd">0000851205</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="c20230504to20230504"
      id="Fact_2ce5436ac9c648c4aa602a26727b4f3c">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="c20230504to20230504"
      id="Fact_9d72866665994730a1d9ef5e402a7f07">2023-05-04</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="c20230504to20230504"
      id="Fact_51d30ee373f544f58e13ef2935782704">Cognex Corporation</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20230504to20230504"
      id="Fact_0ba7e448563748b1b885d24a047582c0">MA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="c20230504to20230504"
      id="Fact_a8e9977afc5f41ad82b0fd628eabfe7f">001-34218</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20230504to20230504"
      id="Fact_41a4a9259d1b4e6e860f9a095902bbf0">04-2713778</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20230504to20230504"
      id="Fact_fa9e6d62dcd745248f39bd18549c55a0">One Vision Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="c20230504to20230504"
      id="Fact_b1b5f5984773425aaf2095506431a309">Natick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20230504to20230504"
      id="Fact_dfada3033701442c9f869644c57cc9eb">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20230504to20230504"
      id="Fact_f284eb528dd5456db64dcf4c86b19bcd">01760-2059</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20230504to20230504"
      id="Fact_553b66b58cca4d7db36dc5908137b2f6">508</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20230504to20230504"
      id="Fact_f7384943ee9b4a05bf6cc911c5e0ed96">650-3000</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="c20230504to20230504"
      id="Fact_16612c40c86c426d960eae930cff27f8">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="c20230504to20230504"
      id="Fact_66e44458674f47abadc29a70b9755693">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="c20230504to20230504"
      id="Fact_d976bbbb6b1a483ab6dffe9c76cc8af3">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="c20230504to20230504"
      id="Fact_61f9b68523d540188856455ec1919edd">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="c20230504to20230504"
      id="Fact_7742257ff3384dd9beb940c1192b1b4c">Common Stock, par value $.002 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20230504to20230504"
      id="Fact_5da15ec360704379a69651d5eb412c1b">CGNX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20230504to20230504"
      id="Fact_74bb35ab83a14de89e1cd157a77ef86d">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20230504to20230504"
      id="Fact_6fcb3be0c5ed4cc18cf317c7ae3ffa9d">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>8
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M!_A]J91]:[AS;/%OB-&_4$L#!!0    ( ,PPI%:?H!OPL0(  .(,   -
M>&PO<W1Y;&5S+GAM;-U7;6O;,!#^*T(_8&YB:N*1&+9 8;"-0O-A7Y58=@1Z
M\62Y<_KKI[-L)VEU9=V'L<VAR=T]NKM'=R>9KEMWDOSAR+DCO9*ZW="C<\W[
M)&D/1ZY8^\XT7'ND,E8QYU5;)VUC.2M;<%(R6=[<9(EB0M-BK3MUIUQ+#J;3
M;D-O:%*L*Z//EI0&@U_*%">/3&[HEDFQMV)8RY20IV!>@N%@I+'$>2I\0Q=@
M:9\"O @:L!SC**&-!6,2,H3O_;C\&3!IK5>%E#/!)0V&8MTPY[C5=UX9%@_&
M%Q 9Y=VI\0QKRTZ+Y2T].PP_/LG>V)+;.<V"3J9B+7D%=*RHC_#K3), Z)Q1
M7B@%JXUF X?)8Q1\V .7\@%:^*VZBMU7)/3B4PEM(+#52?2$1C&$"0K$OXP6
M8E^$O?VML*01C\9][/QN]*!_[XSC]Y97HA_TOIKS8]$7>'36-/+T08I:*Q[V
M_LL)BS6;_,C16/'DL\&D'+R!6TH>N77B<&GY85FSX[V;IJFO<,[+?Y#SGZUS
MS36W3%Z2]J/_-U?Y+8R3\?1<'-&K SI;"5R$&_H5[E=YYD#VG9!.Z%$[BK+D
M^L4Y]>$=V_L+_"J^7U_RBG72[69P0\_R%UZ*3N7SJGNHR[CJ+'^&^VB1S;>P
MSR5TR7M>;D?5UOM!)%[P6<<'')XC=\,31S"?@,41P+ \& /,)WAA>?ZG_:S0
M_00,X[:*(BO49X7Z!*\8LAT^6)ZX3^Z?^$[S/$VS#*OH=AMEL,7JEF7P%X^&
M<0,/+ ]D>ENM\6[C$_+Z'& ]?6U"L)WBDXCM%*\U(/&Z@4>>Q[N-Y0$/K O8
M[$#^>!Z8J;A/FD)7,6[8"<:1/,<0F,7XC&894IT,/O'^8*<D3?,\C@ 69Y"F
M& *G$4<P!L !0])T> \^>Q\ETWLJ.?]74_P$4$L#!!0    ( ,PPI%:7BKL<
MP    !,"   +    7W)E;',O+G)E;'.=DKENPS ,0'_%T)XP!] AB#-E\18$
M^0%6H@_8$@6*19V_K]JE<9 +&7D]/!+<'FE [3BDMHNI&/T04FE:U;@!2+8E
MCVG.D4*NU"P>-8?20$3;8T.P6BP^0"X99K>]9!:G<Z17B%S7G:4]VR]/06^
MKSI,<4)I2$LS#O#-TG\R]_,,-47E2B.56QIXT^7^=N!)T:$B6!::1<G3HAVE
M?QW']I#3Z:]C(K1Z6^CY<6A4"H[<8R6,<6*T_C6"R0_L?@!02P,$%     @
MS#"D5APX9>H_ 0  / (   \   !X;"]W;W)K8F]O:RYX;6R-4<MNPD ,_)75
M?D 34(M41+B4/I"J%I6*^Y)UB,4^(J\#+5]?)U%4I%YZ\GILC6=F%^=(QWV,
M1_7E74B%KIF;>9:EL@9OTDUL(,BDBN0-2TN'+#4$QJ8:@+W+IGD^R[S!H)>+
MD6M#V743&4K&& 3L@!W".?W.NU:=,.$>'?)WH?NW ZT\!O1X 5OH7*M4Q_-+
M)+S$P,9M2XK.%7HR#'9 C.4?>-N)_#3[U"-L]A]&A!1ZE@MAA92XW^CYC6@\
M@2P/7<OQ"1T#K0S#,\6VP7#H:,1%=F6CSV&L0XAS^D^,L:JPA%4L6P^!AQP)
M7"<PI!J;I%4P'@H]KB@3K'H,+"&I=1BH9+=S*J?7=G#-(O<J0YJC#&AM!^&C
M6@L5!K!O<B )+LF5&U)=Z7FFMW>3>TFH=>Y!L/?P&HT=S8\?M_P!4$L#!!0
M   ( ,PPI%8D'INBK0   /@!   :    >&PO7W)E;',O=V]R:V)O;VLN>&UL
M+G)E;'.UD3T.@S ,A:\2Y0 U4*E#!4Q=6"LN$ 7S(Q(2Q:X*MR^% 9 Z=&&R
MGBU_[\E.GV@4=VZ@MO,D1FL&RF3+[.\ I%NTBB[.XS!/:A>LXEF&!KS2O6H0
MDBBZ0=@S9)[NF:*<//Y#='7=:7PX_;(X\ \PO%WHJ45D*4H5&N1,PFBV-L%2
MXLM,EJ*H,AF**I9P6B#BR2!M:59]L$].M.=Y%S?W1:[-XPFNWPQP>'3^ 5!+
M P04    " #,,*1699!YDAD!  #/ P  $P   %M#;VYT96YT7U1Y<&5S72YX
M;6RMDTU.PS 0A:\295LE+BQ8H*8;8 M=< %C3QJK_I-G6M+;,T[:2J 2%85-
MK'C>O,^>EZS>CQ&PZ)WUV)0=47P4 E4'3F(=(GBNM"$Y2?R:MB)*M9-;$/?+
MY8-0P1-XJBA[E.O5,[1R;ZEXZ7D;3?!-F<!B63R-PLQJ2AFC-4H2U\7!ZQ^4
MZD2HN7/08&<B+EA0BJN$7/D=<.I[.T!*1D.QD8E>I6.5Z*U .EK >MKBRAE#
MVQH%.JB]XY8:8P*IL0,@9^O1=#%-)IXPC,^[V?S!9@K(RDT*$3FQ!'_'G2/)
MW55D(TADIJ]X(;+U[/M!3EN#OI'-X_T,:3?D@6)8YL_X>\87_QO.\1'"[K\_
ML;S63AI_YHOA/UY_ 5!+ 0(4 Q0    ( ,PPI%8'04UB@0   +$    0
M          "  0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#%     @ S#"D
M5C?#BXGN    *P(  !$              ( !KP   &1O8U!R;W!S+V-O<F4N
M>&UL4$L! A0#%     @ S#"D5IE<G",0!@  G"<  !,              ( !
MS $  'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4    " #,,*16O*$G$D<$
M  "2$   &               @($-"   >&PO=V]R:W-H965T<R]S:&5E=#$N
M>&UL4$L! A0#%     @ S#"D5I^@&_"Q @  X@P   T              ( !
MB@P  'AL+W-T>6QE<RYX;6Q02P$"% ,4    " #,,*16EXJ[',     3 @
M"P              @ %F#P  7W)E;',O+G)E;'-02P$"% ,4    " #,,*16
M'#AEZC\!   \ @  #P              @ %/$   >&PO=V]R:V)O;VLN>&UL
M4$L! A0#%     @ S#"D5B0>FZ*M    ^ $  !H              ( !NQ$
M 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ S#"D5F60
M>9(9 0  SP,  !,              ( !H!(  %M#;VYT96YT7U1Y<&5S72YX
8;6Q02P4&      D "0 ^ @  ZA,

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<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>10
<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>11
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.23.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>22</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>0</UnitCount>
  <MyReports>
    <Report instance="a53392890.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000100 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://cognex.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="8-K" original="a53392890.htm">a53392890.htm</File>
    <File>a53392890ex99_1.htm</File>
    <File>cgnx-20230504.xsd</File>
    <File>cgnx-20230504_lab.xml</File>
    <File>cgnx-20230504_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="22">http://xbrl.sec.gov/dei/2021</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>13
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "a53392890.htm": {
   "axisCustom": 0,
   "axisStandard": 0,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2021": 22
   },
   "contextCount": 1,
   "dts": {
    "inline": {
     "local": [
      "a53392890.htm"
     ]
    },
    "labelLink": {
     "local": [
      "cgnx-20230504_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cgnx-20230504_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "cgnx-20230504.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/2004/ref-2004-08-10.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-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://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.sec.gov/currency/2021/currency-2021.xsd",
      "https://xbrl.sec.gov/dei/2021/dei-2021.xsd",
      "https://xbrl.sec.gov/exch/2021/exch-2021.xsd",
      "https://xbrl.sec.gov/naics/2021/naics-2021.xsd",
      "https://xbrl.sec.gov/sic/2021/sic-2021.xsd",
      "https://xbrl.sec.gov/stpr/2021/stpr-2021.xsd"
     ]
    }
   },
   "elementCount": 29,
   "entityCount": 1,
   "hidden": {
    "http://xbrl.sec.gov/dei/2021": 2,
    "total": 2
   },
   "keyCustom": 0,
   "keyStandard": 22,
   "memberCustom": 0,
   "memberStandard": 0,
   "nsprefix": "cgnx",
   "nsuri": "http://cognex.com/20230504",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "a53392890.htm",
      "contextRef": "c20230504to20230504",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000100 - Document - Document and Entity Information",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://cognex.com/role/DocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "a53392890.htm",
      "contextRef": "c20230504to20230504",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 0,
   "tag": {
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "Cover [Abstract]"
       }
      }
     },
     "localname": "CoverAbstract",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "xbrltype": "stringItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine2": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 2 such as Street or Suite number",
        "label": "Entity Address, Address Line Two"
       }
      }
     },
     "localname": "EntityAddressAddressLine2",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressAddressLine3": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 3 such as an Office Park",
        "label": "Entity Address, Address Line Three"
       }
      }
     },
     "localname": "EntityAddressAddressLine3",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCountry": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "ISO 3166-1 alpha-2 country code.",
        "label": "Entity Address, Country"
       }
      }
     },
     "localname": "EntityAddressCountry",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "countryCodeItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "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.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r5"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_NoTradingSymbolFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a security having no trading symbol.",
        "label": "No Trading Symbol Flag"
       }
      }
     },
     "localname": "NoTradingSymbolFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "auth_ref": [
      "r2"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.",
        "label": "Pre-commencement Issuer Tender Offer"
       }
      }
     },
     "localname": "PreCommencementIssuerTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_PreCommencementTenderOffer": {
     "auth_ref": [
      "r3"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.",
        "label": "Pre-commencement Tender Offer"
       }
      }
     },
     "localname": "PreCommencementTenderOffer",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r0"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r1"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_SolicitingMaterial": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.",
        "label": "Soliciting Material"
       }
      }
     },
     "localname": "SolicitingMaterial",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "dei_WrittenCommunications": {
     "auth_ref": [
      "r6"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.",
        "label": "Written Communications"
       }
      }
     },
     "localname": "WrittenCommunications",
     "nsuri": "http://xbrl.sec.gov/dei/2021",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    }
   },
   "unitCount": 0
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r1": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r2": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13e",
   "Subsection": "4c",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r3": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14d",
   "Subsection": "2b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r4": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14a",
   "Subsection": "12",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r5": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r6": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "425",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>14
<FILENAME>0001157523-23-000715-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001157523-23-000715-xbrl.zip
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
M@PLW^ 6T*09OLD6_]_U88Q+- ;U<#6/"XZ(T1 ;83<4 EX.<GIA)BEQ&U'7
M1H6B_$5R?U-#:%,FU)V-8U1B<![P/+PU!RG", @W#G[ 4! S@Z8%:SU0)A8H
M8D&:I%;*&CZY!]V?PAUGYM)D&20J$*&5"<TIV% :37S;!Q\VY^9H:GH@KVQM
M2J<SUY\SJX0&;13;8/Q%<0M6N80C4G83;+)#'Y!J?FHXQ;B.%U%@ 15$X%-$
MEU,Z^Q[PTYG2A1E 0X_KYS"V)F@ZU^T#25;:D;\Z_\?,GI(-8"-=;3JF 0MV
M87 [!-LI(HIHMV# P3TN-_$*]!T'&$FO 0GN'1:JS#9VN,Q"X(T?1Q@[7A1:
M28VZ $"CI'34 HT+9(\%2'C,(<,3#%#"".'YE>92LJ^M_#D7CE+I--W0QZ;#
MM,@.<U5)V+:6QA)2CP6,2206!P >W(V9/8=WH=LQS@178 S_<*%<-)Y RD0
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
M$P+=Y-A :@,!#RHB(WZQ A7:D":D*!L3:/C6!JX^_:7%.!,J33U:VM@(*8P
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
M]])CY_W/?1CA+RK[MY$8)Z0^^\:?%NT =98:^= ]_^URT/_C^J*VW!YZZ;=
MFN7LL_4K,^;->]\FSLB)B+[1H7\O:<UN-IKCAE4WM-:X;HW&(W4$XM1N6"/5
MU.O-1F&3UC9HQTLWX%<]R]2Q;9=N\$H35O_BA)U0W79YC9<.FL.W\_[E=>_?
M((.#F_Z@.[SJ7W\'RNUG2(/>>?_Z_.KS%1L.Z7\DM[W/O?-A[X)<#7M?;LG'
M0?\+N>QV;\BP3Z[[US7\G>^P#Z\\$DW\.#0].U1@%6;16<0.1O 3$29/6\OQ
MDYL_EF_S8K^S3VU:/KVSC:'^X,&AEWG.+3+Q4=*4DHE-'.K9<!)06IN"?9^$
MI.?9U$;5KC1Q'^GYB5#=2UFR/)'&FA0_?^U3N!142=.--!5)GOFF^E7;9FW)
M\>QIJ-)1;<M1'?Z1R:0M*#D'//'UQZ,$+XQWE3EVN?V4P/T3+\_O5&J*IF__
M8]&%%,#]G2LL+XVDDA902=NZ4E=;%:!AH92T")Y^Y:C+WG@ITV]*3^#\[%&C
MI1CMW#%#(42XW)"B$"245J"<5J#55EH=M?H4+I05* )F.1V=709^&(HI/AKD
M+R\&K;))*K7-P;3%NJ&TZKLYRE5(82PWQ) *6P *YJJPNFHH3:TE%;:::( ?
M:_!G%$_9>7?).8:0'&)RS^8]EO+R5AJ:@AH:3=?P.$,%:%@H"U->&DE-+:JF
M:DVEW9::6D8L\.)HRVK@H)_B!,>S_"E-4<(>8PB%"!F5K#I8X4B<[Y)&5[3F
M;LJ-%8[0A3)RE26A- <E-@?MIM+2=U/WHW"$+I0YV"[F61O3(R H@VF6"6IP
MD3AUSFYH@"FL^*'D3!W3!.LX<K]$KK7V0D(014U#@:L %7=H>8!,O[X>*DEM
M+:ZV&E);=Z*M1=@IZ=I_Q6&$%6Q#$OD;MDQ.7OII ^-'&?S\LS,_=[2GJ"/-
M!S@N#UI;$Y !#:,@MJ*8%36V)J +-*R8TDOG4U#G4ZL ]0JU."TOC:2.2AU]
M'3I:3!SP&9-KQX$_)6,GD*> I7'9"PFE<9$ 0.JHU-$"R%]9 <"S@Q5/[-,]
M,\'VVO=J^TVR+<3^8I6M4Y5WR@N2HEL(&2XW"BD$":49**D9*$;^;R%DN&)
M9P?IP1F,(U.$94Y@.4R<3!%>I;/$.](<O&9S(%.$215PSX_M\!CK4.?1%.$,
MWI%IPB5:L97;0,DT89DFO!]1D]HJTX2+JZTEV [J1Q,:I.$1L1ETM.]J*X5
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
M7S3!HYYU75'KLNKE_B<MH8!4^CQH@AK?-.3QCJ<F70TL<.5%IG?GX(?Q>'A
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
M/R)?'E7EROX1')&F%_XHCE7R.L>V[0]DIZ27D&ZN5D+<8ZHBN_H'4$L#!!0
M   ( ,PPI%8A&+_Q?@@  '18   5    8V=N>"TR,#(S,#4P-%]L86(N>&UL
MS9QK;]LV%(:_#]A_X+PO&U#;M80-2]"XR+*D")8F09)B-PR%+-&.,%D,*+EQ
M_OU(76R1/*24BI+UI75XWO/R]AQ)5B*]>[]=1^@+IDE(XI/1;/)VA'#LDR",
M5R>C33+V$C\,1^_GWW[S[KOQ^ ..,?52'*#%"_J5$B^@8;#"Z/;N9AE&&#GN
MQ)W,)C_-W%\JX?&8IT=A_-\Q_V?A)1BQ;N/D>)N$)Z/'-'TZGDZ?GY\GS^Z$
MT-74>?MV-OWSX]6]_XC7WCB,D]2+?3Q"3'^<9(U7Q/?2;,R5].V"1J6!.]WU
MI57PG\:E;,R;QC-G[,XFVR08%4/DX0:=E/*MHB_F-#LZ.IIFT9V4&84&Z]VT
MV>HAE*\?)1&^PTO$__]T=ZG-/IIRQ33&Z96WP!'K,DM/7Y[PR2@)UT\1+ML>
M*5["/A&E.QN^.D=\=68_\]7Y?N\\;3.\%8?I@:1>9&><F9\Z5J6;]H.^MK6T
MIB%?VUQE5N2XAU6N=--^T+>8AB0XCX/N!RYW96OP]ZE'>T!%[:S]!+H?-3#4
MB#==L4]"OWB;XCC 0=DS]S8<.[.NLX-MYKSS)K[@&O&S"*'J=!+FFCDFV)^L
MR)=I@$/F[,SXAS'_D,V"_?#YC+#3Y^DB2:GGIZ53-HF3$1A+PY2/78I-Q8'R
M?&&H%"=D0WTL]:",X'.TB%ZU2,(>YT/3F:XCUBV_,,#Q^-/]"(6!3CO/FM _
M9>._[Z;[4:LS/:7BOGC4+X?$/M9,HU!,?<).ED_I6)C1DI*U;A](S?(5JY'Y
M'2-!AE*"-+G3SHG[C?B;-8[3!^8HX0"%BFF(H1:X58ULT09XZF!3I/.R!?&F
MPX(&KC\QKYN(65554J9F=@_9'S1,V2'WC*S7FSC,+[83B0:CIIB61M."/]#1
M%H@F<QV1^IQY$4)B[+",FG>--%QDD5I07N)K\.J>XWL2A7Z8LN^S']D%!PV]
M2$)*+RBF" E:X*O:V6)7ZZP#5Y,PW[>C,G!89 U[1)JLJ@BKJBU)U;ETC^DM
MQ;P^,%N"[$C/+W;IS7*)J810O;"8K$G8 E^]K2V,:WO0X5R3.&?QL5\1H%R!
M,LEA 6^PJ^0UZR\"K\\IP:]S[;T +I-D@VGC,M#*X6( Y/9*0C'OJ#!T_30L
M#SA=+9)<-]Q:T6\]7#'&[3'6C9*IJ1Y-#]W7T"GK/> CN(B\E00J&"NF*\5:
ME(+@9(M[R%0'N:J=[YH0;SLLN_ ND)K%$ZD49"6"0&Y_-R(NPL3WHK^P1R]8
MB_PML48EW9Y05!;N5$B>MF]:P/9U]R^@K/VMC#R*>!AE\6'<U]#M(6F\X/#=
M#BE!OO$!^O7-=WZ'O9YP0 <R+NBL45YQ[89SM8-FI,MY"NNY8'BT0_L)\JY9
M>A/QE128><6S/^IWOQ#[C7T7UA /:B3:)8T%T@5'VY1#YG6$JSE[N@NL61#Q
MZ##(AO>--%QFF&A!+M,,>'5/\GG,1OIRAU<A_P5-G%Y[:QDKDZ28)BQI@3%D
M:(MB@[<.8FW*/(^@?0CQV&$)-FX8:;; (K^0NL17[]07O6>L>*@77;(OD]O?
M\0N(KT8C\*MH6@,L.=HE&#8W(PSEE P7,90%$8L.@6+=OI&&RPQQ+,E%D$&O
MODB^""-\O5DOE'MYNK# ;S7<&MV]F5UJ%5\SL)*\9)4WH[Q]")0"&T/J%Q-B
M<Z\4L90=^B+RP=M>!JPDPF7Q6TD#GC5:@56MMC6X&F>[%)L[,2-MRBWY9AHD
MB@9$>]T^DU=N!U0'FC2Q*(S>?57(9>P3^D1H-H#[E%V[GY$-.X>\G)$ OI1N
ME"%42TU&ZYHQ^MNMG"9=F>NGWJ&L(D'Y!F5:1"@J](@G#*&@F@%!OFK'H.(R
M)HLEUJ"?O@KM?(WI*HQ7'RAY3A_/R/K)B^&+?:-2*"R-LG5!@;YV"\G4A;F
M])EEX90*E$M0H1E"K9CWEKQJ$Z#: )/$FC#X]E4+IT' &$R*_Z["&,_ 2C#H
MA#H =:VK '"U6P/Z#LP5H,LK^2\";\H/B$O033R(LX5I3\DKEA^B'T@1V==Z
M'HY\IR'Y3D/RG4[(=[HFW_E*\IT&Y#\\DV&2[S0EWWD]^4X=^<ZAR7<;DN\V
M)-_MA'RW:_+=KR3?;4(^V["!'O7=INR[KV??K6/?/0C[9^SC#7T@S[&)?%4%
M<5]5V:)^[]D)\XI](^*E+(5W'N??BKEB0*0#NPAQ#B^Y@?)] LBX[-<SX=E7
M[!MZ2\F7,%: :R*%6%>DMH"7C#NA'NZC$?I0JL+_[K90*1M0$>CV&*H$PUX8
MRD'* FL"=.[[T)_?=C(>]T4)>- O)=:.^+EA-X=[P;O9L;Z2HA[H\^" \)9W
M##S JRML.KH7MW;!0WO5J6=\;TF2>M'?X9/VMP(F(82R)+0%M&#;"=90#XW@
M5A,5Q',)8IK!W-PW[BL$O'8'#-@+.2#\@&OW)< OIDXI]@#HH5 Q03'4YJT/
M%2-K+WU0/;7O?)"E\^Q2FS<-@$YP XAYX40"JZK=VQZ4S.XIXR^ZBFX?20S_
M[8PN7$Q&#;<@3C:S19W&5T<>*)]GK2AK'L1?$V@WAM0OIDBBK"QIA!UZ>*(>
M^QO**F'F+![X0"52=.%B4FJXS;/TDIFU)^EA7^US])!\GGU$9(EFS@^+'U$I
M.O"3]+K=(?4K*F(I*W?/T(,.W6-Y31ZHQ]];>/^R7I (> 32H"BF!BI:\ GX
MV4)4;ZVC5)<QOR:HB* \-( ')4U[11HMKD@K("Z!U?ITSZS0L<0/&"LF)<5:
M$"HXV6(3,M51J6KG(HR'Y1#>!5*S>")[@JRD#LCM[]1]OO4?V69@X($8DT0Z
MA8L2"Z?QJJ'M4SG@77<Z5U+F9025H0$\$&/<,-)L@>$S>U4MG]U5I^(=CI6U
MN&*?^)M_BZ8P?U/N_']02P,$%     @ S#"D5A\&)+_D!0  [3X  !4   !C
M9VYX+3(P,C,P-3 T7W!R92YX;6S56UUOXC@4?5]I_T.6>880,IT=JC(CEFE'
M:#HM:EGMQ\LJ)"98F]C(,87^^[6#S6+'24P_1NY+"[G'U_?><YS$M^[%YUV>
M>0^ %!"C42?H]3L>0#%.($I'G4W1C8H8PL[G3S__=/%+M_L5($ B"A)O\>C]
M1G"4$)BDP)O=W2YA!KQ!V M[0>\L"#\>F;M=/CR#Z-]S_F,1%<!CTZ+B?%?
M46=%Z?K<][?;;6\;]C!)_4&_'_A_?K^^CU<@C[H0%31",>AX#']>E!>O<1S1
M,N:CX;L%R:2#T#_,58O@W[H2UN67NL&@&P:]79%T1(C<;#&)A.\J>)%3,!P.
M_=)Z@#)'L,'U(6U6/<_;UX_@#-R!I<=__WXWK1T]]#G"1X!>1PN0L2G+X?1Q
M#4:= N;K#,AK*P*69C\9(0<WO#I#7IW@ Z_.N_\]^\\)+^5BFF,:92\39^FO
M&FMEFN<'??-2I6T*^>8EJ\P6.?@!53Z:YOE!SP"!.+E$R>L'KD_U4L'?TXC\
M *E4)WM^ J\?]0FAQCA%8->+<;YW_ 7'FQP@.D:,- KIXQ0M,<G+IT)[S'&*
M=BRF0=@_Z[\O(VKV=QSAFH"" 4O+-;N@3 9V%* $)'(Z'NO3<BAGE'-F.%:F
MR?CS#Y,J$06;IF2A '$OQ0]^ B!C=A#P#SSC\NGVCGWY9X+9@W^\*"B)8BH]
M99R14<=H8Q'R9#2;_^J!RC+-F4<M3I-)A*F:U"B/*1P3->*(Q-(3^ZCP5WU(
M"X2_C@CSUXU7,#M0OR0XKZLD;@S].+QS3_'@4>RI(S%) !EU^OS=C0U< D+$
MPFJ(NPPZ.UY]KTG@F$6;\(BOLBC5&#3:1!TTFWL<-@7?0J(V5+ 8.,RBE-WA
M2?F%W<)KUJ,1HRU,#>,>NS;)6"Y5S85@>^ PV_L'TAU((<\&T9LHU\EN@HCR
MF"'N46V12@O39@^"Z-!YHJ=LUT_6F)3IL==("B9X@RAYG.#$S+O5"$4&+2-<
M5<4IB5J)I,6AT,Q[YS5S!3-PL\D7@!@%4C4K:C@VNTI];0I6/!^/%J2>.4_J
M/-I-$Y8:7,)]BZV!X1:L0G<MUE7N[9*S$D*M*Z&*#\ZK8IPD+-%"_&*[7A 8
M%=& 4]1@Q+FJA/:DK%1@=",4\.L;5,# 4@$#2P4,WI("]*2>J(#!00$?WZ "
M0DL%A)8*"-^2 O2DGJB \*" X5M1P(1]O"5SO$5-_%=1)O:/48YS7YO0*<P?
M.Y$]'Y=;=TKPY5[EELP(?H#[/\C6LE\#-4F@ G5<!\VIG2*&BB>I")?;@*J<
M]QO7QON "C'>!"3$<>;-J9RT_*4'R;3[+4 1^0P7-,K^ANO:AE 3T,2Z!G2<
M^Z:T3E& YD?JP.4.(7]FC0F(#,R;3/+/A(K)/78;0F_A4QTI&72Y7\>/2V6S
M%4;F?EV=692C:G:/S9846ABMCI:LNMRP^X- 2@&:X#S?(-%9*C1J&S&B.#48
M]TBV2::%Z1H7DFZ7.W'W.(,QI!"EW]EK(X%1IG%=#Q"U,0'<8[DUC1:*3>,E
MOR[WV68$<%D"MA,H3W?P<T3D=KFLW*[;@:)034#W>+=.JX7_)C]2!RYWV[3X
MIT6Q <1:#;5PLR8,<.>5T9;B:?HP>),J<;DC=X/G).+G].\?\P7.#">K&A"B
M4$:$>_2W)]+"N-&!/(/C?O?M,@<D9=%_)7A+5TR[ZPB96RZ-2&4/7H-TCWS[
MQ*QVX36.I!A<;KS)LV17L&"[E;] 1*[8%?V%OP6EG<&KH-P3@%U"EN?P*DXD
M\2[WX=3@]T<)VZDWX(SD*SC7Z:]/ZB0!*&ZD!%QNP>UO7A.6 (FR*7M5V7T#
MYD= #4:Y^5<P[M%NDXS5#;_B0M+M<K_N'L0;PH(/!HLYSU7?Z->8Y3:_8G:/
MWY84VK;XE=&259?[=<I+J$:IT2:*H=G<([,I^!8FM:&21J?[<$)\E[MX%:$4
M&$[&-T&T1:I"W./6(A7+Q:IZD$P_MR-WX5=*=<TN\'\YWUOX#_XOVI_^ U!+
M 0(4 Q0    ( ,PPI%88#KA(K1,  (5S   -              "  0    !A
M-3,S.3(X.3 N:'1M4$L! A0#%     @ S#"D5BHHAX9&,@  %64# !,
M         ( !V!,  &$U,S,Y,C@Y,&5X.3E?,2YH=&U02P$"% ,4    " #,
M,*162-^2G5 #  !O#P  $0              @ %/1@  8V=N>"TR,#(S,#4P
M-"YX<V102P$"% ,4    " #,,*16(1B_\7X(  !T6   %0
M@ '.20  8V=N>"TR,#(S,#4P-%]L86(N>&UL4$L! A0#%     @ S#"D5A\&
M)+_D!0  [3X  !4              ( !?U(  &-G;G@M,C R,S U,#1?<')E
:+GAM;%!+!08     !0 % $$!  "66      !

end
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
