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

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

	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>a52210223.htm
<DESCRIPTION>COGNEX CORPORATION 8-K
<TEXT>
<XBRL>
<html xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns: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/2019-01-31" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:country="http://xbrl.sec.gov/country/2017-01-31" xmlns:currency="http://xbrl.sec.gov/currency/2019-01-31" xmlns:naics="http://xbrl.sec.gov/naics/2017-01-31" xmlns:sic="http://xbrl.sec.gov/sic/2011-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2018-01-31" xmlns:exch="http://xbrl.sec.gov/exch/2019-01-31" xmlns:srt="http://fasb.org/srt/2019-01-31" xmlns:cgnx="http://cognex.com/20200427" xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <title></title>


  <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_cd3b5d75d5b24ca58e1e424bc75872fc" contextRef="c20200427to20200427" format="ixt:booleanfalse">false</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_f9b40fd474e548d39ce9dd690c229423" contextRef="c20200427to20200427">0000851205</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="cgnx-20200427.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="c20200427to20200427"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-04-27</xbrli:startDate><xbrli:endDate>2020-04-27</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_989a5160bcea426ab4bcb60de6848749" contextRef="c20200427to20200427">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_5552a04241f540eda6246a8d3419cf47" contextRef="c20200427to20200427" format="ixt:datemonthdayyearen">April 27, 2020</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%;" id="zbf2258f023c542f8be021f19d7151ace">


  <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_cb34a1ae699a4be1896d87b444507197" contextRef="c20200427to20200427">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><br />
      <div>
        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;" id="z0d935e802bcd4ddab492915d7b1c5f5f">


  <tr>

    <td style="width: 33.33%; text-align: center; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" id="Fact_3e484fcef0d3460fbdc4f090db3da06f" contextRef="c20200427to20200427" 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_f951c912b4eb4fc5a130e44a0269a779" contextRef="c20200427to20200427">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_d737c18773e248d9b5410f4b7460ef3e" contextRef="c20200427to20200427">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>
        <br />
        <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; color: #000000; width: 100%;" id="z08c595e8123c4e6689907a3f56e24c84">


  <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_2cd0566cbf394207bbe92842d373f0b9" contextRef="c20200427to20200427">One Vision Drive</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_092ed825e5c64290b3dda59c966fefc9" contextRef="c20200427to20200427">Natick</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_b7afcdce68ce4fe1bedfae305acc1338" contextRef="c20200427to20200427" 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_dae1d99c72954817a7c483c1ddbd4782" contextRef="c20200427to20200427">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>
        <br />
        <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_559e498d87c64a819c383a7ebd63b1bc" contextRef="c20200427to20200427">508</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_10fb842913e64008adaadfba7685e33a" contextRef="c20200427to20200427">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;"><ix:nonNumeric name="dei:EntityInformationFormerLegalOrRegisteredName" id="Fact_26a57f51830e45f7a3205c38c48c1462" contextRef="c20200427to20200427">N/A</ix:nonNumeric><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>&#160;
            <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" id="zd687a601f4ac464b9fc6c0411aaff7fc" 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_8e4371a37ca2401fbbe016bc687e9536" contextRef="c20200427to20200427" 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" id="z5ec47e4f263742bca3fb42fa06141545" 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_3cfaa6a0bdf74a3cb0c90b5a80571148" contextRef="c20200427to20200427" 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" id="z6bd2ea39557b44f5a95d841a563a9820" 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_aad568797fac4fa4a796365b93029252" contextRef="c20200427to20200427" 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" id="z8d2e74dc954b405e8ce6620449894cf8" 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_c7474350f4aa4627a5731c81e9339ec4" contextRef="c20200427to20200427" 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;" id="zc18b762928864317aa8b8cba817ac4aa">


  <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_780e23a592b84457b72c8652f314b9bf" contextRef="c20200427to20200427">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_181eff30cf51403d9d086ec1a45579d9" contextRef="c20200427to20200427">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_6c7c6eb1b2c946f6be5a00734096a02c" contextRef="c20200427to20200427" 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%;" id="zc8768322f714412aab1d5353c854d03f">


  <tr>

    <td style="width: 85%; text-align: right;">Emerging growth company&#160;&#160;&#160;&#160;&#160;&#160; <ix:nonNumeric name="dei:EntityEmergingGrowthCompany" id="Fact_a6c1ab60e57f47b3b41223a45da8fbac" contextRef="c20200427to20200427" 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>

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

            </div>

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

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

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

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

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

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

              <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On April 27, 2020, the Company announced that its Board of Directors declared a quarterly cash dividend of $0.055 per share. This
                dividend is payable on May 29, 2020 to all shareholders of record at the close of business on May 15, 2020.</div>

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

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

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

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

              <div style="font-size: 10pt;"><br />
              </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%;" id="z66875100fcca4d149bf8b9a880a2ba42">


  <tr>

    <td style="width: 12%;">
                        <div><span style="text-decoration: underline;">Exhibit No.</span></div>
                      </td>

    <td style="width: 88%;">
                        <div><span style="text-decoration: underline;">Description</span></div>
                      </td>

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 12%;">
                        <div><a href="a52210223ex99_1.htm">99.1</a></div>
                      </td>

    <td style="width: 88%;">
                        <div><a href="a52210223ex99_1.htm">News release, dated April 27, 2020, by Cognex Corporation (furnished herewith)</a></div>
                      </td>

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 12%;" rowspan="1">104</td>

    <td style="width: 88%;" rowspan="1">Cover Page Interactive Data File (the cover page XBRL tags are embedded within the Inline XBRL document)</td>

  </tr>


</table>
              </div>

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

              </div>

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

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

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


  <tr>

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

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 48%;">
                        <div>Dated: April 27, 2020</div>
                      </td>

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

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

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

  </tr>


</table>
              </div>

            </div>

          </div>

        </div>

      </div>

    </div>

  </div>

</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>a52210223ex99_1.htm
<DESCRIPTION>EXHIBIT 99.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: business wire
         Document created using EDGARfilings PROfile 6.5.1.0
         Copyright 1995 - 2020 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; text-align: left; color: #000000;">
  <div style="text-align: right;"><font style="font-weight: bold;">Exhibit 99.1</font><br>
  </div>
  <div style="text-align: right;"><font style="font-weight: bold;"> <br>
    </font></div>
  <div style="text-align: right;"><font style="font-weight: bold;"> <br>
    </font></div>
  <div style="text-align: left;">
    <div class="bw-release">
      <h1 style="font-family: 'Times New Roman',Times,serif; font-size: 14pt; font-weight: bold;"> </h1>
      <h1 style="font-family: 'Times New Roman',Times,serif; font-size: 14pt; font-weight: bold;">Cognex Reports Results for the First Quarter of 2020</h1>
      <div class="bw-release-body">
        <div class="bw-release-table-js bw-release-story">
          <p>NATICK, Mass.--(BUSINESS WIRE)--April 27, 2020--Cognex Corporation (NASDAQ: CGNX) today reported financial results for the first quarter of 2020. Table 1 below shows selected financial data for Q1-20 compared with Q1-19 and Q4-19. </p>
          <table cellspacing="0" id="zf2cc6a65f09742f4a74250188397f91e" style="margin-bottom: 10.0px;margin-left: 0px; margin-right: auto; font-size: 10pt;">

              <tr>
                <td rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;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>
                  <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="vertical-align: top;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><u>Revenue</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;text-align: center; list-style-position:inside;">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> &#160; </p>
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><u>Net Income</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> &#160; </p>
                  <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="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;text-align: center; list-style-position:inside;">
                  <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 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><u>Quarterly Comparisons</u></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <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 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Current quarter: Q1-20 </b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>$167,235</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>$20,477</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>$0.12</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>$0.11</b> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Prior year&#8217;s quarter: Q1-19 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $173,484 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $33,104 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $0.19 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $0.17 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Change: Q1-19 to Q1-20 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <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 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> (38%) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> (37%) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> (35%) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Prior quarter: Q4-19 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $169,769 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $80,327 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $0.46 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> $0.11 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Change: Q4-19 to Q1-20 </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> (1%) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> (75%) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> (74%) </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;text-align: center; list-style-position:inside;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> 0% </p>
                </td>
              </tr>

          </table>
          <p> *Non-GAAP net income per diluted share excludes tax adjustments. A reconciliation from GAAP to Non-GAAP is shown in Exhibit 2 of this news release. Notably, Cognex recorded tax adjustments in Q4-19 that together resulted in a discrete tax
            benefit of $61 million, or $0.35 per share. </p>
          <p> &#8220;Our Q1 results were in line with our guidance, but that is little comfort in these very challenging times,&#8221; said Dr. Robert J. Shillman, Founder and Chairman of Cognex. &#8220;The risks to our ongoing success have increased significantly due to
            the economic impact of the limitations on travel and other restrictive measures mandated by governments around the world in recent weeks. We are fortunate to have an experienced management team, a very strong balance sheet, and a unique
            corporate culture that will help us navigate through this difficult period and emerge in an even stronger position relative to our competitors, as we have done in prior downturns.&#8221; </p>
          <p> &#8220;Companies around the world, including ours, are facing significant disruptions in their businesses,&#8221; said Robert J. Willett, Chief Executive Officer of Cognex. &#8220;While some customers are accelerating activity, notably companies in China and
            in e-commerce fulfillment, many others are struggling to implement capital spending plans or are putting those investments on hold. Cognoids are adapting to this new reality and are moving quickly as they endeavor to support the evolving needs
            of our customers, manage our supply chain through disruption, and continue our product development efforts.&#8221; </p>
          <div> </div>
          <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 2020</b> </p>
          <ul style="list-style-type: disc;">
            <li> Revenue decreased by 4% from Q1-19 and 1% from Q4-19 as expected. The decline in revenue, both year-on-year and sequentially, was primarily due to continued weakness in sales to the automotive sector and other industrial end markets. The
              COVID-19 outbreak had a modest adverse impact on business in Q1-20, primarily near the end of the quarter. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Gross margin was 75% for Q1-20 compared with 73% for Q1-19 and 74% for Q4-19. The increase was mainly attributable to a favorable mix towards higher-margin products. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Research, Development &amp; Engineering (RD&amp;E) expenses increased by 19% from Q1-19 and 9% from Q4-19. The increase in RD&amp;E year-on-year reflects incremental costs associated with Sualab Co., Ltd. (Sualab), which Cognex acquired in
              Q4-19. The increase in RD&amp;E on a sequential basis is due, in part, to a reset of annual incentive compensation plans at the beginning of the year with relevant performance goals for 2020 and higher stock-based compensation expense, both
              of which also contributed to the year-on-year increase. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Selling, General &amp; Administrative (SG&amp;A) expenses increased by 3% from Q1-19 and decreased by 7% from Q4-19. SG&amp;A increased year-on-year due to investments to support the company&#8217;s strategic priorities, higher incentive
              compensation costs as described above, and higher stock-based compensation expense. These increases were partially offset by lower travel and entertainment costs, material and supplies, and contract labor. On a sequential basis, SG&amp;A
              decreased due to lower travel and entertainment costs and a true-up of accruals for incentive compensation at year end that did not repeat. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> The effective tax rate was 11% in Q1-20, 7% in Q1-19, and (250)% in Q4-19. Excluding discrete tax adjustments, the tax rate was 17%, 15%, and 18%, respectively (tax adjustments are summarized in Exhibit 2). Notably, Cognex recorded
              discrete tax items in Q4-19 that together resulted in a tax benefit of $61 million. The two largest components of this tax benefit related to changes to the company&#8217;s corporate tax structure due to government legislation and movement of
              acquired intellectual property between different tax jurisdictions. </li>
          </ul>
          <div> </div>
          <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; March 29, 2020</b> </p>
          <ul style="list-style-type: disc;">
            <li> Cognex&#8217;s financial position as of March 29, 2020 continued to be strong, with $845 million in cash and investments and no debt. In Q1-20, Cognex generated approximately $65 million in cash from operations, and paid out $51 million to
              repurchase its common stock and nearly $10 million in dividends to shareholders. Cognex intends to continue to repurchase shares of its common stock, subject to market conditions and other relevant factors. </li>
          </ul>
          <p> <b>Financial Outlook &#8211; Q2 2020</b> </p>
          <ul style="list-style-type: disc;">
            <li> The impact of the COVID-19 outbreak has expanded and accelerated into Q2-20 as Cognex has noted lower demand for its products in certain industries, additional disruptions to the supply chain, longer customer delivery times, higher
              delivery costs, and further shutdowns of customer facilities. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> Given the degree of global economic uncertainty, Cognex is providing less specific guidance for Q2-20. In that regard, Cognex expects to report a decline in both revenue and earnings per share, excluding discrete tax items, for Q2-20 on
              both a year-on-year and sequential basis. In addition, gross margin for Q2-20 is expected to be in the mid-70% range and lower than the gross margin reported for Q1-20. Operating expenses are expected to decline by greater than 10% from Q1-20
              as a result of lower discretionary spending. The effective tax rate is expected to be 17%, excluding discrete tax items. </li>
          </ul>
          <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 the following: (1) stock-based compensation expense for
              calculating non-GAAP adjusted operating income and net income from continuing operations (because these expenses have no current effect on cash or the future uses of cash, and they fluctuate because of changes in Cognex&#8217;s stock price), and
              (2) certain one-time discrete events, such as tax adjustments (because these costs are outside of Cognex&#8217;s normal business operations). Cognex also uses results on a constant-currency basis as one measure to evaluate performance.
              Constant-currency information compares results between periods as if the exchange rates had remained constant period-over-period. Cognex does not intend for non-GAAP financial measures to be considered in isolation, or as a substitute for
              financial information provided in accordance with GAAP. </li>
          </ul>
          <ul style="list-style-type: disc;">
            <li> The tax effect of items identified in the reconciliation is estimated 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, the tax effect is estimated by applying the relevant specific tax rate or tax treatment, rather than the effective tax rate. </li>
          </ul>
          <div> </div>
          <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>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 Thursday, April 30, 2020. 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 13700597. </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 2 million image-based products, representing over $7 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 forward-looking statements, which include statements regarding business and market trends, future
              financial performance, the expected impact of the COVID-19 outbreak on Cognex&#8217;s business and results of operation, customer order rates and timing of related revenue, future product mix, research and development activities, investments,
              strategic 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 impact, duration, and severity of the COVID-19 outbreak, (2) current and future conditions in the global economy, including the impact of the COVID-19 outbreak and the imposition of tariffs or export controls; (3) the loss of, or
              curtailment of purchases by, a large customer; (4) the reliance on revenue from the consumer electronics or automotive industries; (5) the inability to penetrate the logistics industry and other new markets; (6) the inability to achieve
              significant international revenue; (7) fluctuations in foreign currency exchange rates and the use of derivative instruments; (8) information security breaches or business system disruptions; (9) the inability to attract and retain skilled
              employees; (10) the failure to effectively manage our growth; (11) the reliance upon key suppliers to manufacture and deliver critical components for our products; (12) the failure to effectively manage product transitions or accurately
              forecast customer demand; (13) the inability to design and manufacture high-quality products; (14) the technological obsolescence of current products and the inability to develop new products; (15) the failure to properly manage the
              distribution of products and services; (16) the inability to protect our proprietary technology and intellectual property; (17) our involvement in time-consuming and costly litigation; (18) the impact of competitive pressures; (19) the
              challenges in integrating and achieving expected results from acquired businesses, including the recent acquisition of Sualab; (20) potential impairment charges with respect to our investments or for acquired intangible assets or goodwill;
              and (21) exposure to additional tax liabilities; and the other risks detailed in Cognex reports filed with the SEC, including its Form 10-K for the fiscal year ended December 31, 2019 and Form 10-Q for the fiscal quarter ended March 29, 2020.
              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>
          <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="zb5627143971844eeba60ea0207873e7e" style="margin-bottom: 10.0px;margin-left: 0px; margin-right: auto; font-size: 10pt;">

              <tr>
                <td rowspan="1" colspan="3" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b><u>Exhibit 1</u></b> </p>
                </td>
                <td rowspan="1" colspan="9" style="padding-left: 0.0px;">&#160;</td>
              </tr>
              <tr>
                <td rowspan="1" colspan="12" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>COGNEX CORPORATION</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>Statements of Operations</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>(Unaudited)</b> </p>
                  <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="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" 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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>March 29, <br>
                      2020</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> December 31, <br>
                    2019 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> March 31, <br>
                    2019 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Revenue </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>167,235</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 169,769 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 173,484 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cost of revenue (1) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>41,200</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 44,871 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 46,284 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Gross margin </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>126,035</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 124,898 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 127,200 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>75</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>74</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>73</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Research, development, and engineering </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;"> expenses (1) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>35,946</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 32,991 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 30,242 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>21</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>19</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>17</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Selling, general, and administrative expenses (1) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>69,138</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 74,300 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 66,811 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </p>
                </td>
                <td rowspan="1" style="border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>41</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>44</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>39</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="border-bottom: solid black 1.0pt;padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating income </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,951</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 17,607 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 30,147 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <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: 0.0px;padding-right: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>10</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>17</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Foreign currency gain (loss) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>(3,003</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b>)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 894 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Investment and other income </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>5,046</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 4,420 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 5,832 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income before income tax expense </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>22,994</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 22,921 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 35,731 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense (benefit) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>2,517</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (57,406 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 2,627 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,477</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 80,327 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 33,104 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue</i> </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>12</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>47</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>19</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Net income per weighted-average common and common-equivalent share: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 25.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.12</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.47 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.19 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 25.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.12</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.46 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.19 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Weighted-average common and common-equivalent shares outstanding: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Basic </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>172,408</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 171,607 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 171,098 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>175,602</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 175,500 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 175,607 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.055</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.055 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.050 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>4.92</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 4.90 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 5.03 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>7.73</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 7.86 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 6.93 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> (1) Amounts include stock-based compensation expense, as follows: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cost of revenue </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>354</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 390 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 451 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Research, development, and engineering </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>5,366</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 4,115 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 4,467 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 25.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Selling, general, and administrative </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>9,070</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 7,642 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 7,363 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.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: 25.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>14,790</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 12,147 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 12,281 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">&#160;</td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>

          </table>
          <div> </div>
          <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="zd30746b4afef45bea07ae5570fe8aff2" style="margin-bottom: 10.0px;margin-left: 0px; margin-right: auto; font-size: 10pt;">

              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;"><b><u>Exhibit 2</u></b></td>
                <td rowspan="1" style="padding-left: 0.0px;" colspan="2"><br>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;" colspan="4"><br>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;" colspan="4"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;"><br>
                </td>
              </tr>
              <tr>
                <td rowspan="1" colspan="13" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>COGNEX CORPORATION</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>Reconciliation of Selected Items from GAAP to Non-GAAP</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>(Unaudited)</b> </p>
                  <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="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="11">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>Three-months Ended</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="2">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>March 29, <br>
                      2020</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> December 31, <br>
                    2019 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> March 31, <br>
                    2019 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Adjustment for stock option expense and tax benefit for stock option exercises</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="4"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating income (GAAP) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,951</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 17,607 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 30,147 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Stock-based compensation expense </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>14,790</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 12,147 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 12,281 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating income (Non-GAAP) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>35,741</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 29,754 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 42,428 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 40.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue (Non-GAAP)</i> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>21</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>24</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Net income (GAAP) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>20,477</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 80,327 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 33,104 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Stock-based compensation expense </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>14,790</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 12,147 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 12,281 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Tax effect on stock-based compensation expense </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>(2,564</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b>)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (1,917 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (2,222 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Discrete tax benefit related to employee stock-based compensation </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>(1,680</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b>)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (1,925 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (2,730 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>31,023</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 88,632 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 40,433 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 40.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue (Non-GAAP)</i> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>19</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>52</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.12</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.46 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.19 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Per share impact of non-GAAP adjustments identified above </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.06</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.05 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.04 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.18</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.51 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.23 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted weighted-average common and common-equivalent shares outstanding (GAAP) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>175,602</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 175,500 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 175,607 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="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 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="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 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="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 1.0pt;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Exclusion of tax adjustments</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <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;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>22,994</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 22,921 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 35,731 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense (benefit) (GAAP) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>2,517</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (57,406 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 2,627 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 40.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Effective tax rate (GAAP)</i> </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>11</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>(250</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>)%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <i>7</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Tax adjustments: </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Discrete tax benefit related to employee stock options </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,680</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 1,925 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 2,730 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Discrete tax expense related to migration of acquired IP </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>&#8212;</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (28,528 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Discrete tax benefit related to change in tax structure </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>&#8212;</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 87,500 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Other discrete tax events </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>(242</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b>)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 602 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 3 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income tax expense excluding tax adjustments (Non-GAAP) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>3,955</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 4,093 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 5,360 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 40.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Effective tax rate (Non-GAAP)</i> </p>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;padding-right: 0.0px;vertical-align: bottom;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>17</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;vertical-align: bottom;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Net income excluding tax adjustments (Non-GAAP) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>19,039</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 18,828 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 30,371 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 40.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <i>Percentage of revenue (Non-GAAP)</i> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b><i>11</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b><i>%</i></b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <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="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <i>%</i> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.12</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.46 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.19 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 15.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Per share impact of non-GAAP adjustments identified above </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>(0.01</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> <b>)</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (0.35 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> (0.02 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;border-bottom: solid black 1.0pt;">
                  <p style="text-align: left;margin-bottom: 0px; margin-top: 0px;"> ) </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>0.11</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.11 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 0.17 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="2">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-right: solid black 1.0pt;padding-left: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.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 1.0pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Diluted weighted-average common and common-equivalent shares outstanding (GAAP) </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>175,602</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 175,500 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 175,607 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;border-bottom: double black 2.25pt;border-right: solid black 1.0pt;padding-left: 0.0px;padding-right: 0.0px;"><br>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;border-left: solid black 1.0pt;"><br>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;"><br>
                </td>
                <td rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="2"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;border-bottom: solid black 1.0pt;border-right: solid black 1.0pt;"><br>
                </td>
                <td colspan="1" rowspan="1" style="padding-left: 0.0px;">
                  <p> &#160; </p>
                </td>
              </tr>

          </table>
          <div> </div>
          <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="z180fdb43e0b04c2ba1c039166ce476af" style="margin-bottom: 10.0px;margin-left: 0px; margin-right: auto; font-size: 10pt;">

              <tr>
                <td rowspan="1" colspan="8" style="padding-left: 0.0px;"><b><u>Exhibit 3</u></b></td>
              </tr>
              <tr>
                <td rowspan="1" colspan="8" style="padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>COGNEX CORPORATION</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>Balance Sheets</b> </p>
                  <p style="margin-bottom: 0px; margin-top: 0px;text-align: center; list-style-position:inside;"> <b>(Unaudited)</b> </p>
                  <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="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;white-space: nowrap;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>March 29, 2020</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;white-space: nowrap;" colspan="3">
                  <p style="text-align: center; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> December 31, 2019 </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Assets</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Cash and investments </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>845,396</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 845,353 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Accounts receivable </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>100,463</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 103,447 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Inventories </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>54,985</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 60,261 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Property, plant, and equipment </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>86,702</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 89,443 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating lease assets </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>17,346</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 17,522 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Goodwill and intangible assets </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>280,316</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 282,935 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Deferred tax assets </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>450,280</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 449,519 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Other assets </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>49,589</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 37,455 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,885,077</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 1,885,935 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> <b>Liabilities and Shareholders' Equity</b> </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>80,150</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 70,065 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Deferred revenue and customer deposits </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>26,252</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 14,432 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Operating lease liabilities </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>17,966</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 17,973 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Income taxes </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>99,498</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 93,009 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Deferred tax liabilities </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>330,532</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 332,344 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Other liabilities </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>3,186</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 2,402 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> Shareholders' equity </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,327,493</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;padding-right: 0.0px;" colspan="2">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 1,355,710 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;padding-left: 0.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: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;border-bottom: solid black 1.0pt;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td rowspan="1" style="vertical-align: bottom;border-bottom: solid black 1.0pt;padding-left: 0.0px;" colspan="3">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>
              <tr>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> <b>1,885,077</b> </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: bottom;padding-left: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <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: 0.0px;padding-right: 0.0px;">
                  <p style="text-align: right; list-style-position:inside;margin-bottom: 0px; margin-top: 0px;"> 1,885,935 </p>
                </td>
                <td colspan="1" rowspan="1" style="vertical-align: top;border-bottom: double black 2.25pt;padding-left: 0.0px;">
                  <p style="margin-bottom: 0px; margin-top: 0px;"> &#160; </p>
                </td>
              </tr>

          </table>
          <p> &#160; </p>
        </div>
        <div class="bw-release-contact">
          <h2 style="FONT-SIZE: 14pt;">Contacts</h2>
          <p> <b>Contacts: </b><br>
            Susan Conway <br>
            Investor Relations <br>
            +1 508-650-3353 <br>
            Susan.conway@cognex.com </p>
        </div>
      </div>
    </div>
    <font style="font-weight: bold;"> </font></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>cgnx-20200427.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 6.2.0.0 Broadridge-->
<xs:schema targetNamespace="http://cognex.com/20200427" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cgnx="http://cognex.com/20200427" 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/2019-01-31" xmlns:srt-types="http://fasb.org/srt-types/2019-01-31" xmlns:num="http://www.xbrl.org/dtr/type/numeric" xmlns:nonnum="http://www.xbrl.org/dtr/type/non-numeric" xmlns:dei="http://xbrl.sec.gov/dei/2019-01-31">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="cgnx-20200427_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-20200427_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/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/dei/2019-01-31" schemaLocation="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/country/2017-01-31" schemaLocation="https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/currency/2019-01-31" schemaLocation="https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/exch/2019-01-31" schemaLocation="https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/naics/2017-01-31" schemaLocation="https://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/sic/2011-01-31" schemaLocation="https://xbrl.sec.gov/sic/2011/sic-2011-01-31.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/2018-01-31" schemaLocation="https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd" />
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xs:import namespace="http://www.xbrl.org/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://www.xbrl.org/dtr/type/non-numeric" schemaLocation="http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd" />
  <xs:import namespace="http://www.xbrl.org/dtr/type/numeric" schemaLocation="http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd" />
  <xs:import namespace="http://fasb.org/us-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-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/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd" />
  <xs:import namespace="http://fasb.org/srt-types/2019-01-31" schemaLocation="http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd" />
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>cgnx-20200427_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 6.2.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.xsd#dei_EntityInformationFormerLegalOrRegisteredName" xlink:label="EntityInformationFormerLegalOrRegisteredName" xlink:title="EntityInformationFormerLegalOrRegisteredName" />
    <link:label xlink:type="resource" xlink:label="dei_EntityInformationFormerLegalOrRegisteredName_lbl" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityInformationFormerLegalOrRegisteredName_lbl" xml:lang="en-US" id="dei_EntityInformationFormerLegalOrRegisteredName_lbl">Entity Information, Former Legal or Registered Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityInformationFormerLegalOrRegisteredName" xlink:to="dei_EntityInformationFormerLegalOrRegisteredName_lbl" xlink:title="label: EntityInformationFormerLegalOrRegisteredName to dei_EntityInformationFormerLegalOrRegisteredName_lbl" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>5
<FILENAME>cgnx-20200427_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by EDGARfilings PROfile 6.2.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-20200427.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/2019/dei-2019-01-31.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.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/2019/dei-2019-01-31.xsd#dei_EntityInformationFormerLegalOrRegisteredName" xlink:label="EntityInformationFormerLegalOrRegisteredName" xlink:title="EntityInformationFormerLegalOrRegisteredName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityInformationFormerLegalOrRegisteredName" xlink:title="presentation: CoverAbstract to EntityInformationFormerLegalOrRegisteredName" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="17.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="18.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="19.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="20.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="21.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="22.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="23.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="24.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="25.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="26.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="27.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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="28.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>6
<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>8
<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.20.1</span><table class="report" border="0" cellspacing="2" id="idp6608565552">
<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>Apr. 27, 2020</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 " 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 " 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 " 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">Apr. 27,  2020<span></span>
</td>
</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_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Cognex Corporation<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="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 " 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 " 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 " 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 " 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 " 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 " 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 " 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 " 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 " style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_dei_EntityInformationFormerLegalOrRegisteredName', window );">Entity Information, Former Legal or Registered Name</a></td>
<td class="text">N/A<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl " 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="re">
<td class="pl " 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="ro">
<td class="pl " 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="re">
<td class="pl " 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="ro">
<td class="pl " 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="re">
<td class="pl " 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="ro">
<td class="pl " 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="re">
<td class="pl " 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="ro">
<td class="pl " 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>The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-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_EntityInformationFormerLegalOrRegisteredName">
<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>Former Legal or Registered Name of an 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_EntityInformationFormerLegalOrRegisteredName</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_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>ZIP
<SEQUENCE>9
<FILENAME>0001157523-20-000577-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001157523-20-000577-xbrl.zip
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
M&<)I7";!LIHU]"2V79/:+J<6!M%@3!JFPSB(BO2)[3PAKE;; QD%K<X!;CJ
MG?>68QKOMK68+\!I.LV3%C9OJ7$U(FKJ^EQ[5RX&L+2^&FA2V[9Q-05MQA8I
M@3)?W*ZA=FGLF2X:?KA"E@U6V"*M9G!K/K9Z(XML7KW;9"X?QFS%O_6 6IC:
M[Q$^B>38E3BP'-O%%N/4#ABV FHX)C8))F_P^>/!YS6$.!QT+[[]#/X3.%%1
M_1DN#RAUJ,%$X&)J<V9PWV"$>@9Q31,_)2?YAIUM2_2P$A",%$NQ"IPFIEW3
MJF'GPOZV.7)BHU?4? //UP)/APE+4MLG1&TO"@CUB?"P28EC4]^SC#?P_/'
M\S*5RN]4+S_H_<HJK$PO@F A(4BI(.!L^FX 04E ,75]QW8(\VW#\BVR13KF
M#42W!E%8D2ZO+<E&3]3$HFOML?WM(+6H^P:JKP6J'F"JBP7W"6;8(-+CTG$L
M V/?\S$/O#=0_>%!]2S+IC)MAE;N8A?;Q @PI=BQ7$I<V^2>*7W;]B&8>8/6
M;PJMMNSB/;X=M)9U?S1H?;GLZ8MDTA\/UJJHGJ!)YT^=%A9\_C*.MJ5EYAL6
M>;!FI@_]K].F#>V_T6/+!=.P\.RH4-_%QTSZ7FG2N.DQUP'/S_,<;)LNI1[S
M.*-J3PD'''MM,V);+9MY5]^_VGIKSXUZR[UX28F/"A.]2RNU_01*F:C/0+WJ
MD"CAB=]WS,[<%WHB+3OA9DKU#HGKV1@:[F6MVSO?>+F1E^?EJRM:,&5EC0"X
M[D8AW'E MV?S>*,=VI':+CL.!4O6I@ +=)^9%M.*6W.P7,^0EDV);S$/8^(R
MU^*>0ZS -C'SV18O<1PI7P[X>YTG_,L!"$V*OM)H*M'?>H9AH8EZOW]$T]7S
M%78JXZ\BIVM87JITH='US4/@NP:!;?" F-BPA2\,SY'<I)@0UQ?;[$\=?CS_
MXP=DYC/DNG(ZE[;).-SECF0FL[B/G<!ADE##<&UL^ XUK$>>&:*#!P4HU5Y;
M]1[R^?'UR?'_%K*//M/TB\S1IT_#%U^>G?B\+^"</:O]4WWN'3K/[5,YBX4*
MA"1B,\3USA3P +^ 59'Z]1SE#=?VB(09HC&"*$HYB;?H-DWN\I&*IR9JWPC-
MD)!!&!=O4A;/2PU2.=5+#TN+5]IMM*?TSGVGGYE6E6$8D/R)>@]3;3XJ@C*+
M=:V&OIK>DY]WJ@*TAW:U;GN[S"SM(M+Y'G<YEG&!YSJ>;5F!:V)L6I0R4Q";
MV-PC6!AVT!87K%/Y]<Y%&P1[9 F"=10#'#UM%MABD=?_WO1Z1-7U1]WSL.BX
MGD1WP @RQY#$#;#+; 8L L<$$T&]@-&G@/6VF9[-T-NX;9$T[S%?E/TE!6FM
MNHZ&#>#?='<=\.](HU\(@<^"-<BIMI,WPG"Y%["&P", 61E)G@/(QHE.84PS
MJ6L!T>7V0+5#.-1IC>(H)R5">JQHI@:_"_-1$W<5AL<P(ZB<RJ]A!ET!FM.8
MJR>ZE.LC^E1[=<2CH*G(BHV!HBVE8N_1>4JE#M.]MCV$Q9$)E>(5NP!__LEW
M,6Y=N.;[+7=K2\PC25/MC(WF28\\F52X5]ZIPK(69*YW.*&WLLM22;]T:0 F
M9H!H=$=G6?,+&Z.T:E<&@*7V&1"+H@;:!@A#9*A+%S(XHS*8M'2[S4?>52E_
M\ 8>R[FULW_A%S*:CM YR^4863W#V@:V&X#\2F;3*-=OZER 6I3)7Y!D]&$N
MY,,$]+ X*:-%W);STENX6=OTM0/$N8C1XJ$U!VCU1!"TIY3SYY\\RS+>#2NS
M"%?FNWWP]K(IZ#95H* 2J""6"FJ2ZDB?$+CY !!IR5^%-:K3/Z?Z) U48!($
M$;P!="R_H*VGCS^JA@!'+9BF<9B-U/#*QQN%+,R1[_=,$/E4YDG1('QXQ4"Y
MG',1F?M[0WT\: Z+KRF&:M6^ZOHK/ 5 %6/0/*=<C5N,<Z"B_"C26,LD^+<
MX:)B6!!&4I3LTO,&&)PDF=1"-H=!;]5K765$DQM[ *.FY?AA?7A8 B9KK[W#
M+; ;\_,,%2L4EI<;P5OW*U8N>+)2VDP-F"% _:A\W4V-<%MNT5YX Q]%T'0*
M<*CHR*9\5!+2ZG._AE+M$I2\GF$^$90N=)1UJD["RGY,S%&2-:P"Q#@&:\25
M!(]H@1^_)B!22IQ.PA04)DE5#,DCFFK@*3$D J>(9B,$Q*L3,G7]OQD]@Y"'
M/)P"A+!!L>9M  TF=*;#*)#1SW0V!Q^E3TK'=#\C6%B99L4Q02#50$:N)\$C
MT&QUFTTSB'&5$A3=F*3$L!]5OOVGR_>#:=4OD*O'KX7-+>'VFPK]2P3K>V+_
M::Q9_?VCL*3!W?U^LQ>.X[D$;@2<4RQ,[+/ 8S[U/(-:C&*K.11NCUC792Y:
M0VYK?<A=/)"OQTQZR82")VUQ!X6-5\?/JVQ'Z<F<)[VEDSA;NM\4I#?F6KP7
MI?E$9CP-)X7K_3R:MT@K[&R1MLF*[([=SQS]6S+ND*+B1&]*P)DV+,N6][[_
M+[,WRL>=(^7W'_;IMY/CM=2=UZ*C R2T.[[L!8%[WA1\/40Y*MI0>9G]9\US
METN(TN3N,0_+UG+\<9V]VK1, [_0G(;)5_!,+U44=*:> U*NSP,YH3E%^E0O
M'7AS74NECI#ZS@&4T]M,'2B!Y)A)H>)F)1,01JG*9_K[18J*HCP1=_^I7%N]
MUYY;W<:)>)%\VC,R:M]S3NWQ;MC.SJ&^/OMX?GSS]ZOET_&;27K.Z]V=#1GW
M77J@]=.VB_SYGU,(+XOH8[M'B <J[T3'.GEUT)2$%U,=E4XS'<V&6944*W(S
M&<P%"I)X55)5U,ODB$:!L@JJ9^T(E2V4'9C&T(GNGT[S49+"U,2K!Y=_<;_>
M,YG)/$?MJ+:P%,3GIA<0"PLF7%\Z_FOX]?@5G+8UYT5MXW<-+SZ>G_Z!AA=7
MEQ=7QS>U+Z5X-"4[,M)_ 29^GW[W&^-VR3CU#01B@):_%N#;\''[./O7V:"?
M]<$OG4;H)A&W(SK^3N/MOX#X+G+QC7V/9-^UC,,D1?\(N427J<STEU_IY/!P
M%,J@ECN^T*<HIKOA\?,CH::[FX^\6_I&FL9O$#GLJ^_(.])?FI>/(_CP_U!+
M P04    " #=@)M04"P-?IPS   K^@, $P   &$U,C(Q,#(R,V5X.3E?,2YH
M=&WM?5EWV\;RY_N<,]^A1XGOE?X#R@"XR[+.T)+L:.)(BJQ,[LP;"#9%Q"#
M8-&23S]5W0T07"21,@D"9/DAH4 0Z*[ZU5[=?3R(AN[)?_]OC!T/N-43G^!S
MY$0N/SE^+_^O+OZ/2H5]=6SNA;S'(O^(=>/0\7@8L@<GX/(F\>_,M^,A]R)F
M!]R*X&:\[XZ=GWWIW/0=%SZ'[/KF"CYRUCBL'QJ'>N;7I_[H*7#N!A$SVNTZ
MJS!3-W7V*?"M7N#T[CBK5.2 WZL1'W?]WA/KWMF^ZP<?]W[JBW][+(R>7/YQ
MK^][4:5O#1WWZ8C]^]89\I!=\@=VXP\M[]\:$U<T%O+ Z7]@XN[0^8<?,4,?
M11]8Q!^CBN4Z=]X1<WD?KHCW'+&?=/'OPYX<3<^Y3]Z8_8F8"=QSC ^>&-(#
MQZ^ BK[;@QO.'P=.UXE8NWUH'+_'.TZ.NX&:*3Q\-6]AR3/QJ?(EFWVX(.E>
M\BN\R7:M,/RXUWVH!-SE5LB3;Q&CQH)<E4R=P],:\G3^X-\/C%S>=.K?>?R1
MW?"1'T0A_#^,7?A_WP]8-.#LLQ.$$?L]MH*(!\SO"_Q/#FXNF2HH!F-:/7M;
M9'5=7ODK9)EK8>0'$[^%7X].+CNW%Z>_:NPW>,1AI;+_Z8]O%Y?GW[ZQ/R]N
MS@\JE<XH<%QF-C4QQ$I%3>S4#V!F5N3X'MN_['P[Z_Q^Q$Z_7/[G +1&SWIB
M@9@YZ(6^XUF>[5@N7)HD0E\0X>])(ARR6QP[,UB7N_X#"P?^0PB"ZW)[\FD]
M*[+$HWXW*J [;'\XL@*XX\&)!GC-:#/+Z['?:_#I$!@_FIRYH!"SN>N&(\L&
M=?5Q3]]C3N_CWC]]T[8;5J/>U]O-FMFO6?#?NFZT6M5VL]\V>*IUAE9PYWC
MDRCRAZA+#O71XP=U%4%_Q/ "4U<"B1 KCOQ9'33)&,8F_\(!!R?3U_!JCP5
MH)'E?=PSTH&-K%X/II2,00RKZP<]'J2##7W7Z;&N:]G?&>AF&$%68L$  $\^
M,-<)893XT,K(#QUD]Y'CA4Z/?]A#'2E?7)\>?(*N9PB5)4KDC^2%95^/FNCD
M.#Y1<#E^'X,FZI[,<#JOT>R?^:YK!2%S/$"W'X> /C Y_-'FHXB- .'A  #*
MK*$?>U%X\,Q P1[W9B[#Q5GN/X^(E#& B#GHN.=!Y-B6F\P/)OTZ.M0-$E'/
M?JT@/OO]/$3NG8QMR:LD6/O,EAKZTO#8!"+_]9/1T#]L3"!6^OIEGK?D4!=\
MO=0V-_R>>S%_1=OL'H+70_.R('C#LU\GX"]YQ"X\\*X(\SL!.N#ZF.5LOH&6
M_]"E.7/<&-WRE^X#$'U#SX?PDQL#?:_RI=.Y?I$M:^+R?[V%S=OJWVY.;:O4
M@OL$D3H&QD[H>V'Y);" ;@A1C:A&5"L=U7;3Y"QN0T[C(,#RCDK/'JDTZUK,
MQUJ F%Q3/Y(7I_DD7UF.P "8\K/1:&IFM4Y<V"@73%VK-9O$A(TR03\T3&+!
MIEE@4*BW0KM['3A^P)ZX%?SKIY9I-#^$$_;7:!/8-P+VGXUF5:NU:D3^S9"_
M6M4,G:B_(>J#FB?%LSG:-\F\KLB\G@XL[XXGIC3RTYB6H)T_M/=K[Y;J@2'2
MKX[TU1;1?F.T;Q+M-T;[^G*T)VOZ:K ZCD]K%)]N+CYMM+5F@\B_(?*W=*UJ
M+N6G$_57&2/5&D3[C<6G!EG45<>G-8I/-P[M?8/\]$V1OKFDGTZT7R'M*2^S
M*=KK[W[0E&;_@J]Q9=S$'<>C$_9?:7>PQR/FR Y@[/+MJ2Y?N4R-/]INW.,A
MBZQ'9O7^BL,(EWN'AZS# F[[GNVXCES_V0_\(1-/!).5/MT)Q=I-#]?#)>N>
M35SE&0W@*X\_A$RM3#V$'^%8GS2F5I?B"P /O>F7X[.4<1Q8$;SNCD<#&+I<
M60KWP_<63"2T QYQ_/4D?;K<XWT8!XSBYX;!AH[KP@0T!G$L>#+5^GB9WIP5
MHR-L,VN9IO[A*L95I^EZU@<.]((WNX['Y?)3'VZXBYV>Y=E<8]TXDN.%>;M.
M%.&Z4W_8]X-(KA7D(6< VR=F#RS7Y=X=+J2/Q))C\4+C PLMD(>SX)#=^%T
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
MUH:^_N3(XK1[B]=%:,Y>7*$K]J86@U<<M3?P954CFQ2W5</CC?T891T&,:6
MP]ABIKQF&/(9YG.*?46Z.OL7?&V!>9RXX[CGW&,DA/^;OIX,^[?.S9>+R\JG
MJ]O;J]^.F('$8:=?SSLWPF0-/C!UQ^W5M?QZCSF]CWMGWZX_7T-8^RG@UO<.
M_&=ZKMF77'>^G%<^W9QW?JUT/M^>PZ,M]\%Z"N<\:I9DQX,@><ZGJYNS\YO*
MU_//MY4_+\YN?U'&\)?SBR^_W!XQ$_]0-]W@I8F[U&=#U]^E=\EY3]QV>O7U
M"D;XDR[^S27&$:N-'N7=ZCE G8F'?.J<_OKEYNJ/R[/*Y//VYC)D]HK@)K.Y
MBZ"S 5@?]W1)KG^,EM[O=6M5KG?UFFUV+</6JVVCT;!YK=FP^GO/^ V&!*6Z
MJG":\264L%AQY']@?=\#;]'YARM,3/-E<:\A*RNI#+5>D1O<LRL^.7\<.%TG
M8M7C]['8NVL57LR;QO/C#EK6(\<=ZWCPHDLN,QJG5U\NS_\#D+RYOKKIW%Y<
M7;Z0W,AE1)\LU_)LSKX-.(_"38]F_P_/BGM.Q'LO+2;(92AGONM:0<@<CT4#
M/PXMK_<2>3:7&BU4!/*#\?1B$=_# !!203T*VLSS'P)KE/59JLL$TPO@8?&$
MY6]68 ^8V=:8J9LZ+8?9/1"<<9L/NSQ@50-!L-R:T;*K"Y" 3AB^;$;RJ#B^
MROM"5AQ++<*%Y4C99>K4"@>BQNAX]SQ9I$LK\FF;GUEJM&IUK=INT$X_!1+?
MS4^D.!"EG40$&828UJN[)Z)E-\4=V_9C-+\!./G.O4CHT?;7JE5'U[5:HTJV
MIT!XI1W:,ZT.>E6KU?)9!U(HEI9=Z5Y V.-%?N#P-X0]VXAD4+;UFM9NU4G7
M%@BFI&O'M&CHFMG(9^UMH3A:=E5['?@C>.F3QD:NY46:2#MA3_L(LTZ$[23-
MTM":.36E%P[B!44N:=],>J$-CBYE%Y*)E4;[7H'NM2)<*.1R*^3,$I4TPG2Z
M%DBKUBBW723$DM;-+J70ZN;Z-P<L'#3+KG6_^'[OP7%=56*-+._.P;PN:=\)
M[6NV=*UJD/HM$G1)_8YI8;9,K9W#/L2%PV;9]>\9[_,@X#T668^D=">5;JVN
M:Z!X2>D6"*^D=,>TJ-7:6CVG4U$*Q=*R*]VK:, #TK93VA; W&J3LBT03DG9
MCFE1;6JU.CFXR<1*HVL+>L)&(7KSB66E8UG9Q?'6CRSWS:Y/$79IVHQW1&=1
M+%NOTEJMNJ8WFW0@Q6YH_QV%.NU#OW")4&B$O++49=,&97<L=GB)+7&D:!PI
MNS"!__35L;J."WJ6AZ(V_PTW5![X+BBU\-_L_._8B9YHFX%BL8TD;GINI9&X
M=&WCR'H2"QM1YBS;#F+>8_QQQ+WP+0MPMG']+NT[,-T0KVM&G<K411+GS4^D
M. BE;0<$&9JZIC>H@)1,K#26.>V0"O@]]V)IF>TXA!_AJ<Q<P('*^&FG:D,S
MZ[0ZJT@(IC)^)@E8TVI56B>03*PT6GAZ=9:;24\0L-,E6NT&K1$H$FQ)]4XL
MT6HW:6%L,K'2J-X+SP97%Q<(D*Y-=6V[K=7:+=*U!<(IZ=HQ+=I53==I94 R
ML=+HVHGE6.3CSNK=:E77ZE7*+Q0)M*1X,\L$JJ96K=5V#YMEU[QR31:IW#DJ
M5S-:E%4H$E9)X69V'M!J.N5SDXF51MU.MI-QT4Y&@$[7+E3-IE9KTW;>18(L
M:=UL+WVU7M>:AKY[Z"R[YJ75E:_-= =9]J83  O!LK*+HUP0ZTYUVX<K<8]V
M=*$7+9>EY;)D&]8RD=)#G9;+TG+9-;D=V;_@:US%,W''\>B9%QV_[SGWV;_A
M3V:[5AA^W.L^5 (N6MXJMN]%EAU-3OEX8"9S_7QU>5OY=O'_SH^844./^N14
M_B(\?C\P9X8"2C_Y_HBAUC_N3L_H&YZZSN"N!PN\CYFO+\2)J'[ ;KAK(<+"
M.3?]3X/5]5:E4=<K57'JWORW'-KB+?_+]N\\_@A_#5\D4O:OB<]]F%)"$/Q<
M>>!2DKK@3 E;]QXOGR0_@HG[O2?Q81 -7?CP_P%02P,$%     @ W8";4+##
M]MUQ P  ?A   !$   !C9VYX+3(P,C P-#(W+GAS9+57VX[;-A!]+Y!_8/1.
M7;R;BXWU!@EV$P38),6V ?I6T-182T0B59+*RG]?DC)U\:V6W+Q1Y)PSAS/#
M$7GSKBYR]!.D8H(O@R2, P2<BI3Q;!E4"A-%&0O>W;[X[>8EQI^ @R0:4K3:
MH/N[3^\?URPWI@K]_OC-# &]#F=A',;H@Q0DE2S- &,+KM5"T2<H"-)$9J"_
MD@)422@L@R>MRT4449%QJ$,JBF@6S^+X>O;&:,FA *X_"EG<P9I4N5X&_U0D
M9VL&:8",>*X6M6I)GI^?P^>K4,C,D,1)]->7AS^<6V]+,UZ?=MG8F5W]&+#6
M*YE[WJO(+J^(@E;"GOU613*?SR.WVIH:(G:"FG&E":?0MT]U"^@;OXJ:16]J
M\J4W)73A6!.U<L9^Q:"2.8X3?)5XD)+Z&*I=.@#C57%X$ZF6D05%Q@(DHRU
M\#,P@N,=7 ILN'D%-,S$S\@L]'69*D/(UAGA7&BB34&[J>UD63*^%ML9,V=3
MLO!I?(0U<DE:6!7+0+&BS&T&W-R3A/4RL)6#?9G\74H(C3YO(D4.)W)JER,#
M4::6G;*'SK&G()+NL>P5D2$1)4C-3$ZZ&HS^MVWE9#5V6P8"^:_=C^7YT^P
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
MAPN^_@=02P$"% ,4    " #=@)M03YL3<PH4   ==   #0
M@ $     834R,C$P,C(S+FAT;5!+ 0(4 Q0    ( -V FU!0+ U^G#,  "OZ
M P 3              "  344  !A-3(R,3 R,C-E>#DY7S$N:'1M4$L! A0#
M%     @ W8";4+##]MUQ P  ?A   !$              ( ! D@  &-G;G@M
M,C R,# T,C<N>'-D4$L! A0#%     @ W8";4!9O5X#Q"   \5P  !4
M         ( !HDL  &-G;G@M,C R,# T,C=?;&%B+GAM;%!+ 0(4 Q0    (
M -V FU"6.;"I&@8   %"   5              "  <94  !C9VYX+3(P,C P
A-#(W7W!R92YX;6Q02P4&      4 !0!! 0  $UL

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>a52210223_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/2019-01-31"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="cgnx-20200427.xsd" xlink:type="simple"/>
    <context id="c20200427to20200427">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <startDate>2020-04-27</startDate>
            <endDate>2020-04-27</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="c20200427to20200427"
      id="Fact_cd3b5d75d5b24ca58e1e424bc75872fc">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="c20200427to20200427"
      id="Fact_f9b40fd474e548d39ce9dd690c229423">0000851205</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="c20200427to20200427"
      id="Fact_989a5160bcea426ab4bcb60de6848749">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="c20200427to20200427"
      id="Fact_5552a04241f540eda6246a8d3419cf47">2020-04-27</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="c20200427to20200427"
      id="Fact_cb34a1ae699a4be1896d87b444507197">Cognex Corporation</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20200427to20200427"
      id="Fact_3e484fcef0d3460fbdc4f090db3da06f">MA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="c20200427to20200427"
      id="Fact_f951c912b4eb4fc5a130e44a0269a779">001-34218</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20200427to20200427"
      id="Fact_d737c18773e248d9b5410f4b7460ef3e">04-2713778</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20200427to20200427"
      id="Fact_2cd0566cbf394207bbe92842d373f0b9">One Vision Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="c20200427to20200427"
      id="Fact_092ed825e5c64290b3dda59c966fefc9">Natick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20200427to20200427"
      id="Fact_b7afcdce68ce4fe1bedfae305acc1338">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20200427to20200427"
      id="Fact_dae1d99c72954817a7c483c1ddbd4782">01760-2059</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20200427to20200427"
      id="Fact_559e498d87c64a819c383a7ebd63b1bc">508</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20200427to20200427"
      id="Fact_10fb842913e64008adaadfba7685e33a">650-3000</dei:LocalPhoneNumber>
    <dei:EntityInformationFormerLegalOrRegisteredName
      contextRef="c20200427to20200427"
      id="Fact_26a57f51830e45f7a3205c38c48c1462">N/A</dei:EntityInformationFormerLegalOrRegisteredName>
    <dei:WrittenCommunications
      contextRef="c20200427to20200427"
      id="Fact_8e4371a37ca2401fbbe016bc687e9536">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="c20200427to20200427"
      id="Fact_3cfaa6a0bdf74a3cb0c90b5a80571148">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="c20200427to20200427"
      id="Fact_aad568797fac4fa4a796365b93029252">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="c20200427to20200427"
      id="Fact_c7474350f4aa4627a5731c81e9339ec4">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="c20200427to20200427"
      id="Fact_780e23a592b84457b72c8652f314b9bf">Common Stock, par value $.002 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20200427to20200427"
      id="Fact_181eff30cf51403d9d086ec1a45579d9">CGNX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20200427to20200427"
      id="Fact_6c7c6eb1b2c946f6be5a00734096a02c">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20200427to20200427"
      id="Fact_a6c1ab60e57f47b3b41223a45da8fbac">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>11
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( -V FU ?(\\#P    !,"   +    7W)E;',O+G)E;'.MDD^+
MPD ,Q;]*F?L:5\'#8CUYZ6U9_ )Q)OU#.Y,A$[%^>X>];+=44/ 87O+>CT?V
M/S2@=AQ2V\54C'X(J32M:OP"2+8ECVG%D4)6:A:/FD=I(*+ML2'8K-<[D*F'
M.>RGGD7E2B.5^S3%":4A+<TXP)6E/S/WJVR;A5ND9T*YKCM+1[873T$7LF<;
M!I99-G\LCNVW<+ZT+/0:S>,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C
M-R."?S]PN -02P,$%     @ W8";4"?HAPZ"    L0   !    !D;V-0<F]P
M<R]A<' N>&UL38Y-"\(P$$3_2NG=;BGH06) L$?!D_>0;FP@R8;-"OGYIH(?
MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/
M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+""
MWTG] E!+ P04    " #=@)M0O.#$6>X    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+!2L0P$(9?17)O)VV7"J&;B^))07!!\1:2V=U@TX1DI-VW-ZV[
M740?P&-F_GSS#4RG@] ^XG/T 2-93#>3ZX<D=-BR(U$0 $D?T:E4YL20FWL?
MG:+\C <(2G^H T+->0L.21E%"F9@$58BDYW10D=4Y.,9;_2*#Y^Q7V!& _;H
M<* $55D!D_/$<)KZ#JZ &4887?HNH%F)2_5/[-(!=DY.R:ZI<1S+L5ER>8<*
MWIX>7Y9U"SLD4H/&_"M90:> 6W:9_-K<W>\>F*QYS0N^*>K;7=4*WHI-\SZ[
M_O"["CMO[-[^8^.+H.S@UUW(+U!+ P04    " #=@)M0F5R<(Q &  "<)P
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
MI>0]4<//[[G+,7L&^V\.;M#_"O_-3E[;T=LF7V4W%V9$; <$/"#8A,AL[$D
M2 'P].*!#C2](.F%IY</]"*8'T:4M$!)"I2(7@4"&#&C!2I2H$+T>2" $0M:
M8$8*S!!]&0A@!,MIA3FI,,=\%D@0D$B>%Z3$ O/#1!.02*:7I,02\\-4$Y!(
MKEE.VRG'$<)T4YA(PEG$M Q'"'-.8""2=$8[EP&.$*:=P,3RSFB#,^Q?@%"%
MP!01%=KE#)L8RE"%P%01%=KJ##L99J$*@9E'5&B_,VQG6(0J!&894:$]S["C
M"W0U8$S,+K3K&?9T@;88QL1$:-\S[.H"[3",B8@ ;7S IB[" XS Q$1HWP/V
M=!'N8@(3$XE<V-C217A.4IB8"FU[("[V\*"D,)&#$FC; [9T$1Z4!*:,')1
MVQZPI<MP%U.8\*#,'HHV5Q3_X.I<=SK92V/K/U^EG:0TPL;+GVR\BZW#ITXC
M3L8UY[:MAF)TZ!C9CX5V-E7[F_]02P,$%     @ W8";4'V>[_%G @  008
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
M+=1O/" PSB%4&R_BD72FMW>3>PZ[U_J!L7?[ZE32CQKCQRU_ %!+ P04
M" #=@)M0_\ F"+T   "% @  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR
M96QSK9)!"H,P$ "_(GE 5VWIH:BG7KRV_4#0U8B:A.R6ZN^;>E%!H0<O"6'#
MS$"2/+"3W!A-JK$4#'VG*16*V=X J%#82SH9B]I/*N-ZR?[H:K"R:&6-$(?A
M%=R2(;)DR0SR,A4N+R,1O*2KD5,!0P<?XUI2B$PP;=')"_R5T>(_>E-538%W
M4[Q[U+Q1,0L$; ?%<Q IZ;!\LFMT34>'K.![,>=%#(\='E\Q4??TEUG/7H(P
MK8>_R43]-<#JUV5?4$L#!!0    ( -V FU +C]@#(0$  %<$   3    6T-O
M;G1E;G1?5'EP97-=+GAM;+5434_#, S]*U.O:,W@P %MNP!7F 1_("1N&S5?
MLKW1_7O<;D-B*F)HVR6)\^SW7A(K\_=M!IITP4=:% US?E"*3 -!4YDR1$&J
MA$&SA%BKK$VK:U!WL]F],BDR1)YRSU$LYT]0Z;7GR>-NOZ=>%#IG[XQFEZ+:
M1'M$.MT3E@A^R*'&9;J1A&+RW D+R=ZB$)0*=8+"<6$?2]WK!A"=A7]92U7E
M#-ADUD%*2LH(VE(#P,&7U&@$^\;H8KWWN]+(+SH(L>J\^I%07L\';SV,&QB0
M2RJSM 6,20W ;KP]2_#0#28A3#,*BNQ&CB>65H*2ZA,O>43H6\>"/4E<J*_W
ML)\)VV$]=N'?(*EA.N_6_VATF<N@7?S-R$=*[4%?#?_)\@M02P$"% ,4
M" #=@)M0'R// \     3 @  "P              @ $     7W)E;',O+G)E
M;'-02P$"% ,4    " #=@)M0)^B'#H(   "Q    $               @ 'I
M    9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( -V FU"\X,19[@   "L"
M   1              "  9D!  !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4 Q0
M   ( -V FU"97)PC$ 8  )PG   3              "  ;8"  !X;"]T:&5M
M92]T:&5M93$N>&UL4$L! A0#%     @ W8";4%4A+R>N @  ^0L  !@
M         ( !]P@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4 Q0
M   ( -V FU!]GN_Q9P(  $$&   4              "  =L+  !X;"]S:&%R
M9613=')I;F=S+GAM;%!+ 0(4 Q0    ( -V FU"ZH3F*UP$  #(&   -
M          "  70.  !X;"]S='EL97,N>&UL4$L! A0#%     @ W8";4!9M
M(W]# 0  / (   \              ( !=A   'AL+W=O<FMB;V]K+GAM;%!+
M 0(4 Q0    ( -V FU#_P"8(O0   (4"   :              "  >81  !X
M;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    ( -V FU +C]@#
M(0$  %<$   3              "  =L2  !;0V]N=&5N=%]4>7!E<UTN>&UL
64$L%!@     *  H @ (  "T4      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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>13
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.20.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>95</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>0</UnitCount>
  <MyReports>
    <Report instance="a52210223.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="a52210223.htm">a52210223.htm</File>
    <File>a52210223ex99_1.htm</File>
    <File>cgnx-20200427.xsd</File>
    <File>cgnx-20200427_lab.xml</File>
    <File>cgnx-20200427_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy>http://xbrl.sec.gov/dei/2019-01-31</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": {
  "a52210223.htm": {
   "axisCustom": 0,
   "axisStandard": 0,
   "contextCount": 1,
   "dts": {
    "definitionLink": {
     "remote": [
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml",
      "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml"
     ]
    },
    "inline": {
     "local": [
      "a52210223.htm"
     ]
    },
    "labelLink": {
     "local": [
      "cgnx-20200427_lab.xml"
     ],
     "remote": [
      "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cgnx-20200427_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "cgnx-20200427.xsd"
     ],
     "remote": [
      "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/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd",
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd",
      "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd",
      "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd",
      "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd",
      "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.xsd",
      "https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd",
      "https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd",
      "https://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd",
      "https://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd",
      "https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd",
      "http://www.xbrl.org/2004/ref-2004-08-10.xsd",
      "http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd"
     ]
    }
   },
   "elementCount": 30,
   "entityCount": 1,
   "hidden": {
    "http://xbrl.sec.gov/dei/2019-01-31": 2,
    "total": 2
   },
   "keyCustom": 0,
   "keyStandard": 95,
   "memberCustom": 0,
   "memberStandard": 0,
   "nsprefix": "cgnx",
   "nsuri": "http://cognex.com/20200427",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "a52210223.htm",
      "contextRef": "c20200427to20200427",
      "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": "a52210223.htm",
      "contextRef": "c20200427to20200427",
      "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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 CCYY 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/2019-01-31",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented.  If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInformationFormerLegalOrRegisteredName": {
     "auth_ref": [],
     "lang": {
      "en-US": {
       "role": {
        "documentation": "Former Legal or Registered Name of an entity",
        "label": "Entity Information, Former Legal or Registered Name"
       }
      }
     },
     "localname": "EntityInformationFormerLegalOrRegisteredName",
     "nsuri": "http://xbrl.sec.gov/dei/2019-01-31",
     "presentation": [
      "http://cognex.com/role/DocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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/2019-01-31",
     "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>
</SEC-DOCUMENT>
