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

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

	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>a52188109.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/20200312" 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="c20200312to20200312" format="ixt:booleanfalse">false</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_f9b40fd474e548d39ce9dd690c229423" contextRef="c20200312to20200312">0000851205</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:href="cgnx-20200312.xsd" xlink:type="simple"></link:schemaRef></ix:references><ix:resources><xbrli:context id="c20200312to20200312"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000851205</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2020-03-12</xbrli:startDate><xbrli:endDate>2020-03-12</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="c20200312to20200312">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="c20200312to20200312" format="ixt:datemonthdayyearen">March 12, 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="c20200312to20200312">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="c20200312to20200312" 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="c20200312to20200312">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="c20200312to20200312">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="c20200312to20200312">One Vision Drive</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_092ed825e5c64290b3dda59c966fefc9" contextRef="c20200312to20200312">Natick</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_b7afcdce68ce4fe1bedfae305acc1338" contextRef="c20200312to20200312" 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="c20200312to20200312">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="c20200312to20200312">508</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_10fb842913e64008adaadfba7685e33a" contextRef="c20200312to20200312">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="c20200312to20200312">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="c20200312to20200312" 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="c20200312to20200312" 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="c20200312to20200312" 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="c20200312to20200312" 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="c20200312to20200312">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="c20200312to20200312">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="c20200312to20200312" 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="c20200312to20200312" 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 8.01&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Other Events</div>

              <div><br />
              </div>

              <div style="text-align: justify; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">On March 12, 2020, Cognex Corporation (the &#8220;Company&#8221;) announced that its Board of Directors authorized the repurchase of an additional
                $200,000,000 of the Company's common stock through open market purchases, privately negotiated transactions or otherwise in compliance with applicable securities laws. This amount is in addition to the $200,000,000 the Board of Directors
                authorized in October of 2018, of which approximately $90,000,000 remains available under that prior program. The Board also authorized the Company to establish Rule 10b5-1 trading plans. Rule 10b5-1 trading plans allow companies to
                repurchase shares at times when they might otherwise be prevented from doing so by securities laws or because of self-imposed trading blackout periods. The Company may repurchase shares pursuant to its repurchase program depending upon a
                variety of factors, including, among other things, the impact of dilution from equity-based awards, stock price, share availability, and cash requirements.</div>

              <div><br />
              </div>

              <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;">A copy of the release is attached as Exhibit 99.1 to this Current Report on Form 8-K and is incorporated herein by reference.</div>

              <div><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><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;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Exhibits</div>

              <div><br />
              </div>

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

              <div><br />
              </div>

              <div style="text-align: left; font-family: 'Times New Roman',Times,serif; font-size: 10pt;"><a href="a52188109ex99_1.htm">99.1</a>&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
                <a href="a52188109ex99_1.htm">News release, dated March 12, 2020, by Cognex Corporation (filed herewith)</a></div>

              <div><br />
              </div>

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


  <tr>

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

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

    <td style="width: 50.00%;">
                        <div>Dated: March 12, 2020</div>
                      </td>

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

  </tr>

  <tr>

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

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

  </tr>

  <tr>

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

    <td style="width: 50.00%;">
                        <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>a52188109ex99_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="text-align: left;FONT-SIZE: 14pt;"> <b>Cognex Authorizes New Stock Buyback Program</b> </h1>
      <div class="bw-release-body">
        <div class="bw-release-table-js bw-release-story">
          <p>NATICK, Mass.--(BUSINESS WIRE)--March 12, 2020--Cognex Corporation (NASDAQ: CGNX) today announced that the company&#8217;s Board of Directors has authorized the purchase of up to $200 million of Cognex common stock in open market transactions or
            otherwise, subject to market conditions and other relevant factors. This new authorization will commence after Cognex completes an existing $200 million repurchase program authorized in October of 2018, of which approximately $90 million
            remains available under that prior program. </p>
          <p> The Board also authorized Cognex to establish Rule 10b5-1 trading plans that allow the company to repurchase shares at times when it might otherwise be prevented from doing so by securities laws or because of self-imposed trading blackout
            periods. </p>
          <p> The Cognex repurchase program is primarily intended to help reduce share dilution associated with the company&#8217;s equity-based incentive compensation plans, which the company believes are instrumental in its ability to recruit, motivate, and
            retain the highest caliber employees. </p>
          <p> <b>About Cognex</b> </p>
          <p> Cognex Corporation designs, develops, manufactures and markets a wide range of image-based products, all of which use artificial intelligence (AI) techniques that give them the human-like ability to make decisions on what they see. Cognex
            products include machine vision systems, machine vision sensors and barcode readers that are used in factories and distribution centers around the world where they eliminate production and shipping errors. </p>
          <p> Cognex is the world's leader in the machine vision industry, having shipped more than 2.3 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 conditions and
              trends, future financial performance, customer order rates and the timing of related revenue, expected areas of growth, emerging markets, future product mix, research and development activities, investments, strategic plans, expected benefits
              from acquisitions, dividends, stock repurchases, and 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) current
              and future conditions in the global economy, including the imposition of tariffs or export controls and the impact of the coronavirus outbreak; (2) the loss of, or curtailment of purchases by, a large customer; (3) the reliance on revenue
              from the consumer electronics or automotive industries; (4) the inability to penetrate the logistics industry and other new markets; (5) the inability to achieve significant international revenue; (6) fluctuations in foreign currency exchange
              rates and the use of derivative instruments; (7) information security breaches or business system disruptions; (8) the inability to attract and retain skilled employees; (9) the failure to effectively manage our growth; (10) the reliance upon
              key suppliers to manufacture and deliver critical components for our products; (11) the failure to effectively manage product transitions or accurately forecast customer demand; (12) the inability to design and manufacture high-quality
              products; (13) the technological obsolescence of current products and the inability to develop new products; (14) the failure to properly manage the distribution of products and services; (15) the inability to protect our proprietary
              technology and intellectual property; (16) our involvement in time-consuming and costly litigation; (17) the impact of competitive pressures; (18) the challenges in integrating and achieving expected results from acquired businesses,
              including the recent acquisition of Sualab; (19) potential impairment charges with respect to our investments or for acquired intangible assets or goodwill; (20) 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. You should not place undue reliance upon any such forward-looking statements, which speak only as of the date made. Cognex disclaims any
              obligation to update forward-looking statements after the date of such statements.</i> </p>
        </div>
        <div class="bw-release-contact">
          <h2 style="FONT-SIZE: 14pt;">Contacts</h2>
          <p> Susan Conway <br>
            Investor Relations <br>
            +1 508-650-3353 <br>
            Susan.conway@cognex.com</p>
        </div>
      </div>
    </div>
    <font style="font-weight: bold;"> </font></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>cgnx-20200312.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/20200312" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:cgnx="http://cognex.com/20200312" 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-20200312_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-20200312_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-20200312_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-20200312_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-20200312.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>JSON
<SEQUENCE>6
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "a52188109.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": [
      "a52188109.htm"
     ]
    },
    "labelLink": {
     "local": [
      "cgnx-20200312_lab.xml"
     ],
     "remote": [
      "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "cgnx-20200312_pre.xml"
     ]
    },
    "referenceLink": {
     "remote": [
      "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml"
     ]
    },
    "schema": {
     "local": [
      "cgnx-20200312.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/20200312",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "div",
       "body",
       "html"
      ],
      "baseRef": "a52188109.htm",
      "contextRef": "c20200312to20200312",
      "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": "a52188109.htm",
      "contextRef": "c20200312to20200312",
      "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>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>7
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.20.1</span><table class="report" border="0" cellspacing="2" id="idp6632805984">
<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>Mar. 12, 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">Mar. 12,  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>XML
<SEQUENCE>8
<FILENAME>a52188109_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-20200312.xsd" xlink:type="simple"/>
    <context id="c20200312to20200312">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000851205</identifier>
        </entity>
        <period>
            <startDate>2020-03-12</startDate>
            <endDate>2020-03-12</endDate>
        </period>
    </context>
    <dei:AmendmentFlag
      contextRef="c20200312to20200312"
      id="Fact_cd3b5d75d5b24ca58e1e424bc75872fc">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="c20200312to20200312"
      id="Fact_f9b40fd474e548d39ce9dd690c229423">0000851205</dei:EntityCentralIndexKey>
    <dei:DocumentType
      contextRef="c20200312to20200312"
      id="Fact_989a5160bcea426ab4bcb60de6848749">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate
      contextRef="c20200312to20200312"
      id="Fact_5552a04241f540eda6246a8d3419cf47">2020-03-12</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName
      contextRef="c20200312to20200312"
      id="Fact_cb34a1ae699a4be1896d87b444507197">Cognex Corporation</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20200312to20200312"
      id="Fact_3e484fcef0d3460fbdc4f090db3da06f">MA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber
      contextRef="c20200312to20200312"
      id="Fact_f951c912b4eb4fc5a130e44a0269a779">001-34218</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20200312to20200312"
      id="Fact_d737c18773e248d9b5410f4b7460ef3e">04-2713778</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20200312to20200312"
      id="Fact_2cd0566cbf394207bbe92842d373f0b9">One Vision Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="c20200312to20200312"
      id="Fact_092ed825e5c64290b3dda59c966fefc9">Natick</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20200312to20200312"
      id="Fact_b7afcdce68ce4fe1bedfae305acc1338">MA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20200312to20200312"
      id="Fact_dae1d99c72954817a7c483c1ddbd4782">01760-2059</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20200312to20200312"
      id="Fact_559e498d87c64a819c383a7ebd63b1bc">508</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20200312to20200312"
      id="Fact_10fb842913e64008adaadfba7685e33a">650-3000</dei:LocalPhoneNumber>
    <dei:EntityInformationFormerLegalOrRegisteredName
      contextRef="c20200312to20200312"
      id="Fact_26a57f51830e45f7a3205c38c48c1462">N/A</dei:EntityInformationFormerLegalOrRegisteredName>
    <dei:WrittenCommunications
      contextRef="c20200312to20200312"
      id="Fact_8e4371a37ca2401fbbe016bc687e9536">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial
      contextRef="c20200312to20200312"
      id="Fact_3cfaa6a0bdf74a3cb0c90b5a80571148">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer
      contextRef="c20200312to20200312"
      id="Fact_aad568797fac4fa4a796365b93029252">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer
      contextRef="c20200312to20200312"
      id="Fact_c7474350f4aa4627a5731c81e9339ec4">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle
      contextRef="c20200312to20200312"
      id="Fact_780e23a592b84457b72c8652f314b9bf">Common Stock, par value $.002 per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20200312to20200312"
      id="Fact_181eff30cf51403d9d086ec1a45579d9">CGNX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20200312to20200312"
      id="Fact_6c7c6eb1b2c946f6be5a00734096a02c">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20200312to20200312"
      id="Fact_a6c1ab60e57f47b3b41223a45da8fbac">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
..report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

..report table.authRefData a {
	display: block;
	font-weight: bold;
}

..report table.authRefData p {
	margin-top: 0px;
}

..report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

..report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

..report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

..report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
..pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
..report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

..report hr {
	border: 1px solid #acf;
}

/* Top labels */
..report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

..report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

..report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

..report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

..report td.pl div.a {
	width: 200px;
}

..report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
..report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
..report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
..report .re, .report .reu {
	background-color: #def;
}

..report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
..report .ro, .report .rou {
	background-color: white;
}

..report .rou td {
	border-bottom: 1px solid black;
}

..report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
..report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
..report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

..report .nump {
	padding-left: 2em;
}

..report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
..report .text {
	text-align: left;
	white-space: normal;
}

..report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

..report .text .more {
	display: none;
}

..report .text .note {
	font-style: italic;
	font-weight: bold;
}

..report .text .small {
	width: 10em;
}

..report sup {
	font-style: italic;
}

..report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.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="a52188109.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="a52188109.htm">a52188109.htm</File>
    <File>a52188109ex99_1.htm</File>
    <File>cgnx-20200312.xsd</File>
    <File>cgnx-20200312_lab.xml</File>
    <File>cgnx-20200312_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>EXCEL
<SEQUENCE>12
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( .: ;% ?(\\#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,$%     @ YH!L4"?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    " #F@&Q0<\1E_^X    K @  $0   &1O8U!R;W!S+V-O
M<F4N>&ULS9+!2L0P$(9?17)O)VVQ0NCFLN))07!!\1:2V=U@TX1DI-VWMXV[
M740?P&-F_GSS#4RG@] ^XG/T 2-93#>3ZX<D=-BP(U$0 $D?T:E4SHEA;NY]
M=(KF9SQ 4/I#'1!JSEMP2,HH4K  B[ 2F>R,%CJB(A_/>*-7?/B,?889#=BC
MPX$25&4%3"X3PVGJ.[@"%AAA=.F[@&8EYNJ?V-P!=DY.R:ZI<1S+L<FY>8<*
MWIX>7_*ZA1T2J4'C_"M90:> &W:9_-IL[W</3-:\Y@5OBJK>5:W@K;B]>U]<
M?_A=A9TW=F__L?%%4';PZR[D%U!+ P04    " #F@&Q0F5R<(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,$%     @ YH!L4+^/])5G @  008
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
M+=1O/" PSB%4&R_BD72FMW>3>PZ[U_J!L7?[ZE32CQKCQRU_ %!+ P04
M" #F@&Q0_\ 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    ( .: ;% +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" #F@&Q0'R// \     3 @  "P              @ $     7W)E;',O+G)E
M;'-02P$"% ,4    " #F@&Q0)^B'#H(   "Q    $               @ 'I
M    9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( .: ;%!SQ&7_[@   "L"
M   1              "  9D!  !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4 Q0
M   ( .: ;%"97)PC$ 8  )PG   3              "  ;8"  !X;"]T:&5M
M92]T:&5M93$N>&UL4$L! A0#%     @ YH!L4%4A+R>N @  ^0L  !@
M         ( !]P@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4 Q0
M   ( .: ;%"_C_259P(  $$&   4              "  =L+  !X;"]S:&%R
M9613=')I;F=S+GAM;%!+ 0(4 Q0    ( .: ;%"ZH3F*UP$  #(&   -
M          "  70.  !X;"]S='EL97,N>&UL4$L! A0#%     @ YH!L4!9M
M(W]# 0  / (   \              ( !=A   'AL+W=O<FMB;V]K+GAM;%!+
M 0(4 Q0    ( .: ;%#_P"8(O0   (4"   :              "  >81  !X
M;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<U!+ 0(4 Q0    ( .: ;% +C]@#
M(0$  %<$   3              "  =L2  !;0V]N=&5N=%]4>7!E<UTN>&UL
64$L%!@     *  H @ (  "T4      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>13
<FILENAME>0001157523-20-000341-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001157523-20-000341-xbrl.zip
M4$L#!!0    ( .: ;%!E&ETY2A0  &UN   -    834R,3@X,3 Y+FAT;>U=
MZW/;.)+_?E7W/Z T>S-VE241)/A2'%=Y9"?CFL3VV9[=J?NRA1<E;BA21U*V
MM7_]-4!2IB12DE]))F=7$DO$J]'H_O4#('(XSB<1NI]$<3:X9VD4ON^,\WPZ
MZ/?O[NYZZDDO24=]TS"L?AAG.8VY[)3UHS#^LJ&Z*F8T6U2_7ZM_9^G:V/?]
MOBY=5,W"IHK0+>[_^?G3-1_+">VNTJ.&%P\-Z]0X_:*PJAIF"3&QNVFR18U%
M@_NVNE@Q!HB7?_YZ]>FA>MY<_Z%J/T]IG 5).J%YF,2J)[MKF%W3J772S21?
MZ@B^]T;)[=9^O*Z%JWYF67=$Z7313T SIHDI"U03OVO@6A,A5_A8C0L%#=5G
M>=K*2K\/I57%>#9IKBCRM)_/I[(/-60:\D6#)-ZA31)W5]KQ9!;GZ;QY$F6A
MFHB[/!$^2U,9\[9V96D#!V(:\JRYE2YJ&"L+>7,#*%#5\4KU?)JVU(<2U<!;
M;B#O^;BY@2IIF$.6YNLR @\;JO)1_* 0/!G%\K['DPG45,J#S;)>N[8KV.D<
M_>=_('0XEE04G_(PC^318;_XK1Y5?P\G,J=(==:5_SL+;]]WADF<RSCOWH
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
M&?\J<KJ!Y:5*%QI=/SP$OFL06 8/;$P,2_C"\!S),26V[?IBE_.IPX_G?_Z
MS'R&7%=.Y\HQ&8>[W)$,,Y/[Q D<)FUJ&*Y%#-^AAOG(.T-T\*  I3IKJ]Y#
M/C^^/CG^[T+VT6>:?I$Y^O1I^.++\RH^[PLX9\]J_U2?^Q6=Y_:IG,5"!4(2
ML3GB^F0*>(!?P*I(_7J.\H9K9T3"#-$8012EG,01&J7)73Y6\=14G1NA&1(R
M"./B3<IBO]2P*Z=Z9;.T>*7=0GM*[]QW>L^TJ@S#@.1/U7N8ZO!1$929K&LV
M]-7TGORB4Q6@/;2K==M[S<S2:T0ZW^,IQS(N\%S'LTPS<#$AV*2486%;ML4]
MFPC#"MKB@DTJO]FY:(-@SUZ!8!W% $=/FP6V6.3-_VY[/:+J^J/N>5AT7$^B
M.V $F6-(VPV(RRP&+ +'A-B">@&C3P'K73,]VZ&W\=BBW7S&?%GV5Q2DM>HF
M&K: ?]/33<#_2AK]0@A\%FQ 3G6<O!&&R[. -00> \C*2/(<0#9.= ICEDE=
M"X@NCP>J$\*A3FL45SDI$=)C17,U^%V8CYNXJS \AAE!Y53>AAET!6A.8ZYV
M="G75_2I]NJ*1T%3D14' T5;2L7:HXN42AVF>VUG"(LK$RK%*TX!_OR3[Q+2
MNG#-SUN>UI:81Y*FVAD;+Y(>>3*M<*]\4H5E+<A<[W!*1[++4DF_=&D )F:
M:'1'YUGS"QOCM&I7!H"E]AD0BZ(&V@:(0&2H2Y<R..,RF#1UN^U7WE4I?_ &
M'LNYC;-_X1<RFJ[0.<OE!'D] ^\"VPU ?J$=FE-UZ4S6*DWMJ<]-35X1-RYB
MM'SUS %:O]<#[2D5^_DGSS2-=\/*N,$W_&X?M#H&$> *%\847+@\0[\FH+U*
M,T_"%)0U23.5Z1LG*8PL2L0!C0:-S732 915.1EJ*!JM2_/?P%(=&,7?2M]+
M*G[)=+8]4=J>Z&//((^C,4JF,M80!X%%-1*X(=,TO 44C!0.C9)<G8PNX8SR
M(EE?O3A^!_"D[^M0J!:J*V<UK*DSU1$@J7*6L@<G,:)W60_=* ^03A2,%<>I
M%[-2L*6H7IJ)>K#.J?7IUU@'75Y +0:"!FW4_9\'ZD.1H]''O>_#23'!O_D/
M(Z5R0D.8'+VE8:1IKW8>8,& )S!I:#I*Z:2GKXDJJ*)1EJRN6\EV-1^9*4L9
M9N/2?S:8W<6*F3HG-XV J;WV(J0<C+O20"D6YLGZS&M2HG,AT HL@)9P""!B
M1=$<3906UQ:-29B,OOM)V9<TF2"1:*N2*..WLFAJO9GD=%8(8B:CH!M.IDE6
MR(6FET6 <\DL+XU=5O"HXL2$SAOHK-LKI1&U&B6G(90!&=4#S*8@(71]^K<T
M#66NS\L'5 M'[;VP R5IZAA^&4?!(RA6:P3TTR)6$6$TT^*GV:!N4<WG774_
M,RSNG3*P!Z7:@ QP>5 07TE)&$%M&"46B--,I0"A?:IWN++6\.8% >XE0IUC
M$+#IXH6#%!P;M0)*2_.<@A\D5$QY>C\.69@CW^_A0E&APE#?^YNCJ^)V,>#A
MXH4)Q1&MWM6M$- -K($$Y61*%LI;/_\:/&HWA?[33>&'A5>G7^O6(J/95K+Z
M:]C'EQ"?/;'_- X\_]^_&JN67&[=N9"\=!\&A;E1MY>K8+E4M_.DMW#!=XF3
M=Q[@1&8\#:?%A60--T5^OSRDJ+AVF-HF]CQL^/+>]_^)>^-\TCE2\'38ISMQ
MZZ7^;8@L-M((<\TJF#U 0D/CJGL)&-GD809A5.*H\K/VU4S_(LN&#?(-\&&8
MW(+=OX2H$)VIC0#EP-Y*=$)SBO2U/MIGY[J6BAV1NG0<Y724J3?*D9PP*51D
MK;@=:E<*^E$:5%04Y968^[MP]$6"W6>$N]]SP/MXF7RU2V*OSSZ>']_\<;5Z
M=74S2<]3BLWIL-=4Q_I5N(77]^"W[IC?/U!N(9WH;-=!4X9,S"#"TE&#*-S%
M\A):&!+"CPSF @5)O"ZI*A9@<DRC0.&@ZEE;KK*%0C\('I.B_X?0ZZ5=R2;=
M^WXW "R?"N8;W,,6)KY)/-^U3-,S VHQ2AAN1H3VI.^FY'];UGK#Y2A+C-TE
M;;TU:?T< H87'\]/_T3#BZO+BZOCF]HM\(\F9H?\^0_-RF<2\(W9IZZP%@.T
M>J_T-^/F[O[[K_-!/^N#:S.+T$TB1F,Z6?'C'TW^_W=17N;E&Q.?1,"UC%6F
M].\AE^@RE9G^SU1T6F,X#F50RWI<Z%NYTM?A]/JS]EW+W?=@ME^AM/(_'#3>
M2'_85__GTI'^3YCR200?_@]02P,$%     @ YH!L4#R<!3#6"@  "AH  !,
M  !A-3(Q.#@Q,#EE>#DY7S$N:'1MQ5G;<MRX$7U/5?X!D5VQ51F.9F3+MBY6
MK2QK-Z[-RAO)6YOD#23!(2R0H %0H\G7YW0#G)M&NWE(5?1@422 OIT^W0V?
MU:$QYW_\@Q!GM9(E/^$YZ&#4^=E!_)U>_BG+Q-]TH5JO2A'LB?C0>]TJ[\6O
MVJFXB'\^VJ)O5!M$X90,6$SK9N+JXP\7-Y4V>/;BYYO/>%3BS?AH/!U/UG9?
MVF[A]*P.8GI\?"0R<3@YG(@/SLK2Z7*F1)9%A0^2QF>Y+1<BGQ766/=^[UG%
M/WO"AX51[_<JVX:LDHTVBQ/QXHMNE!?7:BYN;"/;%R/!;T;"*Z>K4\&KO?ZW
M.A'321=.15 /(9-&S]H3852%-RSG1#R;\,_I7M2FU/>#Q/4M; G6G-'!&RK-
M%7TZ$;DU)19</=0ZUT$<'X^G9P>TXOPL=\E2'/Z_D2*&,^G4*.3_>SB[=&_8
M18L*([U_OY?/,Z>,DEX-7PFCTR?/^/[S]9?L]M._KA"XUUV(ZIQ?VEFK'L1%
M'VKK$-48^MM@BSO =Y%+_/[9V9F3S=E!?DZ@FJ[$[50G([BM='IR69"Y4=E7
M+];>^6#=QE[L[LZO+[Y\NOQQ)'["$>,L>_GAE]M/UU>WM^+73S=7^UGVDW1%
M+::'(TZ%+$M&75K762>#MJUX>7UQ^_'B[R?B\H?K?^PC.TNY$+)M;=\6E*VU
M#/A' ;M-)]O%GY^].YR^/?7B@Y6N%+82'Y'"!;3SHI9>R,%?)>_J>B@ _6EA
MW^%T\?QP,A%(*4/"\3:IA.,;O/#L7XTOG6I%(]V=@G@G6R\+4M<+Z]9]((2%
M&#?77B$1^_PK5"$I:6=AVU+'?;(MXUI!+KV7 &0E6>^Q^%)K+UJ$=] ^NF8.
M+5DQ!5<(605L7JG;&144G2O4@_:!>&K#-J>6QG<1)^O.@8F?(3W'D7#"X63Z
M;D0/\UHC8++#C@?=@ +-0CP_7AZZ:;I3C=1DVKW4AC C^K;$@1RSSFGK!LEC
MP+/;!@_,5BF,TGB[KEVR$HY4GM"H?2UN>@B83O*C;$H1*<G@SB R49XTQL[7
MD4*[UWS@:^G(70@/$^F\1H#!6@T3]C**(B=WJ7L4 >A1.=N(TI(H*)@OP+5%
M[Q!1'&#DG-" #87L(\*\,E6FF\YRG4DZY@:I:ONPZ;L.I&U+_[1CD@MV1!%8
M@7.!,-0%Q#$H.)W*FJB5Z;"A[(MDKBBUZ1E*R$];:"YI<QWJG1FEOO4Z++)<
M>L8'RF70]W$9*F>$)#M\E&"R[NQ<&0VOP<$0"U $QX54&D*:#GB?HWZ&%)7"
M0=1(-!82H-2(LF,;6P'88A$U(@08B *D27A5@+Y=*/6$\\"=%SG\G3R8R/'Q
MNAU<5"H/6H9])4PQML,3*FU/>=HS>)##,;/Q#$>62H :9AQ[!&2FDO,0*00A
M8#M0N4HK0HET05<:H3 <.F35C+/[Y<4GD)\JZE9_ZU7"](S\#Q<TT0\]E,F,
MOE/KSFPD_BY5H7VD)]!&HDQ"JQHG.[?0EQ2D,)L>9C2RJ-$1B7L^1OB%#ZIA
M\S?? PC$M.2('-QNR0/H990;LA#1[R-^$KWIY+<2'.5T'N%(V*(]TH'F(U//
MK3,E9:5347D JM$MT#%HRSC&:E_KKJ/,4LXQ??Y&=+5?'?X".<NZB@2L+>-T
M6_;0<3%"(;GGE"=!L*6QK!.8]G#\:LFONP..? 52*'5P@+V'L.=O13YL@>5]
MTQO)B<4LTU/=H&1;SR9H6I%CZ SLF1Z_FX[%7Z'[MQ[X@8?8O]<XIK@;;4:6
M*C',0@P"J?/+[<5H\ 651UL!?-L1H8@:6S [A!HAF=64/Z3010.>*B1.NNH=
M:B)OO/!:CL7WX+Z2LM1X]N"0<("@(:\"#?/Y?%SP2_QZH@B<Z?-+Y3C90?5
M'7SG$9I2Q3#%RNA%:D0&[BFM:&V@MX00;PU5*N) 39T*5#8X(Q#(1@S*RKHY
M*DUFK+WCV"YE4?E55"!6T@N$&G4 ^=U2ML(MH/[$\0E.I1=$G(>34_70*0H]
M_SD]'5ZCP"/-.YSYZ!/(C&OKHP\#B0[O-T,KAF5 V]==(F,M>/0Z<O;62^HM
MMM\U<K']"F7D\;K"]J9\O'+C+2<J$MA(E]RU:H#6/ V'RN4Z8A<UA./I@ T0
M&+AK[3BG9MC#57>8\%:<O=6-;3LW.':>J'HB>U&!>UKF:91J* /N+8"^ A1A
M&^J:'#&)DR%E$^$B$&/-R*B(RW*5XQ$E> ,P<AZ*F;/S4.,+3IO1ME19EAHD
M4@'A/!"O>,7--&=N+$\\J5)?>L\=R0@> 7A"<A*2&RK,=#$4[:4*N6I5A9J\
M[0'N=F2!-L!'-Z$0XNPR^B6VQJM^Q(^BW?)AE6E0P!I0VUUKYY&L^S8^.^WO
M?'I3Q'SG+HJK!@-*Q#:*:BV<#GM[@X@BI4M=57 U98Q#/)#GK"B:Q=@4?66K
MQN*VAWN>DI/ <B)>3O<11(=@AVW[:5?R_1I44K&8&9M#+X4OMEF,TH$4-_K*
M31]O8(Y ;U95W!W"Z=8Q](*S9@45;("E Z$4UMD61<?UV-2''!BY.Q4O#_?Y
MJ[&>$#.B\Z Z42Z''IN7P0!#(1YH2AW:D0&D..)5/ )XU 1@P8,!8W)G]*,R
MK>\)XF#< EJWNF!3T)];[MC44"KA6(AX'44@7U9="3I&Q?A+!LQH0BG\LL:N
ML0'-/0GZ..QHQV%4IJ&SH.:,FB>:G8CK7,MM&Z.%3<+^-_NB,CUA:!D])"^F
M_39%O4!G\0"?H6W;]L!F,B>^1Y93CQJM'MI:TO3M/EXP,838&O%D@$X8P2M
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
M([DJ9N:E-3Y<'M2$RC[6)D3I?QY[$X6<3IJ[*#:LM_\!4$L#!!0    ( .:
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
M;LE>DP"Q#P;):6#QK7Z%[,XXW;!/_!>/5T5Q^8NZ9_\ 4$L#!!0    ( .:
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
M2A0  &UN   -              "  0    !A-3(Q.#@Q,#DN:'1M4$L! A0#
M%     @ YH!L4#R<!3#6"@  "AH  !,              ( !=10  &$U,C$X
M.#$P.65X.3E?,2YH=&U02P$"% ,4    " #F@&Q0B';=3G$#  !^$   $0
M            @ %\'P  8V=N>"TR,#(P,#,Q,BYX<V102P$"% ,4    " #F
M@&Q0%F]7@/$(  #Q7   %0              @ $<(P  8V=N>"TR,#(P,#,Q
M,E]L86(N>&UL4$L! A0#%     @ YH!L4,"A*8H9!@   4(  !4
M     ( !0"P  &-G;G@M,C R,# S,3)?<')E+GAM;%!+!08     !0 % $$!
(  ",,@     !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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>
</SEC-DOCUMENT>
