<SEC-DOCUMENT>0001157523-22-000574.txt : 20220506
<SEC-HEADER>0001157523-22-000574.hdr.sgml : 20220506
<ACCEPTANCE-DATETIME>20220505164043
ACCESSION NUMBER:		0001157523-22-000574
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		14
CONFORMED PERIOD OF REPORT:	20220504
ITEM INFORMATION:		Results of Operations and Financial Condition
ITEM INFORMATION:		Departure of Directors or Certain Officers; Election of Directors; Appointment of Certain Officers: Compensatory Arrangements of Certain Officers
ITEM INFORMATION:		Other Events
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20220505
DATE AS OF CHANGE:		20220505

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:		22897094

	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>a52710163.htm
<DESCRIPTION>COGNEX CORP. 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:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" 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:utr="http://www.xbrl.org/2009/utr" xmlns:country="http://xbrl.sec.gov/country/2021" xmlns:currency="http://xbrl.sec.gov/currency/2021" 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:srt="http://fasb.org/srt/2021-01-31" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:cgnx="http://cognex.com/20220504" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title></title>
    <!-- Licensed to: Business Wire
         Document created using EDGARfilings PROfile 8.1.0.0
         Copyright 1995 - 2022 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="c20220504to20220504" format="ixt:booleanfalse">false</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_efdc5ce7f7e745b6bb03628ca65777cd" contextRef="c20220504to20220504">0000851205</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="cgnx-20220504.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="c20220504to20220504"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-05-04</xbrli:startDate><xbrli:endDate>2022-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_15ea6029c9a94cf789e742fad2a1cd7a" contextRef="c20220504to20220504">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_ce0b1954c0544e86b3b1541d28c4bdce" contextRef="c20220504to20220504" format="ixt:datemonthdayyearen">May 4, 2022</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_0f3e16f61f6f4bd9954fdb5d5e397b68" contextRef="c20220504to20220504">Cognex Corporation</ix:nonNumeric></span><br />
            </div>
          </td>

  </tr>

  <tr>

    <td style="width: 100%; text-align: center;">
            <p style="margin: 0in 123.3pt 0.0001pt 120.4pt;" class="MsoBodyText">(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_69e402cc91b24459bf3323220fba11dc" contextRef="c20220504to20220504" 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_895f2158b1fc41cebba5b91cc89968b7" contextRef="c20220504to20220504">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_3a0521a240aa47619ca535a43b7874c6" contextRef="c20220504to20220504">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_c08056baf0984e33bb4b70cdce32418d" contextRef="c20220504to20220504">One Vision Drive</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_4d99e3c8337048f2808d00d8fcca0305" contextRef="c20220504to20220504">Natick</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_d91a63d8276e4d20a85f325ad21aaeb7" contextRef="c20220504to20220504" 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_45ef95e9d6344dfbb0a2f27513914a18" contextRef="c20220504to20220504">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_a66a1c80eeca4114bba2e57b3f546280" contextRef="c20220504to20220504">508</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_caaf8dd3fb3a44c0b092ef26803a27e3" contextRef="c20220504to20220504">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" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <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_c9bdec2f980b4f409ea21092651cc110" contextRef="c20220504to20220504" 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" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <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_74eb7d7458c446c89f8148d5d2432e04" contextRef="c20220504to20220504" 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" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <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_cdfb14434221482f9355f3e9d857ee45" contextRef="c20220504to20220504" 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" class="DSPFListTable" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; width: 100%; text-align: left; color: #000000;">


  <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_17550377037c4cbbb8fde542f47e3d05" contextRef="c20220504to20220504" 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 style="width: 2%; text-align: center; font-weight: bold; padding-bottom: 2px;" colspan="1">&#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 style="width: 2%; text-align: center; font-weight: bold; padding-bottom: 2px;" colspan="1">&#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_c6dd2d5b397c44eca6640ef77510d1b9" contextRef="c20220504to20220504">Common Stock, par value $.002 per share</ix:nonNumeric><br />
                          </td>

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

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

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

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

  </tr>


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

                    <div> <br />
                    </div>

                  </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_02f2f46c66364dfb97bc1be07086e8e8" contextRef="c20220504to20220504" 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 style="font-size: 6pt;">&#160; </span>&#9744;</div>

              </div>

              <div><br />
              </div>

            </div>

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

            </div>

            <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: 8.03%;">
                    <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 2.02</span></div>
                  </td>

    <td style="width: 91.97%;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Results of Operations and Financial Condition</span></td>

  </tr>


</table>
            <div style="text-align: left;"><br />
            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On May 5, 2022, Cognex Corporation (the &#8220;Company&#8221;) issued a news release to report its financial results for the quarter ended April 3, 2022. 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><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: 8.03%;">
                      <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 5.02</span></div>
                    </td>

    <td style="width: 91.97%; font-weight: bold; text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">Departure&#160; of&#160; Directors&#160; or&#160; Certain&#160; Officers;&#160; Election&#160; of&#160; Directors;&#160; Appointment&#160; of&#160; Certain Officers;
                      Compensatory Arrangements of Certain Officers</td>

  </tr>


</table>
              <div style="text-align: left;"><br />
              </div>

            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On May 4, 2022, the Board of Directors (the &#8220;Board&#8221;) of the Company authorized an increase to the number of directors on the Board from seven to
              eight and appointed John T.C. Lee as a director of the Company, both actions effective immediately. The Board appointed Dr. Lee to the class of directors whose term ends in 2025 to serve in accordance with the bylaws of the Company and until
              his successor is duly elected and qualified. Dr. Lee shall serve on the Audit Committee and the Compensation/Stock Option Committee of the Board of Directors. A copy of the press release announcing Dr. Lee&#8217;s appointment is attached hereto as
              Exhibit 99.2 and is hereby incorporated by reference.</div>

            <div><br />
            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">Dr. Lee, 59, is currently the President and Chief Executive Officer of MKS Instruments, Inc. (Nasdaq: MKSI), a global provider of instruments,
              systems, subsystems and process control solutions for advanced manufacturing processes.&#160; Dr. Lee has held this position since January 2020. He has also served on the MKS board of directors since January 2020.&#160; From October 2007 to January
              2020, Dr. Lee held a series of progressive leadership roles at MKS, including Chief Operating Officer from 2016 to 2019. Prior to joining MKS, Dr. Lee served in various capacities in various technology industries, including semiconductor and
              solar as well as plasma processing research, at leading technology companies, including&#160;Applied Materials,&#160;Lucent Technologies and AT&amp;T Bell Labs. He has served as Vice Chair and a member of the Executive Committee of the Board of
              Directors of the Massachusetts High Technology Council since 2021. Dr. Lee holds a B.S. from Princeton University and both an M.S.C.E.P. and a Ph.D. from the Massachusetts Institute of Technology, all in Chemical Engineering.</div>

            <div><br />
            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">Dr. Lee&#8217;s qualifications for sitting on the Board of Directors include his executive leadership experience within technology companies, his operating
              experience, his public company board experience, his knowledge of optics and the semiconductor industry, and his technological background<span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">.</span></div>

            <div><br />
            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">For his service on the Board, Dr. Lee will receive an annual stipend of $50,000, and for his service on the Audit Committee and Compensation/Stock
              Option Committee], Dr. Lee will receive additional annual stipends of $10,000 and $8,000, respectively.&#160; Further, subject to Board approval, Dr. Lee will receive annual equity awards under the Company&#8217;s 2007 Stock Option and Incentive Plan
              (the &#8220;2007 Plan&#8221;) consistent with the Company&#8217;s other non-employee Board members. Dr. Lee will receive an initial equity award under the 2007 Plan of restricted stock units (&#8220;RSUs&#8221;) having an economic value of approximately $181,600 on the
              date of grant. These RSUs will vest over three years: 20% on the first anniversary of the grant date; 30% on the second anniversary; and 50% on the third anniversary. Dr. Lee will enter into the Company&#8217;s standard indemnification agreement,
              which has been previously entered into with each of the Company&#8217;s directors<span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">,</span> and the form of which has been filed by the Company with the SEC<span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">.</span></div>

            <div><br />
            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">There is no arrangement or understanding between Dr. Lee and any other person pursuant to which he was selected as a director, nor is the Company
              aware, after inquiry of Dr. Lee, of any related-person transaction or series of transactions required to be disclosed pursuant to Item 404(a) of Regulation S-K.</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: 8.03%;">
                      <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 8.01</span></div>
                    </td>

    <td style="width: 91.97%;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Other Events</span></td>

  </tr>


</table>
              <div style="text-align: left;"><br />
              </div>

            </div>

            <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On May 5, 2022, the Company announced that its Board of Directors declared a quarterly cash dividend of $0.065 per share. The dividend is payable on
              June 3, 2022 to all shareholders of record at the close of business on May 20, 2022<span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">.</span></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: 8.03%;">
                      <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold;">Item 9.01</span></div>
                    </td>

    <td style="width: 91.97%;"><span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif; font-weight: bold;">Financial Statements and Exhibits</span></td>

  </tr>


</table>
            </div>

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

            <div style="text-align: left;"><span style="font-size: 10pt; font-family: 'Times New Roman',Times,serif;">(d)</span><span style="font-size: 5.14pt;">&#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;">Exhibits</span></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: 8%;"><span style="font-size: 10pt; font-family: 'Times New Roman', Times, serif;"><span style="text-decoration: underline;">Exhibit No.</span></span></td>

    <td style="width: 92%;"><span style="font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><span style="text-decoration: underline;">Description</span></span></td>

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 8%; text-align: left; vertical-align: top;"><a href="a52710163ex99_1.htm">99.1</a><br />
                    </td>

    <td style="width: 92%;"><a href="a52710163ex99_1.htm">News release, dated May 5, 2022, by Cognex Corporation (furnished herewith)</a></td>

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 8%; text-align: left; vertical-align: top;"><a href="a52710163ex99_2.htm">99.2</a><br />
                    </td>

    <td style="width: 92%;"><a href="a52710163ex99_2.htm">News release, dated May 5, 2022, by Cognex Corporation regarding appointment of new director (filed
                        herewith)</a></td>

  </tr>

  <tr>

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

    <td rowspan="1" style="width: 92%; font-family: 'Times New Roman',Times,serif; font-size: 10pt; text-align: left;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 8%; text-align: left; vertical-align: top;">104<br />
                    </td>

    <td style="width: 92%; font-family: 'Times New Roman',Times,serif; font-size: 10pt; text-align: left;">
                      <div>Cover Page Interactive Data File (the cover page XBRL tags are embedded within the Inline XBRL document)</div>
                    </td>

  </tr>


</table>
            </div>

            <div><br />
            </div>

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

            </div>

            <div>&#160;</div>

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

            <div>&#160;</div>

            <div><br />
            </div>

            <div style="text-align: left; 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><br />
            </div>

            <div>&#160;</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: 45%;">
                      <div>&#160;</div>
                    </td>

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 45%;">Dated: May 5, 2022</td>

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

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

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

  </tr>


</table>
            </div>

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

          </div>

          <div><br /></div>

        </div>

      </div>

    </div>

  </div>

</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>a52710163ex99_1.htm
<DESCRIPTION>EXHIBIT 99.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Business Wire
         Document created using EDGARfilings PROfile 8.1.0.0
         Copyright 1995 - 2022 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><br>
    <div class="bw-release">
      <div class="bw-release">
        <h1> <b>Cognex Reports First Quarter 2022 Results</b> </h1>
        <div class="bw-release-body">
          <div class="bw-release-table-js bw-release-story">
            <p>NATICK, Mass.--(BUSINESS WIRE)--May 5, 2022--Cognex Corporation (NASDAQ: CGNX) today reported financial results for the first quarter of 2022. Table 1 below shows selected financial data for Q1-22 compared with Q1-21 and Q4-21. </p>
            <table cellspacing="0" id="zac47f91421424d59b94eecc85b0b6b70" 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="5">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b><u>Table 1</u></b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="5">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (Dollars in thousands, except per share amounts) </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;border-bottom: solid black 1pt;width: 52%;"><br>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;border-bottom: solid black 1pt;width: 12%;"><br>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;border-bottom: solid black 1pt;width: 12%;"><br>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;border-bottom: solid black 1pt;width: 12%;"><br>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;border-bottom: solid black 1pt;width: 12%;">&#160;</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: 52%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <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="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <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="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>Net Income <br>
                        per Diluted <br>
                        <u>Share</u></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>Non-GAAP <br>
                        Net Income <br>
                        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;width: 52%;padding-left: 5px;">
                    <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="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td colspan="1" rowspan="1" style="border-bottom: solid black 1pt;border-right: solid black 1pt;padding-left: 0px;text-align: center; list-style-position: inside;vertical-align: bottom;width: 12%;">
                    <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: 52%;padding-left: 5px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Current quarter: Q1-22</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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$282,407</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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$67,333</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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$0.38</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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>$0.42</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: 52%;padding-left: 5px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Prior year&#8217;s quarter: Q1-21 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $239,027 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $69,848 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $0.39 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $0.36 </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: 52%;padding-left: 5px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Change: Q1-21 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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> 18% </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (4)% </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> (3)% </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> 17% </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: 52%;padding-left: 5px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Prior quarter: Q4-21 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $244,065 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $53,535 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $0.30 </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> $0.30 </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: 52%;padding-left: 5px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Change: Q4-21 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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> 16% </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> 26% </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> 27% </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;text-align: center; list-style-position: inside;width: 12%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> 40% </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" colspan="5" style="padding-left: 0px;">
                    <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> &#8220;Overall, I am pleased with our first quarter results,&#8221; said Robert J. Willett, Chief Executive Officer of Cognex. &#8220;Revenue was the second highest of any quarter in our company&#8217;s 41-year history and operating margin was above our 30%
              long-term target. This solid start to the year was driven by the increasing adoption of machine vision technology and the hard work of Cognoids through difficult conditions around the world to support our customers, manage our supply chain,
              and continue our product development efforts.&#8221; </p>
            <p> Mr. Willett continued, &#8220;While our Q1 results were good, we believe growth momentum is slowing. We are currently hearing from customers that automation projects are taking longer to deploy, and some are being delayed, because of supply chain
              challenges and staffing shortages.&#8221; </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 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 2022</b> </p>
            <ul style="list-style-type: disc;">
              <li> Cognex reported record first-quarter revenue of $282 million for 2022. Revenue increased by 18% from Q1-21 and 16% from Q4-21. Growth came from multiple end markets on both a year-on-year and sequential basis, including a notable
                contribution by customers in logistics. In addition, improved supply conditions and delivery times on Cognex products in the first quarter helped the company ship a considerable level of orders that were in backlog at the end of 2021. </li>
            </ul>
            <ul style="list-style-type: disc;">
              <li> Gross margin was 72% for both Q1-22 and Q4-21 compared with 77% for Q1-21 due to higher prices Cognex has been paying to purchase components and other inventory that are in short supply. In addition, the revenue mix in Q1-21 was more
                favorable than in Q1-22. </li>
            </ul>
            <ul style="list-style-type: disc;">
              <li> Research, Development, &amp; Engineering (RD&amp;E) expenses increased by 6% from Q1-21 and by 2% from Q4-21. Cognex incurred higher costs associated with the company&#8217;s investment in engineering resources on both a year-on-year and
                sequential basis. These increases were partially offset by the impact of foreign currency exchange rate changes and lower incentive compensation. </li>
            </ul>
            <ul style="list-style-type: disc;">
              <li> Selling, General &amp; Administrative (SG&amp;A) expenses increased by 12% from Q1-21 and decreased by 3% from Q4-21. SG&amp;A spending increased year-on-year due to higher personnel-related costs (including additional sales headcount),
                travel, stock-based compensation expense, and sales demonstration equipment tied to new product launches. Like RD&amp;E, the increase in SG&amp;A spending was partially offset by foreign currency exchange rate changes and lower incentive
                compensation. </li>
            </ul>
            <ul style="list-style-type: square;">
              <li> The effective tax rate was 23% in Q1-22, 11% in Q1-21, and 8% in Q4-21. All periods presented include a varying discrete tax benefit or expense, which are summarized in Exhibit 2. Excluding these discrete tax items, the effective tax
                rate was 16%, 18%, and 8%, respectively.<b> </b>The decrease year-on-year was due to the expectation that more of the company&#8217;s profits will be earned and taxed in lower-tax jurisdictions. The increase on a sequential basis was due
                primarily to a true-up of the 2021 annual tax rate in Q4-21 to 16% from 18%. </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 3, 2022</b> </p>
            <ul style="list-style-type: disc;">
              <li> Cognex&#8217;s financial position as of April 3, 2022<b> </b>continued to be strong, with $794 million in cash and investments and no debt. In Q1-22, Cognex generated $50 million in cash from operations and $4 million in net proceeds from the
                issuance of common stock under stock plans. In addition, the company spent $130 million to repurchase its common stock and paid $11 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>
            <ul style="list-style-type: disc;">
              <li> Inventories at April 3, 2022 increased by $24 million, or 21%, from the end of 2021 to support the company&#8217;s higher anticipated business level in 2022. Cognex is also securing strategic components and other inventory to mitigate exposure
                to demand changes and component shortages and is paying a premium to do so. </li>
            </ul>
            <p> <b>Financial Outlook &#8211; Q2 2022</b> </p>
            <ul style="list-style-type: disc;">
              <li> Cognex expects revenue in Q2-22 will be between $265 million and $285 million. On a sequential basis, the company believes that higher revenue from the consumer electronics industry will be offset by the timing of large projects in
                logistics and slower spending trends in the broader factory automation market. For all of 2022, Cognex expects that annual revenue from both consumer electronics and logistics will grow over 2021. </li>
            </ul>
            <ul style="list-style-type: disc;">
              <li> Gross margin for Q2-22 is expected to be in the low-70% range, and below the company&#8217;s mid-70% long-term target due to higher supply chain costs. </li>
            </ul>
            <ul style="list-style-type: disc;">
              <li> Operating expenses are expected to be roughly flat on a sequential basis. </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 Cognex
                results over multiple periods using the same methodology that management employs in its budgeting process and in its review of Cognex&#8217;s operating results. Non-GAAP presentations exclude certain one-time discrete events, such as discrete tax
                adjustments (because these costs are outside of Cognex&#8217;s normal business operations and not used by management to assess Cognex&#8217;s operating results). 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 5:00 p.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 8:00 p.m. EDT today and will be available
                until 11:59 p.m. EDT on Sunday, May 8, 2022. 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 13728103. </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>
            <p> <b>About Cognex Corporation</b> </p>
            <p> Cognex Corporation designs, develops, manufactures, and markets a wide range of image-based products, all of which use artificial intelligence (AI) techniques that give them the human-like ability to make decisions on what they see. Cognex
              products include machine vision systems, machine vision sensors, and barcode readers that are used in factories and distribution centers around the world where they eliminate production and shipping errors. </p>
            <p> Cognex is the world's leader in the machine vision industry, having shipped more than 3 million image-based products, representing over $9 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>

            <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> <i>Certain statements made in this news release, which do not relate solely to historical matters, are forward-looking statements. These statements can be identified by use of the words &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;estimates,&#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 COVID-19 pandemic on our assets, business and results of operations, 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 to manufacture and deliver quality products; (2) the inability to obtain components for our products; (3) the failure to effectively manage product transitions or accurately forecast customer demand; (4) the
                inability to manage disruptions to our distribution centers; (5) the inability to design and manufacture high-quality products; (6) the impact, duration, and severity of the COVID-19 pandemic, including the availability and effectiveness of
                vaccines; (7) the loss of, or curtailment of purchases by, large customers in the logistics industry; (8) information security breaches; (9) the inability to protect our proprietary technology and intellectual property; (10) the inability
                to attract and retain skilled employees and maintain our unique corporate culture; (11) the technological obsolescence of current products and the inability to develop new products; (12) the failure to properly manage the distribution of
                products and services; (13) the impact of competitive pressures; (14) the challenges in integrating and achieving expected results from acquired businesses; (15) potential disruptions in our business systems; (16) potential impairment
                charges with respect to our investments or acquired intangible assets; (17) exposure to additional tax liabilities; (18) fluctuations in foreign currency exchange rates and the use of derivative instruments; (19) unfavorable global economic
                conditions, including high inflation rates; (20) business disruptions from natural or man-made disasters or public health issues; (21) economic, political, and other risks associated with international sales and operations, including the
                impact of the war in Ukraine; and (22) our involvement in time-consuming and costly litigation; and the other risks detailed in Cognex reports filed with the SEC, including its Form 10-K for the fiscal year ended December 31, 2021 and Form
                10-Q for the fiscal quarter ended April 3, 2022. 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>
            <table cellspacing="0" id="z37bf4eb42eeb4918b2d24315da17fe1e" 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: left;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <u><b>Exhibit 1</b></u> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" colspan="12" style="padding-left: 0px;">&#160;</td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>COGNEX CORPORATION</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>Statements of Operations</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>(Unaudited)</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>Dollars in thousands, except per share amounts</b> </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;width: 60%;">&#160;</td>
                  <td rowspan="1" colspan="11" style="padding-left: 0px;">&#160;</td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;border-bottom: solid black 1pt;" colspan="11">
                    <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: 60%;">
                    <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>Apr. 3, 2022</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;"> Dec. 31, 2021 </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;"> Apr. 4, 2021 </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> 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;"> <b>$</b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>282,407</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 244,065 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 239,027 </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: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Cost of revenue (1) </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>78,790</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 69,082 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 54,045 </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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Gross margin </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: 8%;">
                    <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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 174,983 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 184,982 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>72</i></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>72</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>77</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Research, development, and engineering expenses (1) </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>36,054</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 35,489 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 34,105 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>13</i></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>15</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>14</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Selling, general, and administrative expenses (1) </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>80,835</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 82,974 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 72,424 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>29</i></b> </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="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>34</i> </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="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>30</i> </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="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <i>%</i> </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Operating income </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: 8%;">
                    <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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 56,520 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 78,453 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>31</i></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 8%;">
                    <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="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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>33</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Foreign currency gain (loss) </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: 8%;">
                    <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;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;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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (37 </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;"> ) </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (1,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;"> ) </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Investment and other income </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,420</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,464 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,386 </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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Income before income tax expense </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>87,704</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 57,947 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 78,831 </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: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,371</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,412 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 8,983 </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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Net income </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: 8%;">
                    <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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 53,535 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 69,848 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>24</i></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>22</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>29</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Net income per weighted-average common and common-equivalent share: </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Basic </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.39</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.30 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.40 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted </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: 8%;">
                    <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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.30 </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: 8%;">
                    <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="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: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Weighted-average common and common-equivalent shares outstanding: </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Basic </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;"> &#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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>174,146</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;"> &#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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 176,123 </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;"> &#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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 176,288 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted </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;"> &#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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>176,668</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;"> &#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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 179,322 </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;"> &#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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 179,971 </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: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Cash dividends per common share </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.065</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: 8%;">
                    <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="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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.060 </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: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Cash and investments per common share </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>4.57</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 5.17 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4.96 </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: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Book value per common share </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>7.82</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 8.15 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 7.68 </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: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> (1) Amounts include stock-based compensation expense, as follows: </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Cost of 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;"> <b>$</b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>563</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 380 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 248 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Research, development, and engineering </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>4,448</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 3,377 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,003 </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;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Selling, general, and administrative </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>10,045</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 6,664 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 7,758 </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: bottom;width: 60%;padding-left: 20px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Total stock-based compensation expense </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>15,056</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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 10,421 </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: 8%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 12,009 </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: 0px;width: 60%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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" colspan="3" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#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>
            <table cellspacing="0" id="z290ccd6bf0954a96a4a066ce03dd2f9a" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

                <tr>
                  <td rowspan="1" colspan="12" style="padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <u><b>Exhibit 2</b></u> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" colspan="12" style="padding-left: 0px;">&#160;</td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>COGNEX CORPORATION</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <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>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>(Unaudited)</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="12">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>Dollars in thousands, except per share amounts</b> </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;width: 67%;">
                    <p style="text-align: center; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> &#160;&#160;&#160; </p>
                  </td>
                  <td rowspan="1" colspan="11" style="padding-left: 0px;">&#160;</td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;" colspan="11">
                    <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: 67%;">
                    <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>Apr. 3, 2022</b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;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;"> Dec. 31, 2021 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;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;"> Apr. 4, 2021 </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="vertical-align: bottom;padding-left: 0px;border-bottom: solid black 1pt;" colspan="8">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Discrete tax adjustments reconciliation</b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;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="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Income before income tax expense (GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>87,704</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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 57,947 </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 78,831 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense (GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,371</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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,412 </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 8,983 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 40px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Effective tax rate (GAAP)</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>23</i></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>8</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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="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: 6%;">
                    <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="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 20px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Discrete tax benefit (expense) related to stock-based compensation </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(117</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;"> <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;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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,148 </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 5,207 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 20px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Discrete tax benefit (expense) related to tax return filings and other </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;border-bottom: solid black 1pt;padding-right: 0px;width: 1%;">
                    <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;border-bottom: solid black 1pt;padding-right: 0px;width: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(6,221</b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;border-bottom: solid black 1pt;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;padding-left: 0px;border-bottom: solid black 1pt;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;border-bottom: solid black 1pt;padding-right: 0px;width: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (1,173 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;border-bottom: solid black 1pt;padding-right: 0px;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> ) </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;border-bottom: solid black 1pt;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;border-bottom: solid black 1pt;padding-right: 0px;width: 6%;">
                    <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;border-bottom: solid black 1pt;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Total discrete tax adjustments </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>(6,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;"> <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;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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (25 </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;"> ) </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 5,207 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense (Non-GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>14,033</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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 4,387 </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 14,190 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 40px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Effective tax rate (Non-GAAP)</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>16</i></b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: left;"> <b><i>%</i></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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>8</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="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="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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>18</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;padding-right: 0px;vertical-align: bottom;border-right: solid black 1pt;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: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Net income (Non-GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <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="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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 53,560 </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 64,641 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 40px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue (Non-GAAP)</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>26</i></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;"> <b><i>%</i></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;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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>22</i> </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;"> <i>%</i> </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <i>27</i> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Net income per diluted weighted-average common and common-equivalent share (GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <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="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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.30 </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: 6%;">
                    <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="vertical-align: bottom;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 20px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Per share impact of discrete tax adjustments identified above </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.04</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: 6%;">
                    <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;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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> (0.03 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Net income per diluted weighted-average common and common-equivalent share (Non-GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: 6%;">
                    <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="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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.30 </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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 0.36 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" colspan="3" 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" colspan="3" 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;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-left: solid black 1pt;padding-left: 10px;width: 67%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted weighted-average common and common-equivalent shares outstanding (GAAP) </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 1%;">
                    <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: double black 2.25pt;padding-left: 0px;padding-right: 0px;width: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>176,668</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;"> &#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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 179,322 </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;"> &#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: 6%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 179,971 </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0px;padding-right: 0px;border-right: solid black 1pt;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;border-bottom: solid black 1pt;border-left: solid black 1pt;padding-left: 0px;width: 67%;">
                    <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="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;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="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;width: 2%;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  </td>
                  <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;border-right: solid black 1pt;" colspan="3">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> &#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>
            <table cellspacing="0" id="z268b6aa91d7f445cb5c708b836614862" style="margin-bottom: 10px;margin-left: 0px; margin-right: auto;width: 100%; font-size: 10pt;">

                <tr>
                  <td rowspan="1" colspan="6" style="padding-left: 0px;">
                    <p style="margin-bottom: 0px; margin-top: 0px;"> <u><b>Exhibit 3</b></u> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" colspan="6" style="padding-left: 0px;">&#160;</td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="6">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>COGNEX CORPORATION</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="6">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>Balance Sheets</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="6">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>(Unaudited)</b> </p>
                  </td>
                </tr>
                <tr>
                  <td rowspan="1" style="padding-left: 0px;text-align: center; list-style-position: inside;" colspan="6">
                    <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position: inside;"> <b>Dollars in thousands</b> </p>
                  </td>
                </tr>
                <tr>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;width: 70%;"><br>
                  </td>
                  <td rowspan="1" colspan="2" style="padding-left: 0px;"><br>
                  </td>
                  <td colspan="1" rowspan="1" style="padding-left: 0px;width: 2%;"><br>
                  </td>
                  <td rowspan="1" colspan="2" style="padding-left: 0px;">&#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" 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>Apr. 3, 2022</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;"> Dec. 31, 2021 </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;"> <b>Assets</b> </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" colspan="2" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="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 style="margin-bottom: 0px; margin-top: 0px;"> Cash and investments </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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>794,164</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 907,364 </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;"> Accounts receivable </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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>155,065</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 130,348 </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;"> 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>136,660</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 113,102 </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;"> Property, plant, and equipment </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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>77,870</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 77,546 </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 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>32,217</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 23,157 </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;"> Goodwill and intangible 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>252,228</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 253,601 </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;"> Deferred tax 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>412,333</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 418,570 </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;"> Other 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>73,578</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 79,974 </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="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" colspan="2" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                    <p style="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 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,934,115</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: 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 2,003,662 </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" colspan="2" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="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 style="margin-bottom: 0px; margin-top: 0px;"> <b>Liabilities and Shareholders' Equity</b> </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" colspan="2" style="vertical-align: bottom;padding-left: 0px;">
                    <p style="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 style="margin-bottom: 0px; margin-top: 0px;"> Accounts payable and 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;"> <b>$</b> </p>
                  </td>
                  <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0px;padding-right: 0px;width: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>107,855</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 136,483 </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;"> 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>54,455</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 35,743 </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 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>34,530</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 25,581 </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;"> 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>83,585</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 66,517 </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;"> Deferred tax 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>279,729</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 293,769 </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;"> Other 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>15,216</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 15,476 </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;"> Shareholders' equity </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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,358,745</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;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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 1,430,093 </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="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" colspan="2" style="vertical-align: bottom;border-bottom: solid black 1pt;padding-left: 0px;">
                    <p style="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 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,934,115</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: 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: 12%;">
                    <p style="text-align: right; list-style-position: inside;margin-bottom: 0px; margin-top: 0px;"> 2,003,662 </p>
                  </td>
                </tr>

            </table>
            <p> &#160; </p>
          </div>
          <div class="bw-release-contact">
            <h2 style="FONT-SIZE: 14pt;">Contacts</h2>
            <p> Susan Conway <br>
              Investor Relations <br>
              +1 508-650-3353 <br>
              Susan.conway@cognex.com </p>
          </div>
        </div>
      </div>
    </div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.2
<SEQUENCE>3
<FILENAME>a52710163ex99_2.htm
<DESCRIPTION>EXHIBIT 99.2
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Business Wire
         Document created using EDGARfilings PROfile 8.1.0.0
         Copyright 1995 - 2022 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.2</font><br>
  </div>
  <div> <br>
  </div>
  <div>
    <div class="bw-release">
      <h1> <b>Cognex Appoints New Board Member</b> </h1>
      <div class="bw-release-body">
        <div class="bw-release-table-js bw-release-story">
          <p>NATICK, Mass.--(BUSINESS WIRE)--May 5, 2022--Cognex Corporation (NASDAQ: CGNX) today announced the appointment of Dr. John T.C. Lee, President and Chief Executive Officer of MKS Instruments, Inc., to Cognex&#8217;s Board of Directors, effective
            immediately. Dr. Lee will serve on the Audit Committee and Compensation/Stock Option Committee. </p>
          <p> &#8220;We are pleased to welcome John to our board,&#8221; said Anthony Sun, Chairman of Cognex. &#8220;His executive perspective leading a large international technology company and extensive operating experience will strengthen our board. We look forward to
            his contributions in the years ahead.&#8221; </p>
          <p> Dr. Lee has been Chief Executive Officer and has served on the board of directors of MKS Instruments, Inc. (NASDAQ: MKSI), a global provider of technologies that enable advanced processes and improve productivity with nearly $3 billion in
            annual sales, since 2020. Prior to that, he held a series of progressive leadership roles after joining the company in 2007. Earlier in his career, Dr. Lee worked at Applied Materials, Inc., Lucent Technologies, Inc., and AT&amp;T Bell Labs. He
            has served as Vice Chair and a member of the Executive Committee of the Board of Directors of the Massachusetts High Technology Council since 2021. Dr. Lee holds a B.S. from Princeton University and both an M.S.C.E.P. and a Ph.D. from the
            Massachusetts Institute of Technology, all in Chemical Engineering. </p>
          <p> <b>About Cognex</b> </p>
          <p> Cognex Corporation designs, develops, manufactures, and markets a wide range of image-based products, all of which use artificial intelligence (AI) techniques that give them the human-like ability to make decisions on what they see. Cognex
            products include machine vision systems, machine vision sensors, and barcode readers that are used in factories and distribution centers around the world where they eliminate production and shipping errors. </p>
          <p> Cognex is the world's leader in the machine vision industry, having shipped more than 3 million image-based products, representing over $9 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 statements can be identified by use of the words &#8220;expects,&#8221; &#8220;anticipates,&#8221; &#8220;estimates,&#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&#8212;which may include statements regarding business and market trends; future financial performance;
              growth opportunities; and strategic plans&#8212;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 inability to attract and
              retain skilled employees and directors and maintain our unique corporate culture; (2) the failure to effectively manage our growth; (3) the impact of competitive pressures; and the other risks detailed in Cognex reports filed with the SEC,
              including its Form 10-K for the fiscal year ended December 31, 2021, and Form 10-Q for the fiscal quarter ended April 3, 2022. 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>
        <div class="bw-release-contact">
          <h2 style="FONT-SIZE: 14pt;">Contacts</h2>
          <p> Susan Conway <br>
            Investor Relations <br>
            +1 508-650-3353 <br>
            susan.conway@cognex.com </p>
        </div>
      </div>
    </div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>4
<FILENAME>cgnx-20220504.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 8.0.0.0 Broadridge-->
<xs:schema targetNamespace="http://cognex.com/20220504" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cgnx="http://cognex.com/20220504" 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-20220504_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-20220504_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>5
<FILENAME>cgnx-20220504_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 8.0.0.0 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>6
<FILENAME>cgnx-20220504_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 8.0.0.0 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-20220504.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>7
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140250647682152">
<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, 2022</div></th>
</tr>
<tr class="re">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">May  04,  2022<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ 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="top.Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="top.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="top.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="top.Show.toggleNext( this );">+ 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>8
<FILENAME>a52710163_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-20220504.xsd" xlink:type="simple"/>
    <context id="c20220504to20220504">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <startDate>2022-05-04</startDate>
            <endDate>2022-05-04</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="c20220504to20220504"
      id="Fact_a04de1abc4f942f48b704e889fe07a99">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="c20220504to20220504"
      id="Fact_efdc5ce7f7e745b6bb03628ca65777cd">0000851205</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="c20220504to20220504"
      id="Fact_15ea6029c9a94cf789e742fad2a1cd7a">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="c20220504to20220504"
      id="Fact_ce0b1954c0544e86b3b1541d28c4bdce">2022-05-04</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="c20220504to20220504"
      id="Fact_0f3e16f61f6f4bd9954fdb5d5e397b68">Cognex Corporation</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20220504to20220504"
      id="Fact_69e402cc91b24459bf3323220fba11dc">MA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="c20220504to20220504"
      id="Fact_895f2158b1fc41cebba5b91cc89968b7">001-34218</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20220504to20220504"
      id="Fact_3a0521a240aa47619ca535a43b7874c6">04-2713778</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20220504to20220504"
      id="Fact_c08056baf0984e33bb4b70cdce32418d">One Vision Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="c20220504to20220504"
      id="Fact_4d99e3c8337048f2808d00d8fcca0305">Natick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20220504to20220504"
      id="Fact_d91a63d8276e4d20a85f325ad21aaeb7">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20220504to20220504"
      id="Fact_45ef95e9d6344dfbb0a2f27513914a18">01760-2059</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20220504to20220504"
      id="Fact_a66a1c80eeca4114bba2e57b3f546280">508</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20220504to20220504"
      id="Fact_caaf8dd3fb3a44c0b092ef26803a27e3">650-3000</dei:LocalPhoneNumber>
    <dei:WrittenCommunications
      contextRef="c20220504to20220504"
      id="Fact_c9bdec2f980b4f409ea21092651cc110">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="c20220504to20220504"
      id="Fact_74eb7d7458c446c89f8148d5d2432e04">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="c20220504to20220504"
      id="Fact_cdfb14434221482f9355f3e9d857ee45">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="c20220504to20220504"
      id="Fact_17550377037c4cbbb8fde542f47e3d05">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="c20220504to20220504"
      id="Fact_c6dd2d5b397c44eca6640ef77510d1b9">Common Stock, par value $.002 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20220504to20220504"
      id="Fact_da83aec6e3e545cb843dbc7f5a3c4125">CGNX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20220504to20220504"
      id="Fact_af15ccbf919a452a8de04cc866de17ba">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20220504to20220504"
      id="Fact_02f2f46c66364dfb97bc1be07086e8e8">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>9
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M=>Y!L/?P&HT=S8\?M_P!4$L#!!0    (  N%I50D'INBK0   /@!   :
M>&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'.UD3T.@S ,A:\2Y0 U4*E#!4Q=
M6"LN$ 7S(Q(2Q:X*MR^% 9 Z=&&RGBU_[\E.GV@4=VZ@MO,D1FL&RF3+[.\
MI%NTBB[.XS!/:A>LXEF&!KS2O6H0DBBZ0=@S9)[NF:*<//Y#='7=:7PX_;(X
M\ \PO%WHJ45D*4H5&N1,PFBV-L%2XLM,EJ*H,AF**I9P6B#BR2!M:59]L$].
MM.=Y%S?W1:[-XPFNWPQP>'3^ 5!+ P04    "  +A:5499!YDAD!  #/ P
M$P   %M#;VYT96YT7U1Y<&5S72YX;6RMDTU.PS 0A:\295LE+BQ8H*8;8 M=
M< %C3QJK_I-G6M+;,T[:2J 2%85-K'C>O,^>EZS>CQ&PZ)WUV)0=47P4 E4'
M3F(=(GBNM"$Y2?R:MB)*M9-;$/?+Y8-0P1-XJBA[E.O5,[1R;ZEXZ7D;3?!-
MF<!B63R-PLQJ2AFC-4H2U\7!ZQ^4ZD2HN7/08&<B+EA0BJN$7/D=<.I[.T!*
M1D.QD8E>I6.5Z*U .EK >MKBRAE#VQH%.JB]XY8:8P*IL0,@9^O1=#%-)IXP
MC,^[V?S!9@K(RDT*$3FQ!'_'G2/)W55D(TADIJ]X(;+U[/M!3EN#OI'-X_T,
M:3?D@6)8YL_X>\87_QO.\1'"[K\_L;S63AI_YHOA/UY_ 5!+ 0(4 Q0    (
M  N%I50'04UB@0   +$    0              "  0    !D;V-0<F]P<R]A
M<' N>&UL4$L! A0#%     @ "X6E5%DH:6'N    *P(  !$
M ( !KP   &1O8U!R;W!S+V-O<F4N>&UL4$L! A0#%     @ "X6E5)E<G",0
M!@  G"<  !,              ( !S $  'AL+W1H96UE+W1H96UE,2YX;6Q0
M2P$"% ,4    "  +A:54,[BE^"\$  !$$   &               @($-"
M>&PO=V]R:W-H965T<R]S:&5E=#$N>&UL4$L! A0#%     @ "X6E5)^@&_"Q
M @  X@P   T              ( !<@P  'AL+W-T>6QE<RYX;6Q02P$"% ,4
M    "  +A:54EXJ[',     3 @  "P              @ %.#P  7W)E;',O
M+G)E;'-02P$"% ,4    "  +A:54'#AEZC\!   \ @  #P
M@ $W$   >&PO=V]R:V)O;VLN>&UL4$L! A0#%     @ "X6E5"0>FZ*M
M^ $  !H              ( !HQ$  'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QS4$L! A0#%     @ "X6E5&60>9(9 0  SP,  !,              ( !
MB!(  %M#;VYT96YT7U1Y<&5S72YX;6Q02P4&      D "0 ^ @  TA,

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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>11
<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>12
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.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="a52710163.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="a52710163.htm">a52710163.htm</File>
    <File>a52710163ex99_1.htm</File>
    <File>a52710163ex99_2.htm</File>
    <File>cgnx-20220504.xsd</File>
    <File>cgnx-20220504_lab.xml</File>
    <File>cgnx-20220504_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>14
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "a52710163.htm": {
   "axisCustom": 0,
   "axisStandard": 0,
   "contextCount": 1,
   "dts": {
    "inline": {
     "local": [
      "a52710163.htm"
     ]
    },
    "labelLink": {
     "local": [
      "cgnx-20220504_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cgnx-20220504_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "cgnx-20220504.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/20220504",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "a52710163.htm",
      "contextRef": "c20220504to20220504",
      "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",
     "role": "http://cognex.com/role/DocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "a52710163.htm",
      "contextRef": "c20220504to20220504",
      "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"
  },
  "r1": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r2": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r3": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r4": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "14a",
   "Subsection": "12"
  },
  "r5": {
   "Name": "Regulation 12B",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r6": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "425"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>15
<FILENAME>0001157523-22-000574-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001157523-22-000574-xbrl.zip
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
M%_ ]PU@^W_7?GQ&U,B.*>/DV!#1$5N:35S*D\G5N1E,#,,RR:K-D'$;0 \=
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
M$(9JG)AMD;^1\@V;PU>D_!,@Y> ;1\JJN5W^K;!\0X*\F%DM>J'?D^;$OP2
M?A[F[7IZ&W5;W3>J])>A[H ?9I34-&JW=:NPP_#E_]W0WS,&L2)-KS"Y_.39
M,+ECF%AJ3 HW1\,JXX$C%3+A;T\OIA5_6"&?V?5PL0;RC.J!O.!,^_8#.1<Q
MB[QI:2O<LW'O13.YSMIML3O]V8S?5[_[X5/%]I6J*Q5 !"A1O\)+;:.G:WK7
M%$^#P;_T]CB9-$YQD]Q)AZX]R?5\45[;]55ADV!3)LEXV0EWYI4;$!>;_3"K
M@=F=0SF"O?(_"A^S@X)5,KOQ[. V+2FF;6CJVY0F(Y<FXTM+D_$B:5+[%&4>
MN;!G D(F/"Z1;WLYD(G%.H @?T5!W,&ET66'\-N6:UVS]B"T.V?B6ALUE(L4
M>':$7&+*GJK-6.<TH43^R)5<!6*R%)Y#(;^_O?U $CJ*\<<6"*[C<-QZG2W)
MCK$== ]409[^O.O:*VR^3I3TS$S[Z[F?O9_[67<X[XO_O//=Y?NKL_M?;Y=_
M=/ZS*-[!JLXN=AL7?ZI:G224BQSYGMVM=NGC.LU$GK=H5AU'E'LA&9W%(MT[
MEI[C4.LH,8Q%[0_#E*@CQM1?V=.3+L6I1295'FWE#%<29>N+S:T[7&/9.(6O
M,;.U]C#P_D(M6_8[O'Y_=?$[&5[?WES?GMU?7E]]2;_@ZX[]3Q1FOC)J2X(5
MH_#G[OE1,>IX]MBWS]N\G1]UX@YX?3.?W(=\-*:3KY"X^;J24A[\WV74=R+
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
M4@N1H"L,!'"+16:AYO.#:C#4EI?DB35'$CHL$W187)\"SCA@X!B'N\$H?.=
M$'@4R@@S!:@WP&@+<!?ZRO^.@9AX5LX(4!V0%*8 3H' =^;YPK#>EWS$N\ 9
MQ0)K8*IS( (C!+ /)'0L<!^./89>#MX&(T\!E:[1^TCP)(?T,!5 'C T8-DB
M<504#)P0-X'HY/21Y2.!)MR=<6DD$I,)V./,8/8P/LI<( Z"<1'?D0,B5DH
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
M=8ZHXD[@:&]+UWOEIT9**E?!^E]U8D>MC8HB/"4H*)0PNJ;3R\8) I3B*$%
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
MOW*LI6F>'_3-2Y6V+N2;EZPR7^+P!U3Y:)KG!SV#%)'X$L>O'[@YU4L%?\\
M_0%2*4_V_ 1>/^H30HU(@N&N$Y%L[_B"1)L,8C;&G#2&V.,4+PG-BJ="<\Q1
M@G<\IGZ_^Z'[OHBHWM]QA&L*<PXL+-?\@C89W#&(8QBKZ42L3\NAF%'-F9)(
MFR85SS]"RT3D?)J"A1Q&G80\A#%$G-E^3WP0&1=/MW?\EW\FA#_VQXN<41 Q
MY2D5C(Q:5AN/4"1CV,)7#U25:<X]&G':3#),W:1'>4SAF.H1 QHI3_RCQE_Y
M(2T1X1I0[J\=K5!ZH'Y)259525(;^G%X9X'F(6 DT$<2&D,Z:G7%FQL?N(24
MRH55$W<1='J\^EZ3P#&/-A817Z4@,1BTVF0=#)M_'-8%WT"B,52RV/.8126[
MPY/R@M_"*]:C%6,L3 /C'[LNR3@N5<.%9+OO,=O[!](=3)#(!K,;D)EDUT%D
M>>P0_ZAV2*6!:;L'2?3 >Z*G?,]/UX06Z?'72 8G9(,9?9R0V,Z[TPA-!@TC
M?%7%*8DZB:3!H=3,>^\U<X52>+/)%I!:!5(V:VHX-OM*?64*3CP?CY:D?O">
MU#G836.>&EJB?8NMAN$&K$9W)=97[MV2<Q)"I2NIBH_>JV(<QSS17/[@NU[8
MLRJB!J>IP8KS50G-23FIP.I&*N#7-ZB OJ,"^HX*Z+\E!9A)/5$!_8,"/KU!
M!0P<%3!P5,#@+2G 3.J)"A@<%#!\*PJ8\(^W=$ZVN([_,LK&_C'*<^XK$SJ%
M^6,GJN?C<^M."[[8J]S2&24/:/\'V4KV*Z V"92@GNN@/K53Q%#RI!3A<QM0
ME_-^XUI['] AUIN @GC.O#V5DY:_\J"8]K\%*".?D9R!]&^TKFP(U0%MK!M
MS[FO2^L4!1A^E Y\[A"*9]:80F!AWF92?R;43/ZQ6Q-Z Y_Z2,6@S_TZ<5PJ
MG:T(MO?KJLRR'&6S?VPVI-# :'FT8M7GAMT?%#$&\81DV0;+SE)N4%N+D<6I
MP/A'LDLR#4Q7N%!T^]R)NR<IBA!#./G.7QLI JG!=35 UL8&\(_EQC0:*+:-
M5_SZW&>;42AD"?E.H#C=(<X1T=OELG2[;@;*0M4!_>/=.:T&_NO\*!WXW&TS
MXI_F^0929S54PNV:L,"]5T93BJ?IP^)-J<3GCMP-F5,@3NG?/V8+DEI.5M4@
M9*&L"/_H;TZD@7&K W4&Q__NVV4&:<*C_TK)EJVX=M< VULNM4AM#UZ!](]\
M]\2<=N$5CI08?&Z\J;-D5RCGNY6_(*!7_(KYPM^ ,L[@E5#^"< M(<=S>"4G
MBGB?^W!Z\/NCA,W46W!6\C6<[_17)W62 #0W2@(^M^#V-Z\)3X""=,I?57;?
MH/T14('1;OXEC'^TNR3C=,,ON5!T^]RONX?1AO+@>_W%7.1J;O0KS&J;7S+[
MQV]#"DU;_-)HQ:K/_3KM)=2@U&J3Q3!L_I%9%WP#D\901:/7?3@IOLM=M (X
M@9:3\7408Y'J$/^X=4C%<;'J'A33S^W(G8>E4EWS"^)?SO<6\4W\B_;G_P!0
M2P$"% ,4    "  +A:54.+KJ6 T:  !6D@  #0              @ $
M834R-S$P,38S+FAT;5!+ 0(4 Q0    (  N%I522]/B]Z2\  .*C P 3
M          "  3@:  !A-3(W,3 Q-C-E>#DY7S$N:'1M4$L! A0#%     @
M"X6E5,-!X(E-"0  I!0  !,              ( !4DH  &$U,C<Q,#$V,V5X
M.3E?,BYH=&U02P$"% ,4    "  +A:54V,EU;U,#  !M#P  $0
M    @ '04P  8V=N>"TR,#(R,#4P-"YX<V102P$"% ,4    "  +A:54\X0H
M!8$(  !R6   %0              @ %25P  8V=N>"TR,#(R,#4P-%]L86(N
M>&UL4$L! A0#%     @ "X6E5#?]&9#G!0  ZSX  !4              ( !
M!F   &-G;G@M,C R,C U,#1?<')E+GAM;%!+!08     !@ & ((!   @9@
"   !

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